php - 在Payum中如何查看 "correctly"付款状态 "pending"?

标签 php paypal payum

在我实际的 Symfony2 项目中,我使用 PayumBundle 和 Payum 1.3.4,通过 paypal_express_checkout 工厂进行支付。我发现了一个行为,也许可以,但我需要与另一个了解 Payum 的人确认。

简单说明一下:

1- 在 Paypal Sandbox 中创建了一个用户来测试付款,并激活了付款审核以强制所有付款保持“待处理”状态。

2- 准备阶段顺利通过,重定向到 PayPal。

3- PayPal 付款也很好,再次重定向到我的网站到完成阶段。

4- 在完成阶段发生以下情况:

public function doneAction(Request $request)
{
    $token = $this->get('payum')->getHttpRequestVerifier()->verify($request);

    $gateway = $this->get('payum')->getGateway($token->getGatewayName());

    $gateway->execute($status = new GetHumanStatus($token));

    /** @var Payment $payment */
    $payment = $status->getFirstModel();

    ....
}

此时,$status->getValue() 等于"captured"。 但是在 $payment->getDetails() 中我可以看到这个(为了清楚起见被分块了):

details(
    "INVNUM" => "57dc5ce455d5a",
    ...
    "ACK" => "Success",
    ...
    "CHECKOUTSTATUS" => "PaymentActionCompleted"
    ...
    "PAYMENTINFO_0_PAYMENTSTATUS" => "Pending",
    "PAYMENTINFO_0_PENDINGREASON" => "paymentreview",
    ...
)

Payum 说状态是 Captured,但是 PayPal(没问题)说付款人是“Pending”。

那么,为什么 Payum 状态是“已捕获”而不是“待处理”?这样对吗?

如何“正确”查看付款中的“pending”状态?

我检查了 Payum Bundle Sandbox 中的示例,但没有任何关于 pending 状态的信息。

提前致谢。

最佳答案

查看 GitHub 中的问题线程:https://github.com/Payum/Payum/issues/585

此时是打开的,不过那里我描述了一个快捷方式。

关于php - 在Payum中如何查看 "correctly"付款状态 "pending"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39541102/

相关文章:

php - 只允许在文本区域中换行

php - 如何使用 php 迭代整个 mysql 表

php - 不使用 Sandbox 的 PayPal 测试

xamarin - 我需要有企业 Paypal 账户才能开发应用程序吗?

symfony - 收到IPN后的处理

php - Laravel 是否具有一对零或一的 Eloquent 关系?

php - 如何将PHP数组转换成Mysql资源

php - 是否可以在不使用 WooCommerce 重定向到 PayPal 网站的情况下进行 PayPal 付款?

paypal - Omnipay 和 Payum 的区别

php - Payum Bundle 发送空付款 - Paypal 接受它 :) :(