# Stripe Web Elements Create your own checkout flows with prebuilt UI components. [Stripe Elements](https://stripe.com/payments/elements) is a set of prebuilt UI components for building your web checkout flow. It’s available as a feature of [Stripe.js](https://docs.stripe.com/js.md), our foundational JavaScript library for building payment flows. Stripe.js tokenizes sensitive payment details within an Element without ever having them touch your server. - [Global payment methods](https://docs.stripe.com/payments/payment-methods/overview.md): Access to over 100 global payment methods, including wallets like [Apple Pay](https://docs.stripe.com/apple-pay.md). - [Link](https://docs.stripe.com/payments/link.md): Help your customers check out faster by letting them select a saved payment method at checkout instead of entering payment information. - [Saved payment methods](https://docs.stripe.com/payments/checkout/save-during-payment.md?payment-ui=embedded-components): Save, reuse, and manage cards and bank accounts with built-in features. - Compliance: Stripe provides a globally compliant interface and handles requirements for displaying mandates and consent notices to buyers. - Up-to-date forms: Localized forms with built-in error handling. Stripe keeps each payment method provider’s requirements up to date. - [Address collection](https://docs.stripe.com/payments/collect-addresses.md?payment-ui=embedded-components): Collect full or partial billing addresses with any payment method. - [Appearance customization](https://docs.stripe.com/elements/appearance-api.md): Customize the look and feel of Elements to match the design of your site. - Other features: Additional features like [CVC recollection](https://docs.stripe.com/payments/finalize-payments-on-the-server.md#enforce-cvc-recollection) and [control over which card brands you accept](https://docs.stripe.com/payments/customize-payment-methods.md#filter-card-brands). [Explore the demo](https://checkout.stripe.dev/elements) ## Get started If you don’t see your Element below, find more in the [Stripe.js API Reference](https://docs.stripe.com/js/element/other_element). [Payment Element](https://docs.stripe.com/payments/payment-element.md): Accept a payment with one or multiple payment methods securely, including cards. [Express Checkout Element](https://docs.stripe.com/elements/express-checkout-element.md): Display popular Wallets like Apple Pay, Google Pay, and PayPal. [Link Authentication Element](https://docs.stripe.com/payments/elements/link-authentication-element.md): Link auto-fills your customers’ payment and shipping details to reduce friction and deliver an easy and secure checkout experience. [Address Element](https://docs.stripe.com/elements/address-element.md): Collect address information and display Link saved addresses. [Payment Method Messaging Element](https://docs.stripe.com/elements/payment-method-messaging.md): Automatically inform customers about available Buy now, Pay later plans. [Currency Selector Element (Checkout Session API only)](https://docs.stripe.com/elements/currency-selector-element.md): Let customers pay in their local currency with Adaptive Pricing. [Tax ID Element](https://docs.stripe.com/elements/tax-id-element.md): Collect business tax IDs for invoices and VAT refunds. ## Compatible APIs Stripe offers two core payments APIs compatible with Elements that give you the flexibility to accept various types of payments from your customers. You can integrate these APIs into Stripe’s prebuilt payment interfaces. The APIs serve different use cases depending on how you choose to structure your checkout flow and how much control you require. For most use cases, we recommend using [Checkout Sessions](https://docs.stripe.com/api/checkout/sessions.md). - Use the [Checkout Sessions API](https://docs.stripe.com/api/checkout/sessions.md) to model your customer’s complete checkout flow, including the line items in their purchase, billing and shipping addresses, applicable tax rates, and coupons or discounts. The Checkout Session allows you to create subscriptions, calculate tax rates with Stripe Tax, and initiate payments using a single integration. Build a [checkout page with the Checkout Sessions API](https://docs.stripe.com/payments/quickstart-checkout-sessions.md). - Use the [Payment Intents API](https://docs.stripe.com/api/payment_intents.md) to model just the payments step with more granular control. Unlike the Checkout Sessions API, which requires line item details, you only pass in the final amount you want to charge. This is suitable for advanced payment flows where you want to manually compute the final amount. When using Payment Intents, you must build separate integrations with the Stripe Tax API if you want to use Stripe to calculate applicable taxes or with the Subscriptions API if you want to use Stripe to create subscriptions. Build an [advanced integration with the Payment Intents API](https://docs.stripe.com/payments/advanced.md). (See full diagram at https://docs.stripe.com/payments/elements)