2013-07-02 2 views
2

Я использую экспресс-выезд Paypal для постоянных платежей и успешно интегрировал его с моим сайтом с помощью PHP. Однако у меня мало вопросовКак настроить paypal повторяющийся платеж IPN url

  1. Как настроить URL-адрес приемника IPN при создании повторяющегося профиля?
  2. Какие данные будут отправлены обратно ко мне, когда сервер PayPal ударит моего слушателя IPN?
  3. Как я могу имитировать или тестировать IPN с повторяющимся платежом?

Буду признателен за любую помощь в этом отношении.

ответ

3

URL-адрес IPN можно установить из учетной записи/профиля PayPal.

вот шаг за шагом руководство: - http://net.tutsplus.com/tutorials/php/how-to-setup-recurring-payments/

2

1) Вы можете установить URL IPN в профиле счета PayPal. К сожалению, NotifyURL в запросах API не работает с повторяющимися платежами.

2) Вот образец IPN, который вы получите при создании нового профиля.

payment_cycle = Monthly 
txn_type = recurring_payment_profile_created 
last_name = Testerson 
next_payment_date = 03:00:00 Jul 01, 2013 PDT 

residence_country = US 
initial_payment_amount = 0.00 
rp_invoice_id = 5053 
currency_code = USD 
time_created = 11:39:03 Jul 01, 2013 PDT 
verify_sign = AxuyKPFTDVhGvGlmhi1Hmnox3YnSAxMg2orZ0pTTDYZq.xNVLeRhMlVb 

period_type = Regular 
payer_status = unverified 
tax = 0.00 
payer_email = [email protected] 
first_name = Tester 
receiver_email = [email protected] 
payer_id = R2UKKKKXGXE 

product_type = 1 
shipping = 0.00 
amount_per_cycle = 1.95 
profile_status = Active 

charset = windows-1252 
notify_version = 3.7 
amount = 1.95 
outstanding_balance = 0.00 
recurring_payment_id = I-JM567DDW38E 

product_name = USBSwiper Monthly Subscription 
ipn_track_id = 5263496da8a39 

Вот образец IPN, который вы получите за завершенный платеж из этого профиля.

mc_gross = 1.95 
period_type = Regular 
outstanding_balance = 0.00 
next_payment_date = 03:00:00 Aug 01, 2013 PDT 
protection_eligibility = Ineligible 
payment_cycle = Monthly 
tax = 0.00 
payer_id = RLKKKKKFFFGMAJ 
payment_date = 03:18:43 Jul 01, 2013 PDT 
payment_status = Completed 
product_name = USBSwiper Monthly Subscription 
charset = windows-1252 
rp_invoice_id = 3420 
recurring_payment_id = I-W0HKYYYIIIKN 
first_name = Tester 
mc_fee = 0.39 
notify_version = 3.7 
amount_per_cycle = 1.95 
payer_status = unverified 
currency_code = USD 
business = [email protected] 
verify_sign = AX9DPPxdksE8vxjYRM3zoykf7dT4APAKCGYTvrJ1cP7slIeYHUE9eqDh 
payer_email = [email protected] 
initial_payment_amount = 29.95 
profile_status = Active 
amount = 1.95 
txn_id = 33S38844SG269083S 
payment_type = instant 
last_name = Testerson 
receiver_email = [email protected] 
payment_fee = 0.39 
receiver_id = M5VRAQYEFCSK6 
txn_type = recurring_payment 

mc_currency = USD 
residence_country = US 
receipt_id = 4101-1432-9533-3734 
transaction_subject = 
payment_gross = 1.95 
shipping = 0.00 
product_type = 1 
time_created = 08:50:12 Mar 01, 2012 PST 
ipn_track_id = b9df4ac317b53 

Чтобы проверить регулярные платежи IPN-х вы должны запускать их по-настоящему в песочнице, или вы можете создать базовую форму HTML с кучей скрытых полей, которые соответствуют тому, что вы ожидаете получить в фактический IPN. Установите действие этой формы на ваш IPN-адрес, а затем вы можете отправить это в браузере, чтобы увидеть результат на экране. Это поможет вам избавиться от любых проблем со сценарием и позволит запускать тесты, не ожидая, когда система PayPal отправит уведомления.

Просто имейте в виду, если вы проверите таким образом, что данные фактически не поступают из PayPal, поэтому он будет UNVERIFIED. В ходе тестирования вам необходимо будет обработать это в рамках своего кода.

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