Недостаток Braintree с одноразовыми номерами?

Мне интересно, является ли это недостатком брейнтри или я не понимаю. На диаграмме ниже и в документации: https://developers.braintreepayments.com/start/overview шаги

Диаграмма

  1. Клиент запрашивает токен с моего сервера
  2. Я даю им жетон
  3. Они производят оплату, отправляя всю информацию и банковские реквизиты в Braintree.
  4. Брейнтри дает им одноразовый номер.
  5. Клиент дает мне этот одноразовый номер
  6. Я проверяю этот одноразовый номер на сервере Braintree.

Однако на шаге 4, почему Braintree передает токен клиенту, а не отправляет токен или что-то прямо на мой сервер? Что, если клиент совершит платеж, а затем закроет вкладку. Это означает, что шаги 5 и 6 не могут быть выполнены, и этот платеж остается в подвешенном состоянии. Как это исправить? Я не хочу, чтобы клиенты, совершая платеж, закрывали свою вкладку, после чего мне приходилось вручную назначать их заказ.


person James    schedule 06.12.2020    source источник


Ответы (1)


Этот поток выглядит довольно стандартно. Я не думаю, что здесь есть изъян.

почему Braintree отдает токен клиенту, а не отправляет токен или что-то прямо на мой сервер?

Браузер клиента подключается напрямую к Braintree, чтобы предотвратить передачу на ваш сервер информации о кредитной карте. Это значительно сужает область PCI, что выгодно для вас. Ваш сервер не участвует в этом взаимодействии, поэтому Braintree не будет знать, куда отправить этот одноразовый номер.

Внедрение некоторого типа системы, в которой Braintree обращается к вашему серверу для асинхронного предоставления одноразового номера, значительно усложнит процесс для всех участников.

Что, если клиент совершит платеж, а затем закроет вкладку. Это означает, что шаги 5 и 6 не могут быть выполнены, и этот платеж остается в подвешенном состоянии.

Шаг 3 — это чисто токенизация. На самом деле это не взимает плату с клиента. Платежная информация клиента хранится на стороне Braintree до тех пор, пока вы не создадите транзакцию на шаге 6 (на рисунке это показано как шаг 5). Если клиент закрывает свой браузер между моментом, когда он сохраняет свою платежную информацию в Braintree, и моментом, когда вы создаете транзакцию с одноразовым номером, с клиента не взимается плата. Предположительно, Braintree истечет срок действия платежных реквизитов через некоторое время.

person HPierce    schedule 09.12.2020