- Объясните, как работает PayPal (процесс IPN и PDT). Глава Один
- Приведите хороший пример, чтобы показать, как регистр работает с PayPal, содержащий базу данных, контроллер и форму интерфейса с функциями jQuery. И объясните, как настроить учетную запись PayPal (пример Sandbox и реальной учетной записи PayPal). Глава вторая
Этот учебник дает общую картину процесса PayPal (PDT и IPN) и реального проекта от начальной точки до конца. Хорошее объяснение и картинки, подробные комментарии в строке кода. Надеюсь, это будет полезно всем читателям.
В третьей главе
После настройки песочницы PayPal, работающей с реальным проектом, мы можем приступить к настройке нашей деловой учетной записи PayPal и начать публиковать наш проект и зарабатывать деньги.
Настройка подлинной учетной записи PayPal Business
Подлинная панель бизнес-аккаунта PayPal немного отличается от Sandbox, но другие настройки практически не отличаются. Поэтому я просто указываю, где находятся настройки, и настройки должны быть такими же, как в предыдущих примерах.
Сначала подайте заявку на свою бизнес-учетную запись PayPal, но мы пропустили этот шаг, поскольку бизнес-учетная запись PayPal в разных ситуациях и компаниях сильно отличается. Как видите, есть много личных чувствительных деталей, которые я должен замаскировать. Итак, нажмите на ссылку профиля.
Затем в исходном коде закомментируйте все, что связано с «песочницей», измените токен и раскомментируйте код рядом с кодом песочницы.
Я выделил изменения в коде:
1. Вам нужно изменить URL перенаправления на PayPal вместо песочницы: (ВНИМАНИЕ: фрагмент содержит «>» и «&», это должны быть «>» и «&»)
public function registerSubmit()
{
// more code here ...
// return url to paypal
// return json_encode(array('result' => true, 'url' => "https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=HA9DZBCKXKCL2&item_number=".$itemId."&amount=".$this->amount));
return json_encode(array('result' => true, 'url' => "https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=SSZF9WEUY87GS&item_number=".$itemId."&amount=".$this->amount));
2. _PDT изменения:
private function _PDT()
{
// more code here ...
// $auth_token = "_PJaHiwRfwMmWzW-9nuPuSguYxC-1d9KpxaasaNANtIvyOcmqY6jXNkRmxW";
$auth_token = "OxDenzKmrWPyEXU0YzIg2zs-VAe7ufCADyjbfxF_RpREL4rLEslZrSa21R4";$req .= "&tx=$tx_token&at=$auth_token";// post back to PayPal system to validate$header = "POST /cgi-bin/webscr HTTP/1.0rn";
// $header .= "Host: www.sandbox.paypal.comrn";
$header .= "Host: www.paypal.comrn";
$header .= "Content-Type: application/x-www-form-urlencodedrn";
$header .= "Content-Length: " . strlen($req) . "rnrn";
// $fp = fsockopen ('ssl://www.sandbox.paypal.com', 443, $errno, $errstr, 30); // open socket
$fp = fsockopen ('ssl://www.paypal.com', 443, $errno, $errstr, 30); // open socket
// more code here ...
}
3. _IPN изменения:
private function _PDT()
{
// more code here ...
// $url= 'https://www.sandbox.paypal.com/cgi-bin/webscr';
$url= 'https://www.paypal.com/cgi-bin/webscr';
// more code here ...
// curl_setopt($ch, CURLOPT_HEADER , array('Host: www.sandbox.paypal.com'));
curl_setopt($ch, CURLOPT_HEADER , array('Host: www.paypal.com'));
// more code here ...
}
Затем перейдите в раздел «Мои инструменты продаж», и вы сможете настроить кнопки PDT, IPN и PayPal.
Тогда СДЕЛАНО! Спасибо!
Надеюсь, вам понравился мой краткий учебник о том, как использовать Paypal для настройки автоматических платежей.