Express Checkout Element
Mostre vários botões de pagamento de um clique com um único componente.

O Express Checkout Element oferece uma única integração para aceitar pagamentos por meio de botões de pagamento com um clique. As formas de pagamento aceitas incluem Link, Apple Pay, Google Pay, PayPal, e Amazon Pay.
Com essa integração, você pode:
- Classifique botões de pagamento dinamicamente com base na localização do cliente.
- Adicione botões de pagamento sem nenhuma alteração de frontend.
- Integre o Elements perfeitamente reutilizando uma instância existente do Elements para economizar tempo.
Klarna on the Express Checkout Element
Klarna on the Express Checkout Element is currently in private preview with limited availability. Reach out here to request access.
Experimente a demonstração
Na demonstração a seguir, você pode alternar algumas das opções pré-configuradas para alterar a cor de fundo, o layout, o tamanho e a coleta do endereço de entrega da interface de pagamento. A demonstração exibe o Google Pay e o Apple Pay apenas nas plataformas disponíveis. Os botões do Payment Method são exibidos somente nos países que os aceitam.
Se você não vir a demonstração, tente visualizar esta página em um navegador compatível.
Opção | Descrição |
---|---|
Merchant country | Set this using the publishable key that you use to initialize Stripe.js. To change the country, you must unmount the Express Checkout Element, update the publishable key, then re-mount the Express Checkout Element. |
Background color | Set colors using the Elements Appearance API. Button themes are inherited from the Appearance API but you can also define them directly when you create the Element. |
Desktop and mobile size | Use the dropdown to set the max pixel width of the parent element that the Express Checkout Element is mounted to. You can set it to 750px (Desktop) or 320px (Mobile). |
Max columns and max rows | Set these values using the layout parameter when you Create the Express Checkout Element. |
Overflow menu | Set this using the layout parameter when you Create the Express Checkout Element. |
Collect shipping address | To collect shipping information, you must pass options when creating the Express Checkout Element. Learn more about collecting customer details and displaying line items. |
Começar com um guia
Criar um Checkout Express Element
This code creates an elements group with an Express Checkout Element and mounts it to the DOM.
const appearance = { /* appearance */ } const options = { /* options */ } const elements = stripe.elements({ mode: 'payment', amount: 1099, currency: 'usd', appearance, }) const expressCheckoutElement = elements.create('expressCheckout', options) expressCheckoutElement.mount('#express-checkout-element')
Observação
O Express Checkout Element redimensiona dinamicamente os botões de formas de pagamento para preencher o espaço disponível, mas os botões individuais podem ter larguras mínimas diferentes dependendo da forma de pagamento. Não se esqueça de testar em tamanhos de tela diferentes, especialmente se estiver montando o Express Checkout Element em um contêiner restrito.
Formas de pagamento
O Express Checkout Element apresenta formas de pagamento de um clique que são ativas, aceitas e configuradas.
- Algumas formas de pagamento exigem ativação no Dashboard.
- As formas de pagamento só estão disponíveis quando o cliente usa um navegador aceito e paga em uma moeda aceita.
- Algumas formas de pagamento exigem ações de configuração por parte do cliente. Por exemplo, um cliente não verá o botão do Google Pay se não tiver o Google Pay configurado.
- Registre seu domínio no seu ambiente de testes e no modo de produção.
O elemento classifica as formas de pagamento por relevância para seu cliente.
Para controlar esses comportamentos, você pode personalizar as formas de pagamento.
Navegadores aceitos
Determinadas formas de pagamento funcionam com navegadores específicos.
Apple Pay | Google Pay | Link | PayPal | Amazon Pay | |
---|---|---|---|---|---|
Chrome1 | |||||
Edge | |||||
Firefox | |||||
Opera | |||||
Safari | 2 | ||||
Chrome no iOS 16 ou mais | |||||
Firefox no iOS 16+ | |||||
Edge no iOS 16+ |
1Outros navegadores chromium podem ser aceitos. Para obter mais informações, consulte navegadores aceitos.
2Quando usar um iframe, sua origem precisa corresponder à origem de nível superior (exceto Safari 17+ quando especificar o atributo allow="payment"
). Duas páginas têm a mesma origem se o protocolo, host (nome completo do domínio) e porta (se especificada) forem os mesmos para ambas as páginas.
Layout
Por padrão, quando o Express Checkout Element exibe vários botões, ele organiza os botões em uma grade com base no espaço disponível e exibe um menu de navegação, se necessário.
Você pode substituir esse padrão e especificar um layout de grade por conta própria com a opção layout.
Texto
Você pode controlar o texto de um botão selecionando um buttonType. Cada carteira oferece seus próprios tipos.
Este exemplo de código inclui uma chamada para ação “Compre” ou “Compre agora” para botões compatíveis. Em seguida, especifica o local de
para obter seus equivalentes em alemão.
const expressCheckoutOptions = { buttonType: { applePay: 'buy', googlePay: 'buy', paypal: 'buynow', klarna: 'pay', } } const elements = stripe.elements({ locale: 'de',
Aparência
Não é possível personalizar totalmente a aparência dos botões do Express Checkout Element porque cada forma de pagamento define seu próprio logotipo e cores da marca. Você pode personalizar as seguintes opções:
- Altura do botão
- Raio da borda usando variáveis com a API Appearance
- Temas do botão
Observação
O botão Apple Pay é redimensionado automaticamente quando o raio de borda aumenta para além de um determinado limite. Se estiver modificando o raio de borda padrão, teste-o com todas as formas de pagamento ativas.
Este exemplo de código configura um grupo de elementos com um tema claro e um raio de borda de 36 pixels, cria botões com 50 pixels de altura e substitui o tema para usar a versão com contorno branco do botão Apple Pay .
const appearance = { theme: 'stripe', variables: { borderRadius: '36px', } } const expressCheckoutOptions = { buttonHeight: 50, buttonTheme: {
Aceitamos os seguintes temas:
Personalizar formas de pagamento
Você não pode especificar quais formas de pagamento exibir. Por exemplo, não é possível forçar a exibição de um botão do Google Pay se o dispositivo do cliente não for compatível com o Google Pay.
No entanto, você pode personalizar o comportamento da forma de pagamento de várias maneiras, como:
- Você pode ativar ou desativar formas de pagamento no Dashboard.
- Você pode sobrepor a lógica padrão da Stripe de classificação das formas de pagamento por relevância. Use a opção paymentMethodOrder para definir seu pedido preferencial.
- Se houver pouco espaço no layout, formas de pagamento de baixa relevância podem aparecer em um menu de navegação. Personalize quando o menu aparece usando a opção layout.
- Para evitar que o Apple Pay ou o Google Pay apareçam, defina paymentMethods.applePay ou paymentMethods.googlePay como
never
. - Para permitir que o Apple Pay ou o Google Pay apareçam quando não estiverem configurados, defina paymentMethods.applePay ou paymentMethods.googlePay como
always
. A opção não será apresentada em plataformas incompatíveis ou quando o pagamento for em uma moeda não aceita.