2014-01-24 2 views
0

Что может привести к тому, что выбранный клиентом вариант доставки (вместе с некоторыми связанными полями) не будет возвращен в IPN?Название опции доставки Отсутствует с IPN

Мы используем зашифрованную команду «загрузка корзины» в сочетании с API мгновенного обновления для предоставления динамических параметров доставки на основе адреса клиента (explained here). В некоторых (не всех) случаях имя shipping_option_имя и некоторые связанные значения не возвращаются в IPN. Кроме того, имя параметра доставки, выбранного пользователем, недоступно в интерфейсе PayPal при просмотре данных транзакции.

Обратите внимание, что это происходит только в некоторых случаях, и мы не можем найти общую причину среди сбоев.

UPDATE 1/29/14 - Мы заметили, что имя способ доставки записывается для всех транзакций, в которых контрагент статус «Незарегистрированная» и около 25% сделок, по которым контрагент Статус является чем-то другим (например, подтвержденным, неподтвержденным, проверенным и т. д.).

Мы установили регистрацию, чтобы отслеживать исходящие данные мгновенного обновления и входящие данные IPN. В тех случаях, когда shipping_option_name отсутствует СПИ следующие поля также отсутствуют:

  • Shipping_calculation_mode
  • shipping_option_name
  • insurance_option_selected
  • shipping_option_amount
  • insurance_amount
  • receipt_id
  • shipping_is_default

Я вставляю ответ мгновенного обновления и IPN PayPal для двух очень похожих транзакций ниже. Обе транзакции покупают один и тот же продукт, имеют одну и ту же цену доставки, и клиенты живут в одном и том же состоянии. Первая транзакция успешно вернула имя опции доставки в IPN, а вторая транзакция - нет. Чувствительные значения были заменены на XX. Обратите внимание, что ответ «Мгновенное обновление» идентичен между двумя транзакциями, но некоторые значения отсутствуют в IPN для второй транзакции.

Первая сделка - успешно записывает перевозку груза имя параметра

------------ 
OUR INSTANT UPDATE RESPONSE 
----------- 
METHOD=CallbackResponse 
&L_SHIPPINGOPTIONLABEL0=Ground 
&L_SHIPPINGOPTIONAMOUNT0=16.95 
&L_TAXAMT0=0 
&L_SHIPPINGOPTIONISDEFAULT0=true 
&L_SHIPPINGOPTIONLABEL1=3-Day 
&L_SHIPPINGOPTIONAMOUNT1=45 
&L_TAXAMT1=0 
&L_SHIPPINGOPTIONISDEFAULT1=false 
&L_SHIPPINGOPTIONLABEL2=2-Day 
&L_SHIPPINGOPTIONAMOUNT2=60 
&L_TAXAMT2=0 
&L_SHIPPINGOPTIONISDEFAULT2=false 
&L_SHIPPINGOPTIONLABEL3=Next Day - Standard (Afternoon) 
&L_SHIPPINGOPTIONAMOUNT3=85 
&L_TAXAMT3=0 
&L_SHIPPINGOPTIONISDEFAULT3=false 
&L_SHIPPINGOPTIONLABEL4=Next Day - Priority (Morning) 
&L_SHIPPINGOPTIONAMOUNT4=100 
&L_TAXAMT4=0 
&L_SHIPPINGOPTIONISDEFAULT4=false 

------------ 
IPN DATA FROM PAYPAL 
----------- 
[p] => store/paypal-checkout-response 
[Shipping_calculation_mode] => Callback 
[mc_gross] => 132.15 
[protection_eligibility] => Eligible 
[address_status] => confirmed 
[item_number1] => 18827 
[payer_id] => XX 
[tax] => 0.00 
[address_street] => XX 
[payment_date] => 09:00:47 Jan 23, 2014 PST 
[payment_status] => Completed 
[charset] => windows-1252 
[shipping_option_name] => Ground 
[address_zip] => XX 
[mc_shipping] => 16.95 
[mc_handling] => 0.00 
[first_name] => XX 
[mc_fee] => 4.13 
[address_country_code] => US 
[address_name] => XX 
[notify_version] => 3.7 
[insurance_option_selected] => 0 
[custom] => XX 
[payer_status] => unverified 
[business] => XX 
[address_country] => United States 
[shipping_option_amount] => 16.95 
[num_cart_items] => 1 
[mc_handling1] => 0.00 
[address_city] => XX 
[verify_sign] => XX 
[payer_email] => XX 
[mc_shipping1] => 0.00 
[tax1] => 0.00 
[txn_id] => XX 
[payment_type] => instant 
[last_name] => XX 
[address_state] => MO 
[item_name1] => End Caps 
[receiver_email] => XX 
[payment_fee] => 4.13 
[quantity1] => 1 
[insurance_amount] => 0.00 
[receiver_id] => XX 
[txn_type] => cart 
[mc_gross_1] => 115.20 
[mc_currency] => USD 
[residence_country] => US 
[receipt_id] => XX 
[transaction_subject] => XX 
[payment_gross] => 132.15 
[shipping_is_default] => 1 
[ipn_track_id] => XX 

