Я реализую new version of Stripe (SCA-READY), version 12.8.2.
Все также работает.
Но мне нужно получить charge ID
после подтверждения PaymentIntent
.
ID
, который я получаю от моего server
(который пересылает stripe response
) после подтверждения PaymentIntent
.
Однако я не получаю это ID
, когда процессу нужны 3ds2 (или 3ds).
(следующие фрагменты Представьте только часть обвинений, если вам нужна полная JSON, спросите меня в комментарии)
Вот фрагмент ответа без аутентификации 3ds2
Тогда есть Фрагмент ответа, когда требуется аутентификация 3ds2:
"charges": {
"object": "list",
"data": [],
"has_more": false,
"total_count": 0,
"url": "/v1/charges?payment_intent=pi_1FxfoiHk0bG3YRQo1hU4c6f1"
},
Я не могу получить заряд без идентификатора этого, соответствующего полосе документации
Тогда я также нет атрибутов, которые соответствуют заряду в PaymentIntent
с stripe sdk
после обработки 3ds2, который я могу получить в callback
в activityResult
(срабатывает после аутентификации 3ds2 для обработки результата ):
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
if (requestCode == PaymentMethodsActivityStarter.REQUEST_CODE && data != null) {
val result = PaymentMethodsActivityStarter.Result.fromIntent(data)
val paymentMethod = result?.paymentMethod
adapter.renderCard(paymentMethod)
}
val isPaymentIntentResult = paymentServiceProvider.stripe.onPaymentResult(
requestCode, data,
object : ApiResultCallback<PaymentIntentResult> {
override fun onSuccess(result: PaymentIntentResult) {
adapter.processStripeIntent(result.intent)//The intent accessed here hasn't any charges (stuff like amount paymentMethod, but nothing about charges)
}
override fun onError(e: Exception) {
Toast.makeText(this@ClientMainActivity, e.message, Toast.LENGTH_LONG).show()
}
})
}
РЕДАКТИРОВАТЬ : Есть тело ответа с состоянием успешно:
{
"id": "pi_1FxzypHk0bG3YRQop47ZATBv",
"object": "payment_intent",
"amount": 500,
"canceled_at": null,
"cancellation_reason": null,
"capture_method": "automatic",
"client_secret": "secret",
"confirmation_method": "automatic",
"created": 1578334027,
"currency": "eur",
"description": null,
"last_payment_error": null,
"livemode": false,
"next_action": null,
"payment_method": "pm_1Fv1nxHk0bG3YRQoqldFvopb",
"payment_method_types": [
"card"
],
"receipt_email": null,
"setup_future_usage": null,
"shipping": null,
"source": null,
"status": "succeeded"
}