Php Magento 2:如何在Paypal Express中动态更改付款操作方法
我已经创建了Paypal/Developer/Sandbox帐户。已获得API凭据 下载的PHP SDK 提及: 我已经使用我的PHP脚本使用Authorize方法完成了沙盒一个事务 我必须达到的目标我需要获得授权付款,将“授权”付款转换为“捕获/销售”方法,并通知客户和管理员。 如何获取授权Id 通过参考上述文档,我需要使用3个Web服务Php Magento 2:如何在Paypal Express中动态更改付款操作方法,php,payment-gateway,magento2,paypal,Php,Payment Gateway,Magento2,Paypal,我已经创建了Paypal/Developer/Sandbox帐户。已获得API凭据 下载的PHP SDK 提及: 我已经使用我的PHP脚本使用Authorize方法完成了沙盒一个事务 我必须达到的目标我需要获得授权付款,将“授权”付款转换为“捕获/销售”方法,并通知客户和管理员。 如何获取授权Id 通过参考上述文档,我需要使用3个Web服务 获取授权付款的详细信息 获取授权付款 获取捕获付款的详细信息 已具有“授权”付款的交易ID 请提供遵循的步骤&如果已有任何示例,请分享 需要在Mage
- 获取授权付款的详细信息
- 获取授权付款
- 获取捕获付款的详细信息
PayPal PHP SDK master\sample\bootstrap.PHP
文件中更改了API沙盒凭据
从sample/payments/AuthorizePayment.php
我将获得ID为PAY-0TV39791XXX02404VK7XD32I的授权付款&它工作正常
当我输入我的事务Id
时,它给出
{“名称”:“无效的资源\u ID”,“消息”:“请求的资源ID无效”
找到“”,“信息链接”:“”,“调试id”:“1f2b08ce88633”}
我的沙盒事务Id是3AA32794KF48247AA
。所以问题是如何将您的交易Id转换为付款Id
下面是贝宝的回复
REST API执行付款后可以生成交易id,
经典API[NVP/SOAP]DoEC API或正常按钮支付完成。
反向搜索以查找付款Id永远不起作用
如果您有paymentId,您可以通过以下方式获取授权付款的详细信息:
$payment = Payment::get( $paymentId, $apiContext );
对于支付类的所有属性,请查看以下内容:
要更改沙盒/API凭据,请在项目中编辑
更新
您不需要使用AuthorizePayment.php。请执行以下操作:
PaymentId=交易ID?我有交易Id。如何在交易Id的基础上获取PaymentId?当PayPal端的付款获得批准时,它会返回到您的网站,并将PaymentId作为获取参数添加到您返回的url中。你能澄清一下你是如何获得TransactionId的吗?虽然我的数据库中存储了来自Paypal的交易id。我还是要重新创造整个东西?提供更多信息。你们有以前付款的交易id吗?是的,若你们查到我已经提到的问题并从Paypal回复,由SO版主决定他们是否想将问题从SO站点切换到SO站点?由于这最终的结果,我想在Magento 2中。谢谢社区,请指导我实现功能。谢谢,我已经更新了我的答案,见下文。