2015-04-04 3 views
1

Итак, мы внедрили подписки Paymill в нашем приложении. Проблема в том, что после того, как пользователь отправит информацию о своей кредитной карте, и мы создадим подписку на внутреннем сервере, первая транзакция не будет сделана немедленно. Только через несколько минут мы получаем первый подписчик. Полученный веб-крючок обозначает первую транзакцию. Он выполняет эту работу, но как мы можем получить первую транзакцию одновременно с созданием подписки? Через предварительную авторизацию?Создайте первую транзакцию сразу для подписки на Paymill

Дело в том, что на сайте Paymill не так много информации, ни в документах API относительно таких случаев использования, как этот.

ответ

2

Вы правы, Webhook не позволяет мгновенно получать ответ на ваш вызов API.

Однако, вы можете получить мгновенный ответ, создав сделки:

curl https://api.paymill.com/v2.1/transactions \ 
-u <YOUR_PRIVATE_KEY>: \ 
-d "amount=4200" \ 
-d "currency=EUR" \ 
-d "payment=<CLIENT_PAYMENT>" \ 
-d "client=<YOUR_CLIENT>" \ 
-d "description=Transaction" 

Отклик транзакция мгновенно возвращается на сервер, который позволяет информировать своего клиента без задержки.

Если транзакция прошла успешно вы также хотите, чтобы дебет своего клиента в будущем путем создания подписки:

curl https://api.paymill.com/v2.1/subscriptions \ 
-u <YOUR_PRIVATE_KEY>: \ 
-d "client=<YOUR_CLIENT>" \ 
-d "payment=<CLIENT_PAYMENT>" \ 
-d "amount=4200" \ 
-d "currency=EUR" \ 
-d "interval=1 week,monday" \ 
-d "name=Example Subscription" \ 
-d "period_of_validity=2 YEAR" \ 
-d "start_at=<SUBSCRIPTION_STARTING_DATE" 

Параметр start_at должна содержать дату, когда начинается подписка (в будущем):

current_date + subscription_interval (например, 1 неделя)

Если этот параметр не установлен, вы будете дважды брать кредитную карту своего клиента в ту же дату!

+0

Понял. Не думал об этом так. Большое спасибо за вашу идею. Если что-то не сработает, я вернусь к вам. Но я уверен, что так будет. Добрый день! –

+1

Причина, по которой это необходимо сделать, происходит из-за того, что вызов подписки на создание API уже возвращает ответ для создания объекта подписки (а не транзакции). Второй ответ для предстоящего вызова транзакции, сделанный PAYMILL, может быть возвращен только Webhook, потому что он не запускается вашим сервером. Надеюсь, это поможет. Добрый день! –

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