#flutter #stripe-payments
#flutter #stripe-платежи
Вопрос:
Я пытаюсь внедрить оплату Stripe в своем мобильном приложении Flutter, но мне нужно завершить платеж на стороне сервера.
Кто-нибудь знает, как я могу сделать это с помощью 3D secure / sca? Я могу показывать страницу 3D secure / sca только для завершения платежей на стороне клиента. Проверяя онлайн-документацию, я обнаружил следующее: https://stripe.com/docs/payments/accept-a-payment-synchronously , но пакеты stripe (я пробовал с stripe sdk и stripe_flutter) не предоставляют действие stripe.handlecar.
Ответ №1:
Чтобы ответить на ваш главный вопрос: вы не можете. Если бы вы могли, вся функция безопасности была бы бессмысленной. Вам нужна аутентификация на стороне клиента.
PSD2 / 3D Secure / 2-факторная аутентификация или любой другой механизм полагается на то, что банк сообщает клиенту, что делать для аутентификации. Они могут перенаправить вас на другой сайт, принадлежащий банку, они могут запросить у вас PIN-код или одноразовый код, или что-нибудь еще, что они сочтут подходящим. Они будут взаимодействовать с пользователем, это единственный смысл всего этого.
Вызывается метод, который будет его обрабатывать confirmPaymentIntent
(может немного отличаться в зависимости от того, какой пакет вы используете). Его нужно будет вызвать на стороне клиента с намерением платежа для платежа. Затем будет показан экран тестирования номеров тестовых карт, которые предоставляет stripe.
Комментарии:
1. Но как мы можем отобразить эту PSD2 / 3D Secure / 2-факторную аутентификацию на стороне клиента? Stripe, похоже, управляет им с помощью URL-адреса, который отображает следующее: i.stack.imgur.com/UzJSw.png Но как мы можем отобразить это в Flutter? Это проблема
2. Вы вызывали метод? Что произошло? В моем веб-интерфейсе (не flutter) это был один вызов метода JS, который затем выполнял весь пользовательский интерфейс.
3. Честно говоря, я понятия не имею, что это за метод — нет документации для flutter и stripe so idk. Посмотрел документацию JS, и это имеет смысл
4. Ребята, согласно документации stripe, клиент может обрабатывать 3D secure без подтверждения самого платежа. Смотрите Шаг 5 по этой ссылке (в котором объясняется, как завершить оплату на стороне сервера): stripe.com/docs/payments /. … Реальный вопрос: содержит ли stripe SDK для flutter интерфейс для обработки следующих действий, как это делает iOS?