Comment intégrer Paypal IPN pour les paiements récurrents?
-
27-09-2019 - |
Question
J'utilise PAYPAL classe IPN de Micah Carrick jusqu'à maintenant
web_accept
mais maintenant l'un des client souhaite intégrer la méthode Récurrent dans it.I essayé d'utiliser la même chose mais malheureusement n'a pas été cette fois-ci un tel succès. Je suis en train de se connecter au method.Following récurrent Paypal est le code par lequel je cherche à y accéder;
$paypalObj = new paypal_class();
$itemName = "My Product";
$itemNumber = $itemName . " - Premium ($amount$)";
$paypalObj->paypal_url = 'https://www.sandbox.paypal.com/cgi-bin/webscr';// testing paypal url
//$paypalObj->paypal_url = 'https://www.paypal.com/cgi-bin/webscr';// Live paypal url
$paypalObj->add_field('cmd','_xclick-subscriptions');
$paypalObj->add_field('txn_type', "recurring_payment");
$paypalObj->add_field('product_name', "My Product Subscription - Monthly( $$amount )");
$paypalObj->add_field('desc', "My Product Subscription - Monthly( $$amount )");
$paypalObj->add_field('business', "test@yahoo.com");
$paypalObj->add_field('return', "http://".$serverName . "/buy-now.php");
$paypalObj->add_field('cancel_return', "http://".$serverName. "/return.php?action=cancel");
$paypalObj->add_field('notify_url', "http://" . $serverName . "/return.php?action=ipn");
$paypalObj->add_field('src', "1");
$paypalObj->add_field('sra', "1");
$paypalObj->add_field('a3', "$amount");
$paypalObj->add_field('t3', "M");
$paypalObj->add_field('p3', "1");
//$paypalObj->add_field('no_note', "1");
$paypalObj->add_field('currency_code', "USD");
$paypalObj->add_field('first_name', $firstName);
$paypalObj->add_field('last_name', $lastName);
$paypalObj->submit_paypal_post();
code me permet de rediriger vers le bac à sable Paypal (Comme je suis toujours tester), mais quand je me connecte sur Sandbox Paypal il me lance cette erreur:
Le lien que vous avez utilisé pour entrer dans le système PayPal est invalide. S'il vous plaît examiner le lien et essayez à nouveau.
La solution
Je viens de comprendre quel était le problème derrière mon code.I juste réécrit le code avec d'autres variables et juste a bien fonctionné.
$paypalObj = new paypal_class();
$customData = $firstName . ":";
$customData .= $lastName . ":";
$customData .= $emailId ;
$itemName = "MY_PRODUCT";
$itemNumber = $itemName . " - Premium ($amount$)";
$paypalObj->paypal_url = 'https://www.sandbox.paypal.com/cgi-bin/webscr';// testing paypal url
$paypalObj->add_field('cmd','_xclick-subscriptions');
$paypalObj->add_field('business','MY_MECHANT_ACCOUNT');
$paypalObj->add_field('item_name',$itemName);
$paypalObj->add_field('item_number',$itemNumber);
$paypalObj->add_field('return', "http://" . $serverName . "/buy-now.php");
$paypalObj->add_field('cancel_return', "http://".$serverName. "/buy-now.php?action=cancel");
$paypalObj->add_field('notify_url', "http://" . $serverName . "/buy-now.php?action=ipn");
$paypalObj->add_field('no_note','1');
$paypalObj->add_field('currency_code','USD');
$paypalObj->add_field('custom',$customData);
$paypalObj->add_field('a3', "$amount");
$paypalObj->add_field('t3', "M");
$paypalObj->add_field('p3', "1");
$paypalObj->add_field('src', "1");
$paypalObj->add_field('sra', "1");
$paypalObj->submit_paypal_post();
Autres conseils
Je ne crois pas que vous devriez installerez txn_type -. C'est une valeur repassée par PayPal IPN, ne lui a été transmis