【问题标题】:Get transaction details using transaction ID - Paypal使用交易 ID 获取交易详情 - Paypal
【发布时间】:2018-12-20 13:40:52
【问题描述】:

我想做的是验证 Paypal 付款的交易 ID。但是paypal给我回了一个:

{"name":"INVALID_RESOURCE_ID","message":"Requested resource ID was not found.","information_link":"https:\/\/developer.paypal.com\/docs\/api\/payments\/#errors"}

我现在的代码是这样的:

$curl = curl_init("https://api.sandbox.paypal.com/v1/payments/payment/<transaction_id>");
    curl_setopt($curl, CURLOPT_POST, false);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($curl, CURLOPT_HEADER, false);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($curl, CURLOPT_HTTPHEADER, array(
        'Authorization: Bearer ' . '<changed this to my access token>',
        'Accept: application/json',
        'Content-Type: application/json'
    ));
$response = curl_exec($curl);
$result = json_decode($response);

【问题讨论】:

    标签: php api paypal


    【解决方案1】:

    您使用了错误的 Paypal API 端点。根据您对要做什么的描述,您应该按照文档使用 /v1/checkout/orders/,因为它为您提供了特定交易的所有详细信息。

    这样做:

    $curl = curl_init("https://api.sandbox.paypal.com/v1/checkout/orders/<transaction_id>");
    curl_setopt($curl, CURLOPT_POST, false);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($curl, CURLOPT_HEADER, false);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($curl, CURLOPT_HTTPHEADER, array(
        'Authorization: Bearer ' . '<access_token>',
        'Accept: application/json',
        'Content-Type: application/json'
    ));
    $response = curl_exec($curl);
    $result = json_decode($response);
    

    来源:https://developer.paypal.com/docs/api/orders/v1/

    【讨论】:

    • 感谢这位朋友。这确实解决了我的问题。
    • 仍然给我同样的错误。我使用沙箱并仅使用沙箱生成令牌。
    猜你喜欢
    • 2021-05-30
    • 2019-10-11
    • 2014-07-20
    • 2023-03-13
    • 1970-01-01
    • 2016-09-12
    • 2013-06-05
    • 2018-08-24
    • 2013-12-26
    相关资源
    最近更新 更多