我的 PHP 中有以下代码,我猜它会启动 PayPal 付款:
$resArray = CallPay ( $actionType, $cancelUrl, $returnUrl, $currencyCode, $receiverEmailArray,
$receiverAmountArray, $receiverPrimaryArray, $receiverInvoiceIdArray,
$feesPayer, $ipnNotificationUrl, $memo, $pin, $preapprovalKey,
$reverseAllParallelPaymentsOnError, $senderEmail, $trackingId );
这似乎在 $resArray
中生成了一些特定于付款的数据,即:
[responseEnvelope.timestamp] = 2013-09-10T13:23:42.650-07:00 <- actual value
[responseEnvelope.ack] = Success <- actual value
[responseEnvelope.correlationId] = CORRELATION_ID_HERE <- value changed for security reasons
[responseEnvelope.build] = BUILD_VALUE_HERE <- value changed for security reasons
[payKey] = GENERATED_KEY_HERE <- value changed for security reasons
[paymentExecStatus] = CREATED <- actual value
然后我可以使用 [payKey]
将用户发送到 PayPal 网站以登录并付款
$cmd = "cmd=_ap-payment&paykey=" . urldecode($resArray["payKey"]);
RedirectToPayPal ( $cmd );
我的问题是,如果用户没有登录完成支付,是否有可能 UNCREATE
Paypal 根据 [payKey]
或做我不需要 UNCREATE
吗?如果在一定时间后未使用,PayPal 会自动删除此记录吗?如果是这样,PayPal 在删除记录之前会保留多长时间?
In this particular scenario, the paymentExecStatus variable is set to CREATED instead of COMPLETED, which indicates that the payment has been created, but has not yet been executed.
它似乎没有进一步的细节来说明它是否可以取消创建,或者它在被删除之前保持创建多长时间(如果它被删除)。
最佳答案
支付 key 一旦创建就无法取消,但它会在 3 小时后自动失效。
关于php - PayPal 的 paymentExecStatus 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18728560/