Stripe обрабатывает 3ds-платежи на AndroidAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Stripe обрабатывает 3ds-платежи на Android

Сообщение Anonymous »

У меня возникла следующая проблема при обработке платежа с помощью карты 3ds.
Мое приложение использует Jetpack Compose
У меня есть экран оплаты. Поэтому я создаю намерение платежа с помощью новой или сохраненной карты. Затем я проверяю, нужен ли мне 3ds, и запускаю 3ds-обработку следующим образом:

Код: Выделить всё

@Composable
fun ThreeDSScreen(
publishableKey: String,
secret: String,
onSuccess: () -> Unit,
onCancel: () -> Unit,
onFail: () -> Unit
) {
val paymentLauncher = rememberPaymentLauncher(
publishableKey = publishableKey,
stripeAccountId = null,
callback = PaymentResultCallback(
onSuccess = onSuccess,
onCancel = onCancel,
onFail = onFail
)
)
val needLaunch = remember { mutableStateOf(true) }

LaunchedEffect(secret) {
if (needLaunch.value) {
needLaunch.value = false
delay(200)
paymentLauncher.confirm(
ConfirmPaymentIntentParams.create(
clientSecret = secret,
paymentMethodType = PaymentMethod.Type.CardPresent
)
)
}
}
}

class PaymentResultCallback(
private val onSuccess: () -> Unit,
private val onCancel: () -> Unit,
private val onFail: () -> Unit
) : PaymentLauncher.PaymentResultCallback {
override fun onPaymentResult(paymentResult: PaymentResult) {
when (paymentResult) {
is PaymentResult.Completed -> { onSuccess() }
is PaymentResult.Canceled -> { onCancel() }
is PaymentResult.Failed -> { onFail() }
}
}
}
Я также сохраняю секрет клиента в зашифрованных общих настройках.
И это работает нормально, независимо от того, делает ли пользователь ошибку, отменяет или подтверждает это.
Но давайте представим, что я остановил приложение . И я хочу, чтобы в моем приложении при запуске проверялось, существует ли ожидающее намерение. Поэтому я проверяю это.
И если я вижу ожидающее намерение, я пытаюсь подтвердить его таким же способом. Передача секретного кода клиента этому составному объекту.
Я использую тестовую карту VISA Stripe с 3ds для проверки.
Итак, я запускаю эту функцию и вижу, что запускается тестовый экран Stripe 3ds, и сразу после этого Stripe ведет себя так, как будто пользователь нажал «Не удалось».
Что я делаю не так? Я проверил, что мой секретный ключ в порядке.

Подробнее здесь: https://stackoverflow.com/questions/792 ... on-android
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Stripe обрабатывает 3ds-платежи на Android
    Anonymous » » в форуме Android
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Stripe обрабатывает 3ds-платежи на Android
    Anonymous » » в форуме Android
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Настройка аутентификации в Stripe для пользователей с картами 3DS
    Гость » » в форуме Php
    0 Ответы
    10 Просмотры
    Последнее сообщение Гость
  • Ваша учетная запись Stripe в настоящее время не поддерживает платежи Connect через PayPal.
    Anonymous » » в форуме Php
    0 Ответы
    24 Просмотры
    Последнее сообщение Anonymous
  • Ваша учетная запись Stripe в настоящее время не поддерживает платежи Connect через PayPal [закрыто]
    Anonymous » » в форуме Php
    0 Ответы
    18 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Android»