Paypal устанавливает неограниченные циклы для повторяющихся платежей

Я пытаюсь интегрировать регулярные платежи Paypal для моего мобильного приложения. До сих пор мне удалось реализовать платежи Paypal в различных приложениях PHP с использованием https://github.com/paypal/PayPal-PHP-SDK, но это первый раз, когда я осуществляю регулярные платежи

Я пытаюсь построить платеж для тарифного плана, используя следующий код:

        $paymentDefinition = new PaymentDefinition();
$paymentDefinition->setName('Mobile App subscription')
->setType('REGULAR')
->setFrequency('Month')
->setFrequencyInterval("1")
->setCycles("1")
->setAmount(
new Currency(
array(
'value' => 50,
'currency' => 'USD'
)
)
);

Из документации Paypal я понял, что для setCycles должно быть установлено значение 0 для неограниченных подписок. Установка его в 0 с помощью PHP SDK возвращает ошибку 400.

Все выглядит хорошо, и я получаю первый платеж, но я не уверен, что установка Цикла в «1» сделает работу, которую я ищу.

2

Решение

Просто нашел решение:

https://developer.paypal.com/docs/api/#paymentdefinition-object

Количество циклов в этом определении платежа. Для планов типа INFINITE циклы должны быть установлены в 0 для типа REGULAR payment_definition. Необходимые.

Таким образом, в основном вы должны установить тип плана «БЕСКОНЕЧНЫЙ», чтобы установить 0 циклов.

Спасибо.

3

Другие решения

У меня была та же проблема, мое решение было просто удалить setCylcles, посмотрите здесь пример того, как должны выглядеть классы плана и определения платежа:

$plan = new Plan();
$plan->setName('Some example name')
->setDescription('A short description of the plan')
->setType('INFINITE');

$paymentDefinition = new PaymentDefinition();
$paymentDefinition->setName('Regular Payments')
->setType('REGULAR')
->setFrequency('Month')
->setFrequencyInterval("1")
->setAmount(new Currency(array('value' => 100, 'currency' => 'USD')));enter code here
3

По вопросам рекламы [email protected]