【问题标题】:Paypal NVP Api set order status "completed"Paypal NVP Api 设置订单状态“已完成”
【发布时间】:2020-06-21 08:35:29
【问题描述】:

我通过 php 使用旧的 NVP REST API 和方法“DoExpressCheckoutPayment” 创建一个简单的 curl,返回一个 transactionID

谁能告诉我如何将订单状态设置为“已确认”? 使用什么方法和参数?用于数字产品(因此没有跟踪信息)

只是碰巧,paypal 有时会将交易设置为 HOLD,直到我将其手动设置为确认,这是很多工作。

如何使用 curl 来确认交易订单状态?什么方法?

这是我目前使用的:

        $API_Endpoint = "https://api-3t".$paypalmode.".paypal.com/nvp";
        $version = urlencode('76.0');

        // Set the curl parameters.
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $API_Endpoint);
        curl_setopt($ch, CURLOPT_VERBOSE, 1);

        // Turn off the server and peer verification (TrustManager Concept).
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);

        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_POST, 1);

        // Set the API operation, version, and API signature in the request.
        $nvpreq = "METHOD=$methodName_&VERSION=$version&PWD=$API_Password&USER=$API_UserName&SIGNATURE=$API_Signature$nvpStr_";

        // Set the request as a POST FIELD for curl.
        curl_setopt($ch, CURLOPT_POSTFIELDS, $nvpreq);

        // Get response from the server.
        $httpResponse = curl_exec($ch);

【问题讨论】:

    标签: curl paypal


    【解决方案1】:

    API 调用 METHOD=DoExpressCheckoutPayment 执行 Express Checkout 交易。结果状态可能是PENDING,这取决于PENDINGREASON,可能需要在https://www.paypal.com 帐户中手动操作。

    【讨论】:

    • 对不起,这不是我一直要求的。
    • 不是来自客户的“付款”处于待处理状态。
    • Paypal 将金额设置为 HOLD 几天,直到我确认“发货状态”为“发送”或“订单状态”“完成”我需要点击贝宝槽,选择付款,点击“收款”,点击更改订单状态,点击“数字商品”,点击“完成”,点击“不需要日期”...6-7次点击。我想在收到的付款中添加“跟踪信息”,因此贝宝很高兴并且知道货物已发出。但是没有载体,所以tracking = digital ...status = complete...method ???
    • 如果不需要发货,您可以在 SetExpressCheckout API 调用中设置NOSHIPPING=1
    • NOSHIPPING=1 不会改变行为。此外,数字产品必须“确认”为正在处理。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-04-17
    • 2020-09-01
    • 2014-08-03
    • 2014-11-24
    • 1970-01-01
    • 2016-08-18
    • 2016-10-07
    相关资源
    最近更新 更多