Php PayPal Rest API创建付款不返回销售Id

Php PayPal Rest API创建付款不返回销售Id,php,paypal,paypal-rest-sdk,Php,Paypal,Paypal Rest Sdk,我正在尝试使用PayPal的RESTAPI(沙盒)执行信用卡支付。代码如下: $payment = new Payment(); $payment->setIntent('sale'); ... try { $payment->create($this->apiContext); $saleId = $payment->getTransactions()[0]->getRelatedResources()[0]->getSale()->

我正在尝试使用PayPal的RESTAPI(沙盒)执行信用卡支付。代码如下:

$payment = new Payment();
$payment->setIntent('sale');
...

try {
    $payment->create($this->apiContext);

    $saleId = $payment->getTransactions()[0]->getRelatedResources()[0]->getSale()->getId();
} catch (PayPalConnectionException $ex) {
    ...
}
这将发送以下JSON:

{“经验简介”id:“XX-XXXX-XXXX-XXXX-XXXX”,“意向”:“销售”,“付款人”:{“付款人信息”:{“名字”:“吉姆”,“姓氏”:“史密斯”,“电子邮件”:someone@somewhere.com“,”电话“:”,”付款方式“:”信用卡“,”资金工具“:”[{”信用卡“:{”姓“:”吉姆“,”姓“:”史密斯“,”号码“:”XXXXXXXXXXXXX4487“,”类型“:”签证“,”到期月份“:”06“,“到期年份”:“2020年”,“cvv2”:“123”,“账单地址”:{“第1行”:“123” “测试街”、“线路2”:“城市”:“测试” 城市“,”州“:”邮政编码“:”XXXX XXX,“国家代码”:“GB”}}}}}}},“交易”:[{“金额”:{“货币”:“英镑”,“总额”:“13.50”,“详情”:{“运输”:“3.50”,“税”:“1.67”,“小计”:“8.33”}},”,“项目清单”:{“项目”:[{“名称”:“T恤” 黑色 小“,”货币“:”英镑“,”数量“:”1“,”库存单位“:”abc123“,”价格“:”8.33“}],”发货地址“:{”收件人姓名“:”吉姆 史密斯,“1号线”:“123测试街”,“2号线”:“城市”:“测试” 城市“,”州“:”一些州“,”邮政编码“:”XXXX XXX,“国家代码”:“GB”},“说明”:“付款” 详细信息,“发票号”:“XXXXX”}]}

直到最近,它还可以正常工作,但是现在它不会返回任何相关资源。下面是我得到的json:

{“id”:“PAY-xxxxxxxxxxxxxxxxxxxx”,“create_time”:“2016-06-20T11:45:28Z”,“update_time”:“2016-06-20T11:45:28Z”,“state”:“created”,“intent”:“sale”,“payer”:“PAY_method”:“credit_card”,“funding_instruments”:[{“credit_card”:“type”:“visa”,“number”:“xxxxxxxxxxxx 4487”,“expire_month”:“6”,“expire_year_year”:“2020”,“first_name”:“Jim”,“last_name”:“Smith账单地址:{“第1行”:“123 “测试街道”、“城市”:“测试城市”、“邮政编码”:“XXXX” XXX,“国家代码”:“GB”}}}},交易记录:[{“金额”:{“总额”:“13.50”,“货币”:“英镑”,“详细信息”:{“小计”:“8.33”,“税”:“1.67”,“运输”:“3.50”},说明”:“付款” 详细信息,“项目列表”:{“项目”:[{“名称”:“黑色T恤” 小型,“sku”:“abc123”,“价格”:“8.33”,“货币”:“英镑”,“数量”:“1”}],“发货地址”:{“收件人姓名”:“吉姆” 史密斯,“第1行”:“123测试街”,“城市”:“测试城市”,“州”:“一些” 州“,”邮政编码“:”XXXX XXX,“国家代码”:“GB”},“相关资源”:[]}],“链接”:[{“href”:“rel”:“self”,“method”:“GET”}]}

请注意,我使用的是API的1.7.2版,最近我升级到了PHP的7版

如果有人能解释我做错了什么,我将不胜感激


谢谢

我终于成功地完成了这项工作,尽管这不是我自己的错。我的沙盒买家帐户似乎不再工作了。我找到了以下文档:


这很好,所以我玩了一个不同点的游戏,唯一有助于解决问题的是使用他们样本中的卡片详细信息。我已经在这个问题上花费了相当长的时间,所以我接受它工作正常,希望在生产过程中我不会遇到任何问题。

您需要设置错误或日志,并指定集成的设置,例如,端点设置为sandbox或live?您的PAY api调用的响应是什么?@pp_pduan我已经更新了问题,说明我正在使用sandbox和返回的json响应。正如您所看到的,相关的_资源是空的。我希望这有帮助。版本1.7.2???这样做吗版本号是否存在?当前版本为204@SML我使用的是composer的最新版本。我明白了,所以问题是在升级到PHP版本7后才开始的,对吗?之前您使用的是什么版本?谢谢@nfplee,我现在对paypal实现用户体验的流程感到非常困惑。