用于PayPal自适应支付的Php-curl预证明密钥


Php curl for PayPal adaptive payments preaproval key

PHP新手,尝试将PayPal的自适应支付选项添加到我正在构建的网站中。

我需要将在PayPal上找到的以下代码格式化为php curl:

curl -s --insecure
-H "X-PAYPAL-SECURITY-USERID: api_username"
-H "X-PAYPAL-SECURITY-PASSWORD: api_password"
-H "X-PAYPAL-SECURITY-SIGNATURE: api_signature"
-H "X-PAYPAL-REQUEST-DATA-FORMAT: NV"
-H "X-PAYPAL-RESPONSE-DATA-FORMAT: NV"
-H "X-PAYPAL-APPLICATION-ID: app_id"
https://svcs.sandbox.paypal.com/AdaptivePayments/Preapproval  -d
"cancelUrl=http://your_cancel_url
&currencyCode=USD
&endingDate=2009-12-13T08%3A00%3A00.000Z
&maxAmountPerPayment=200.00
&maxNumberOfPayments=30
&maxTotalAmountOfAllPayments=1500.00
&pinType=NOT_REQUIRED
&requestEnvelope.errorLanguage=en_US
&returnUrl=http://your_return_url
&startingDate=2009-07-13T07%3A00%3A00.000Z
&senderEmail=sender@domain

提出了以下内容:

    $ch = curl_init();
    paypal_url = 'https://svcs.sandbox.paypal.com/AdaptivePayments/Preapproval';
    paypal_header_options = array();
    paypal_header_options[] = "X-PAYPAL-SECURITY-USERID: api_username";
    paypal_header_options[] = "X-PAYPAL-SECURITY-PASSWORD: api_password";
    paypal_header_options[] = "X-PAYPAL-SECURITY-SIGNATURE: api_signature";
    paypal_header_options[] = "X-PAYPAL-REQUEST-DATA-FORMAT: NV";
    paypal_header_options[] = "X-PAYPAL-RESPONSE-DATA-FORMAT: NV";
    paypal_header_options[] = "X-PAYPAL-APPLICATION-ID: app_id";

    curl_setopt($ch, CURLOPT_URL, paypal_url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, paypal_header_options);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    paypal_response = curl_exec($ch);
    curl_close($ch);

所以我的问题是这个去哪里:

    "cancelUrl=http://your_cancel_url
    &currencyCode=USD
    &endingDate=2009-12-13T08%3A00%3A00.000Z
    &maxAmountPerPayment=200.00
    &maxNumberOfPayments=30
    &maxTotalAmountOfAllPayments=1500.00
    &pinType=NOT_REQUIRED
    &requestEnvelope.errorLanguage=en_US
    &returnUrl=http://your_return_url
    &startingDate=2009-07-13T07%3A00%3A00.000Z
    &senderEmail=sender@domain

什么是CCD_ 1?我已经搜索过了,但没能找到并回答。

您需要将数据推送到post参数字段中,如下所示:

$paypal_data_d = 'cancelUrl=...&senderEmail=sender@domain';
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $paypal_data_d);