Интеграция PayPal внутри сайта для разных аккаунтов
Я создаю простой сайт продажи, где любой пользователь (продавец) может загрузить фотографию и продать ее другим пользователям (покупателям).
Продавцу необходимо написать свою учетную запись PayPal при регистрации, поэтому при получении изображения заказа покупателя его переводят на сайт PayPal, даже если у него нет PayPal для использования за пределами Карты (ту страницу, которую вы часто видите, когда оплачиваете что-то с помощью PayPal), и когда покупатель заплатит, отправьте эти средства продавцу и переведите покупателя обратно на сайт и подтвердите оплату. Когда php подтверждает оплату, он дает возможность покупателю загрузить изображение.
Возможно ли это и как?
Может кто-нибудь написать мне или простой сценарий или сказать мне, где найти примеры для этого... Это распространяется по сети, так что никто не должен этого...
Спасибо!
2 ответа
Вот первый шаг, создание формы, поместите ее там, где вы хотите, чтобы была кнопка "КУПИТЬ", она может быть на любой странице, вы можете создать ее с помощью мастера кнопок на сайте PayPal, просто добавьте этот скрытый ввод notify_url. Вы можете редактировать эти поля с помощью ввода php суммы, item_name, деловой почты, custom...
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_xclick">
<input type="hidden" name="business" value="any-email-you-want@domain.com">
<input type="hidden" name="lc" value="US">
<input type="hidden" name="item_name" value="Item Name">
<input type="hidden" name="item_number" value="150">
<input type="hidden" name="amount" value="100.00">
<input type="hidden" name="currency_code" value="USD">
<input type="hidden" name="button_subtype" value="services">
<input type="hidden" name="no_note" value="1">
<input type="hidden" name="no_shipping" value="1">
<input type="hidden" name="tax_rate" value="0.000">
<input type="hidden" name="shipping" value="0.00">
<input type="hidden" name="custom" value="user_id_goes_here">
<input type="hidden" name="bn" value="PP-BuyNowBF:btn_buynowCC_LG.gif:NonHosted">
<input type="hidden" name="notify_url" value="http://checking-url-goes-here/file.php">
<input type="image" src="https://www.sandbox.paypal.com/en_US/i/btn/btn_buynowCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
<img alt="" border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
</form>
Второй шаг - проверка правильности оплаты, file.php (или любого URL-адреса файла, указанного в скрытом вводе notify_url в приведенной выше форме):
<?php
$req = 'cmd=_notify-validate';
foreach ($_POST as $key => $value) {
$value = urlencode(stripslashes($value));
$req .= "&$key=$value";
}
$header .= "POST /cgi-bin/webscr HTTP/1.0\r\n";
$header .= "Content-Type: application/x-www-form-urlencoded\r\n";
$header .= "Content-Length: " . strlen($req) . "\r\n\r\n";
$fp = fsockopen ('ssl://www.paypal.com', 443, $errno, $errstr, 30);
if (!$fp) {
//ERROR READING PAGE - CODE ERROR
} else {
fputs ($fp, $header . $req);
while (!feof($fp)) {
$res = fgets ($fp, 1024);
if (strcmp ($res, "VERIFIED") == 0) {
//VALID CODE, DO WHATEVER YOU WANT WITH IT HERE, PAYMENT IS CONFIRMED...
}
else if (strcmp ($res, "INVALID") == 0) {
//INVALID CODE
}
}
?>
Вы можете проверить этот код внутри: https://developer.paypal.com/(PayPal Sandbox) просто замените
www.paypal.com
с
www.sandbox.paypal.com
(вы можете найти его в двух местах).
И это все...
Я просил об этом указаниях, и никто не хочет направлять меня сюда...
Я даже получил оценку -2 за этот вопрос, но ни один из этих минусов не был достаточно умен, чтобы написать мне эти примеры, как я и просил...
И я тот, кто заслуживает минусов?
(Я надеюсь, что кто-то найдет эти примеры полезными)
Вам не нужно будет хранить его учетную запись PayPal, когда он регистрируется.
И PayPal написал тонны информации в своих разделах поддержки.
Посмотрите PayPal IPN.