Merge beta into release #21

Merged
didirus merged 276 commits from beta into release 2025-11-01 13:04:25 +00:00
Showing only changes of commit 9315af9b20 - Show all commits

View File

@@ -214,6 +214,8 @@ pub async fn create_or_update_payment_intent(
)
.await?;
let mut intent_uses_confirmation_token = false;
let payment_method = match &payment_session {
PaymentSession::Interactive {
payment_request_type: PaymentRequestType::PaymentMethod { id },
@@ -232,6 +234,8 @@ pub async fn create_or_update_payment_intent(
payment_request_type:
PaymentRequestType::ConfirmationToken { token },
} => {
intent_uses_confirmation_token = true;
#[derive(Deserialize)]
struct ConfirmationToken {
payment_method_preview: Option<PaymentMethod>,
@@ -544,10 +548,7 @@ pub async fn create_or_update_payment_intent(
//
// The PaymentIntent will be confirmed using the confirmation token
// by the client.
if let PaymentSession::Interactive {
payment_request_type: PaymentRequestType::PaymentMethod { .. },
} = &payment_session
{
if !intent_uses_confirmation_token {
update_payment_intent.payment_method =
Some(payment_method.id.clone());
}
@@ -575,10 +576,7 @@ pub async fn create_or_update_payment_intent(
intent.customer = Some(customer_id);
intent.metadata = Some(metadata);
intent.receipt_email = user.email.as_deref();
if let PaymentSession::Interactive {
payment_request_type: PaymentRequestType::PaymentMethod { .. },
} = &payment_session
{
if !intent_uses_confirmation_token {
intent.payment_method = Some(payment_method.id.clone());
}