2014-09-30 2 views
1

У меня есть кнопка подписки с PayPal, в которой я хочу иметь неограниченное количество биллинговых циклов. Это достаточно просто настроить через веб-интерфейс PayPal, установив «После того, сколько циклов должно быть остановлено»? «Никогда». Однако, когда я обновляю эту кнопку через API-интерфейс PayPal NVP BMUpdateButton, количество циклов выставления счетов показывает пользователю как «25,00 AUD за один месяц» вместо «25 долларов США за каждый месяц». Кнопка по-прежнему показывает «Никогда» как значение в веб-интерфейсе, но когда она используется, кнопка устанавливается на завершение через 1 месяц.PayPal NVP API - BMUpdateButton

Я пробовал варианты параметра L_OPTIONnTOTALBILLINGCYCLESx API, но безуспешно. Любая помощь или мысли будут оценены. Насколько я знаю, это тонкая ошибка в самом PayPal. Если у кого-то есть основания полагать, что если я перейду с NVP на SOAP, это сработает, то это также будет считаться решением.

Вот пример параметров, которые я отправляю. Я не получаю никаких ошибок API, и кнопка обновляется корректно, за исключением общих циклов выставления счетов.

'METHOD' => BMUpdateButton 
'VERSION' => 117 
'USER' => ... 
'PWD' => ... 
'SIGNATURE' => ... 

'L_OPTION0SELECT0' => First Tier 
'L_OPTION0PRICE0' => 25.00 
'L_OPTION0BILLINGPERIOD0' => Month 
'L_OPTION0BILLINGFREQUENCY0' => 1 
'L_OPTION0TOTALBILLINGCYCLES0' => 0 

'L_OPTION0SELECT1' => Second Tier 
'L_OPTION0PRICE1' => 30.00 
'L_OPTION0BILLINGPERIOD1' => Month 
'L_OPTION0BILLINGFREQUENCY1' => 1 
'L_OPTION0TOTALBILLINGCYCLES1' => 0 

'HOSTEDBUTTONID' => ... 
'BUTTONTYPE' => SUBSCRIBE 
'OPTION0NAME' => Payment Scheme 
'L_BUTTONVAR0' => currency_code=AUD 
'L_BUTTONVAR1' => no_shipping=1 
'L_BUTTONVAR2' => cancel_return=... 
'L_BUTTONVAR3' => return=... 

Большое спасибо за любые мысли.

ответ

0

Следующие два параметра в вашем вызове API связаны с кнопками платежа, и если вы передадите их кнопке типа подписки, они будут проигнорированы.

L_OPTION0BILLINGFREQUENCY0

L_OPTION0TOTALBILLINGCYCLES0

Если вы хотите обновить циклов подписки счетов, нужно передать эти два параметра:

L_BUTTONVARn = "SRC = 1"

L_BUTTONVARn = "srt = 12"

Если приведенный выше параметр src = 1 означает, что профиль настроен на повторение, а srt = 12, то установочный цикл будет равен 12.

Если вы не передали какой-либо параметр в вызове API, то по умолчанию «src» будет установлен на «0», что означает отсутствие повторения, похожее на ваш случай.

+0

Большое спасибо! Вы правильно указали, что я пропустил при чтении документации. – radarhere

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