Payments
This page explains how to accept payments as part of your booking process. At the moment we support integrations that use Stripe Elements and Stripe Checkout.
Stripe Elements
The following sections explain how to handle various payment-related booking scenarios with Stripe Elements.
No payment or credit card required
Client: Calls create booking
Server: Returns Success status and booking is made
Payment required without 3DS2
Client: Calls create booking
Server: Returns
PaymentRequiredstatusClient: Initialises Stripe using
StripePublishableKeyandStripeAccountIdsupplied in returned objectClient: Uses Stripe to generate a payment method
Client: Calls create booking, supplying
PaymentMethodIdreturned from StripeServer: Returns Success status and booking is made
Payment required with 3DS2
Client: Calls create booking
Server: Returns
PaymentRequiredstatusClient: Initialises Stripe using StripePublishableKey and StripeAccountId supplied in returned object
Client: Uses Stripe to generate a payment method
Client: Calls create booking, supplying
PaymentMethodIdreturned from StripeServer: Returns
StripeAuthenticationRequiredstatus andPaymentIntentSecretClient: Uses returned
PaymentIntentSecretwith Stripe to generate a payment intentClient: Calls create booking, supplying
PaymentMethodIdandPaymentIntentIdreturned from StripeServer: Returns
Successstatus and booking is made
Credit card required with and without 3DS2
Client: Calls create booking
Server: Returns
CreditCardRequiredstatus andSetupIntentClientSecretClient: Initialises Stripe using
StripePublishableKeyandStripeAccountIdsupplied in returned objectClient: Uses Stripe to generate a
PaymentMethodIdClient: Calls create booking, supplying
PaymentMethodIdreturned from StripeServer: Returns
Successstatus and booking is made
Stripe Checkout
The following sections explain how to handle various payment-related booking scenarios with Stripe Checkout.
Payment / Credit Card required (with / without 3DS2)
Client: Calls create booking supplying both a
StripeCheckoutSuccessUrland aStripeCheckoutCancelUrlServer: Returns either
PaymentRequiredorCreditCardRequiredstatusClient: Initialises Stripe using
StripePublishableKeyandStripeAccountIdsupplied in returned objectClient: Redirect to Stripe checkout to capture payment or card details, using
StripeCheckoutSessionIdsupplied in returned object. If 3DS2 is required it is performed automatically by Stripe on this pageClient: Calls create booking supplying the
StripeCheckoutSessionId. This is appended to the successUrl via a query parameterServer: Returns Success status and booking is made
Further details on the SCA regulations and Stripe's implementation can be found on the Stripe website.
Last updated
Was this helpful?
