我目前正在自定义的PayPal扩展中实现TYPO3 +。一切正常,但我想知道PayPal可能会返回哪些支付状态。
到目前为止,当付款进行时,我得到了州“批准”,并相应地处理我的代码,因为我认为付款进行得很好。PayPal文档是如此的神秘,它们到处都是,我真的不知道该去哪里看,每次我使用它们的API时,感觉就像第一次。
这是我目前还不确定的部分:
$pay = $this->payPalService->executePayment(paymentId, $payerId, $json->access_token);
if ($pay->state == 'approved') {
$this->orderService->update($paymentId);
$this->redirect('paymentSuccessful', 'Order');
}
我说的基本部分是$pay->state == 'approved'
。我是否可以假设,批准意味着我可以安全地处理订单,并将其视为成功支付?官方的PayPal + docs没有提到这一点。
发布于 2021-02-22 13:48:19
如果在您提到的文档的左下角单击" reference“,就有一个指向v1/payments API引用的链接,该链接记录了这个执行API调用和可能的响应:https://developer.paypal.com/docs/api/payments/v1/#payment-execute-response。
国家..。可能的价值:创建、批准、失败。
就该字段所能得到的值而言,这似乎相当简单。因此,“批准”意味着执行是成功的。
但是,要在每个问题上标记为“成功支付”,您应该在transactions[0]->related_resources[0]->sale
中寻找一个销售对象。它的id是您应该存储的用于记帐目的的PayPal事务ID。它将有自己的“状态”,记录在这里
国家..。可能的值:已完成,partially_refunded,待决,退款,拒绝
您应该将“已完成”视为成功,并将“待定”视为需要在PayPal.com帐户中手动关注的内容。
https://stackoverflow.com/questions/66316690
复制相似问题