Вторая сделка - Доставки имя опции не было зарегистрировано или возвращено СПИ

------------ 
OUR INSTANT UPDATE RESPONSE 
----------- 
METHOD=CallbackResponse 
&L_SHIPPINGOPTIONLABEL0=Ground 
&L_SHIPPINGOPTIONAMOUNT0=16.95 
&L_TAXAMT0=0 
&L_SHIPPINGOPTIONISDEFAULT0=true 
&L_SHIPPINGOPTIONLABEL1=3-Day 
&L_SHIPPINGOPTIONAMOUNT1=45 
&L_TAXAMT1=0 
&L_SHIPPINGOPTIONISDEFAULT1=false 
&L_SHIPPINGOPTIONLABEL2=2-Day 
&L_SHIPPINGOPTIONAMOUNT2=60 
&L_TAXAMT2=0 
&L_SHIPPINGOPTIONISDEFAULT2=false 
&L_SHIPPINGOPTIONLABEL3=Next Day - Standard (Afternoon) 
&L_SHIPPINGOPTIONAMOUNT3=85 
&L_TAXAMT3=0 
&L_SHIPPINGOPTIONISDEFAULT3=false 
&L_SHIPPINGOPTIONLABEL4=Next Day - Priority (Morning) 
&L_SHIPPINGOPTIONAMOUNT4=100 
&L_TAXAMT4=0 
&L_SHIPPINGOPTIONISDEFAULT4=false 

------------ 
IPN DATA FROM PAYPAL 
----------- 

[p] => store/paypal-checkout-response 
[mc_gross] => 132.15 
[protection_eligibility] => Eligible 
[address_status] => confirmed 
[item_number1] => 18827 
[payer_id] => XX 
[tax] => 0.00 
[address_street] => XX 
[payment_date] => 07:11:37 Jan 23, 2014 PST 
[payment_status] => Completed 
[charset] => windows-1252 
[address_zip] => XX 
[mc_shipping] => 16.95 
[mc_handling] => 0.00 
[first_name] => XX 
[mc_fee] => 4.13 
[address_country_code] => US 
[address_name] => XX 
[notify_version] => 3.7 
[custom] => XX 
[payer_status] => verified 
[business] => XX 
[address_country] => United States 
[num_cart_items] => 1 
[mc_handling1] => 0.00 
[address_city] => XX 
[verify_sign] => XX 
[payer_email] => XX 
[mc_shipping1] => 0.00 
[tax1] => 0.00 
[txn_id] => XX 
[payment_type] => instant 
[last_name] => XX 
[address_state] => MO 
[item_name1] => End Caps 
[receiver_email] => XX 
[payment_fee] => 4.13 
[quantity1] => 1 
[receiver_id] => XX 
[txn_type] => cart 
[mc_gross_1] => 115.20 
[mc_currency] => USD 
[residence_country] => US 
[transaction_subject] => XX 
[payment_gross] => 132.15 
[ipn_track_id] => XX 

Любая помощь будет принята с благодарностью!

ответ

1

Все дело доходит до запроса DoExpressCheckoutPayment. Вы должны обязательно передать все данные о доставке и адресе в этом заключительном вызове, или он не будет включен в детали транзакции, что означает, что он не будет доступен в IPN.

+0

Спасибо, Андрей, но я должен был указать, что мы не используем API ExpressCheckout. Мы используем зашифрованную команду «Загрузка тележки» в сочетании с API мгновенного обновления для предоставления динамических параметров доставки, как описано на [этой странице Документов PayPal] (https://developer.paypal.com/webapps/developer/docs/classic/paypal-payments-standard/integration-guide/cart_upload/# id09BLE0O0E30).Я обновил свой вопрос, чтобы включить эту деталь. – buckeye7

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