--- title: "Checkout components" description: "Use Adyen's prebuilt components to show a checkout page with various payment methods to your users." url: "https://docs.adyen.com/platforms/online-payments/checkout-components" source_url: "https://docs.adyen.com/platforms/online-payments/checkout-components.md" canonical: "https://docs.adyen.com/platforms/online-payments/checkout-components" last_modified: "2026-05-15T12:56:28+02:00" language: "en" --- # Checkout components Use Adyen's prebuilt components to show a checkout page with various payment methods to your users. Adyen offers several options for integrating online payments in your platform's user interface (UI). These options include: * **Web API only**: this integration requires you to implement multiple API calls and to build the checkout UI yourself. * **Web Hosted Checkout**: with this integration, the shopper is redirected to an Adyen-hosted page to make a payment. * **Web Drop-in**: this integration offers a prebuilt checkout UI, where you can customize the styling of the list of payment methods. * **Web Component**: this integration provides prebuilt components that enable you to create your checkout UI. You can add a component for each payment method you want to offer and customize how it appears in your UI. We recommend using the Web Component integration as it provides the convenience of prebuilt UI and the flexibility of customizing each payment method. This page explains how to create a checkout page in your platform's UI by using the Checkout components. Select a version of the Web Component integration and follow the integration steps. ## Web Components Use our customizable UI components ### Version Update ## Introducing Web v6 ### Improvements The Web v6 library introduces the following improvements: * Reduced bundle size through tree shaking * Enhanced design * Enhanced Typescript developer experience * Better alignment of express payment methods * Added support for 6 localizations * Support for Apple Pay Order tracking * Improve AVS checks for Google Pay and Apple Pay To upgrade your existing integration, see [Upgrade to Adyen Web v6](/online-payments/upgrade-your-integration/upgrade-to-web-v6) ## How it works For a Components integration, you must implement the following parts: * **Your payment server**: sends the API requests to get available payment methods, make a payment, and send additional payment details. * **Your client website**: shows the the Component UI where the shopper makes the payment. The Component uses the data from the API responses to handle the payment flow and additional actions on your client website. * **Your webhook server**: receives webhooks that include the outcome of each payment. ### Integration steps To integrate Components in your web application: 1. [Install an API library](#install-api-library) on your server. 2. [Create a session](#create-payment-session) from your server. 3. [Install the Adyen Web library](#install-adyen-web) on your front end. 4. [Create a DOM element](#create-container-element) for Components. 5. [Configure and create an instance of `AdyenCheckout`](#configure). 6. [Configure and create an instance of the Component](#create-instance). 7. [Handle redirects](#handle-the-redirect). 8. [Show the payment status](#inform-the-shopper) to your shopper. 9. [Update your order management system](#update-your-order-management-system). 10. [Test your integration and go live](#test-and-go-live). ### Payment flow The parts of your integration work together to complete the payment flow. The payment flow is the same for all payments: 1. The shopper goes to the checkout page. 2. Your server uses the shopper's country and currency information from your client to create a payment session. 3. Your client creates an instance of the Component using the session data from the server. 4. The Component collects the shopper's payment details, handles additional actions, and presents the payment result to the shopper. 5. Your webhook server receives the notification containing the payment outcome. ![](/user/pages/filters/sessions-flow-integration/web/5-12-0/02.how-it-works/sessions-components.svg?decoding=auto\&fetchpriority=auto) If you are integrating these parts separately, you can start at the corresponding part of this integration guide: [![](/user/pages/reuse/online-payments/how-it-works-parts/servers.svg?decoding=auto\&fetchpriority=auto)](/#install-api-library) [Payment server](/#install-api-library) [Go to the integration steps for your server.](/#install-api-library) [![](/user/pages/reuse/online-payments/how-it-works-parts/browser-developers.svg?decoding=auto\&fetchpriority=auto)](/#prepare-your-front-end) [Client website](/#prepare-your-front-end) [Go to the integration steps for your client website.](/#prepare-your-front-end) [![](/user/pages/reuse/online-payments/how-it-works-parts/event-code.svg?decoding=auto\&fetchpriority=auto)](/#update-your-order-management-system) [Webhook server](/#update-your-order-management-system) [Go to the integration steps for your webhook server.](/#update-your-order-management-system) ### Before You Begin ## Requirements Before you begin, take into account the following requirements, limitations, and preparations. | Requirement | Description | | ------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | **Integration type** | Use this information to build an online payments integration. | | **[Customer Area roles](/account/user-roles)** | Make sure that you have the following roles:- **Merchant admin role** - **Manage API credentials** | | **[Adyen API credentials](/development-resources/api-credentials)** | Make sure that you have created the following:- [API credential](/development-resources/api-credentials/#new-credential) - [API key](/development-resources/api-credentials/#generate-api-key) - [Client key](/development-resources/client-side-authentication/#get-your-client-key) | | **[Adyen API credential roles](/development-resources/api-credentials/roles/)** | Make sure that you have the [roles for payments](/development-resources/api-credentials/roles/#roles-for-payments) that are assigned by default. | | **[Webhooks](/development-resources/webhooks)** | Subscribe to the following webhooks:- Standard webhook with [default event codes](/development-resources/webhooks/webhook-types/#default-event-codes) | | **Limitations** | Make sure that your integration follows our recommended best practices:- **[\