2013-03-15 2 views
1

В настоящее время я интегрирую процесс оплаты в PayPal на своем веб-сайте. На моем сайте пользователи имеют возможность отменить свой платежный регулярный платеж. У вас есть payer_id и payer_email для каждого пользователя. возможно ли отменить повторный платеж с этими деталями. если нет, то как я могу отменить повторяющийся вариант, если пользователь в пользовательском клике отменит повторный платеж с моего сайта.Отмена Paypal Периодические платежи

спасибо.

ответ

1

Вы можете приостановить или аннулировать профиль с помощью API ManageRecurringPaymentsProfileStatus.

Примечание this reference. Это специально для экспресс-проверки, но оно будет работать для других интеграций с PayPal.

Это также был дан ответ здесь, на будущее: Can you cancel a PayPal automatic payment via API? (Subscription created via Hosted button)

2

Вы можете отменить все ваши Paypal повторяющееся профиль с profile_id. и выполнить этот код с помощью идентификатора профиля повторяющихся платежей. Надеюсь, что это поможет вам.

<?php 
$curl = curl_init(); 

curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); 
curl_setopt($curl, CURLOPT_POST, true); 
curl_setopt($curl, CURLOPT_URL, 'https://api-3t.sandbox.paypal.com/nvp'); 
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query(array(
    'USER' => 'XXXXXXXXXXX', //Your API User 
    'PWD' => 'XXXXXXXXXXXXX', //Your API Password 
    'SIGNATURE' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXX', //Your API Signature 

    'VERSION' => '108', 
    'METHOD' => 'ManageRecurringPaymentsProfileStatus', 
    'PROFILEID' => 'I-315LHdijsju',   //here add your profile id      
    'ACTION' => 'Cancel' //this can be selected in these default paypal variables (Suspend, Cancel, Reactivate) 
))); 

$response = curl_exec($curl); 

curl_close($curl); 

$nvp = array(); 

if (preg_match_all('/(?<name>[^\=]+)\=(?<value>[^&]+)&?/', $response, $matches)) { 
    foreach ($matches['name'] as $offset => $name) { 
     $nvp[$name] = urldecode($matches['value'][$offset]); 
    } 
} 

printf("<pre>%s</pre>",print_r($nvp, true)); 
Смежные вопросы