php - 有人可以帮助我进行 paypal 链接支付吗? PHP

标签 php paypal

我对使用 Paypal 做任何事情都不熟悉,这让我很沮丧。我只是想在这里使用沙盒业务帐户创建链接支付:

$api = "https://svcs.sandbox.paypal.com/AdaptivePayments/Pay";

$input = array(
    "actionType" => "CREATE",
    "currencyCode" => "USD",
    "feesPayer" => "EACHRECEIVER",
    "memo" => "TestNote",
    "receiverList" => array(
        "receiver" => array( //first goes to merchant(95% of payment)
            "amount" => "95.00",
            "email" => "rbxseller@gmail.com",
            "primary" => true
        ),
        "receiver" => array( //then sends 5% commission to owner of site
            "amount" => "5.00",
            "email" => "rbxowner@gmail.com",
            "primary" => false
        )
    ),
    "requestEnvelope" => array(
        "errorLanguage" => "en_US"
    )
);

$headers = array(
    "X-PAYPAL-SECURITY-USERID: ".USER_ID,
    "X-PAYPAL-SECURITY-PASSWORD: ".USER_PASS,
    "X-PAYPAL-SECURITY-SIGNATURE: ".USER_SIG,
    "X-PAYPAL-REQUEST-DATA-FORMAT: NV",
    "X-PAYPAL-RESPONSE-DATA-FORMAT: JSON",
    "X-PAYPAL-APPLICATION-ID: APP-80W284485P519543T"
);

$ch = curl_init($api);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($input));
$response = curl_exec($ch);
var_dump($response);

我收到错误响应:

[{"errorId":"580001","domain":"PLATFORM","subdomain":"Application","severity":"Error","category":"Application","message":"Invalid request: {0}"}]

感谢您花时间回复!

最佳答案

您不能简单地向 PayPal 端点提交一组数据。您需要为 Adaptive Payments 构建 XML 请求。

我建议您看看我的 PayPal PHP Class Library ,它的工作方式与您在这里尝试的工作方式非常相似,除了它会获取您的数组数据,生成 XML 请求,将其发送到 PayPal,解析 XML 结果并将数组返回给您。

它支持包括 Adaptive Payments 在内的所有 PayPal API,并附带功能齐全的示例以及现成的模板文件,可用于开始新的调用。

关于php - 有人可以帮助我进行 paypal 链接支付吗? PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42050777/

相关文章:

php - 如何将 javascript 变量分配给 php 变量?不提交表格

php - 在 PHP 中编写更少的类 Java 对象和更多类似于 Clojure 的函数式编程原则的代码,我应该遵循什么原则?

php - MySQL自动增量ID的奇怪问题

php - 如何使用 PDO 实现 Memcached

c# - Paypal Windows 8 结帐 SDK

paypal - 何时停止查询 paypal api 的付款状态?

php - 如何自定义PayPal的结账页面(PayPal-PHP-SDK)

android - paypal退款支付出错

PHP 显示 GMT 格式的 Unix 时间戳

paypal - 如何在网站上获取交易 ID 或付款状态?