You can integrate Adyen's frontend libraries with different backend flows. Sessions flow is the default integration that we recommend and works for most merchants. Choose how you integrate depending on the use cases that you want to support.
Use the diagrams below to compare the Sessions flow, Advanced flow, and Sessions flow + additional methods:
Sessions flow: a single API request
Your server makes a single Checkout API request to the /sessions endpoint. Adyen sends payment data from our server to your front end. You can optionally implement additional frontend methods to support some additional use cases.
Advanced flow: three API requests
Your server makes three Checkout API requests: /paymentMethods, /payments, and /payments/details. Adyen sends payment data from our server to your backend server. This flow supports more use cases.
Supported use cases
|Description||Sessions flow||+ additional methods||Advanced flow|
|Make a payment with any available payment method.|
|Make a partial payment with a gift card and the rest with another payment method.|
|Confirm an additional action on your server.|
|Confirm a redirect on your server.|
|Update the payment amount before making a payment, for example, when the shopper updates their shopping cart.|
|Change the order of payment methods for an individual transaction.|
|Insert a separate page for the shopper to agree to terms and conditions before making a payment.|
|Implement checks on your server, like inventory checks, before making a payment.|
|Integration features||Sessions flow||+ additional methods||Advanced flow|
|Number of endpoint requests from your server||1||2 or 3||3|
|Handling redirects||Front end||Front end and back end||Front end and back end|
|Handling additional actions||Front end||Front end and back end||Front end and back end|