2013-05-23 8 views
0

Я создал кнопку подписки на моем сайте, используя простую форму, как показано ниже.Paypal Отмена Проблема с подпиской

<form name="mypaypalform" id="mypaypalform" action="https://www.paypal.com/cgi-bin/webscr" method="post"> 
<input type="hidden" name="item_number" value="123"> 
<input type="hidden" name="cmd" value="_xclick-subscriptions"> 
<input type="hidden" name="no_note" value="1"> 
<input type="hidden" name="notify_url" value="http://dev2.pw/dev/payment-confirm/"> 
<input type="hidden" name="return" value="http://dev2.pw/dev/payment-confirm/"> 
<input type="hidden" name="business" value="[email protected]"> 
<input type="hidden" name="item_name" value="Subscribe to Expert"> <input type="hidden" name="src" value="1"> 
<input type="hidden" name="a3" value="0.01"> 
<input type="hidden" name="p3" value="1"> 
<input type="hidden" name="t3" value="M"> 
<input type="hidden" name="srt" value="2"> 
<input type="hidden" name="bn" value="PP-SubscriptionsBF:btn_subscribeCC_LG.gif:NonHostedGuest"> 
<input type="submit" style="cursor:pointer;" class="centro_viewbuy" value="Subscribe us"> 
</form> 

Я установил notify_url в нем. Его работы прекрасны. Когда кто-то подписался на мой сайт. Он приходит на мою страницу уведомлений, а затем я храню данные транзакции в своей базе данных. Теперь моя проблема в том, что некоторые из моих абонентов нажимают «Отменить подписку» из своей учетной записи PayPal. Мне нужно обновить мою базу данных статусом «Отмена». Как я могу это сделать? Я не хочу использовать URL-адрес уведомлений о настройках IPN. потому что я буду использовать одну учетную запись PayPal для многих моих сайтов. Я хочу, чтобы paypal уведомил меня на той же странице, где он отправил мне уведомление, когда кто-то подписался.

Спасибо заранее.

ответ

0

Без использования IPN, единственный способ, которым вы могли бы отслеживать это, - это сохранить идентификатор вашего профиля в базе данных. Затем периодически устанавливайте свою систему (можно использовать задание cron), чтобы вызвать запрос API GetRecurringPaymentsProfileDetails, чтобы получить статус профиля. Затем либо установите его для отмены, либо полностью удалите из своей базы данных, если профиль отменен. Затем просто запустите систему, чтобы проверить все профили.

+1

Это еще работает? Я просто попытался сделать это и получил эту ошибку из API: «Профили подписки, не поддерживаемые API повторяющихся платежей». Есть ли другой API, который может выполнить поиск профиля? – TTT

Смежные вопросы