Pular para o conteúdo
Criar conta ou Entrar
O logotipo da documentação da Stripe
/
Pergunte à IA
Criar contaLogin
Comece já
Pagamentos
Receita
Plataformas e marketplaces
Gestão de valores
Recursos para desenvolvedores
APIs e SDKsAjuda
Visão geral
Billing
Visão geralSobre as APIs do Billing
Assinaturas
    Visão geral
    Como funcionam as assinaturas
    Comece já
    Início rápido
    Planejar uma integração
    Criar uma integração
    Casos de uso
    Sobre assinaturas
    Ativar o modo de faturamento
    Configurar eventos da assinatura
    Direitos
    Faturas de assinatura
    Cronogramas de assinatura
    Modelos de preço recorrente
    Configurar assinaturas
    Configurar métodos de cobrança
    Incorporar uma tabela de preços
    Defina ciclos de faturamento
    Gerenciar assinaturas
    Migrar assinaturas para a Stripe
    Definir quantidade de produtos ou assinaturas
    Assinaturas de intervalo misto
    Inicie assinaturas com data passada
    Definir períodos de avaliação
    Lidar com assinaturas com pagamento diferido
    Aplicar cupons
    Modifique assinaturas
    Gerenciar formas de pagamento de assinatura
      Débito automático ACH
      Amazon Pay
      Débito automático Bacs no Reino Unido
      Transferência bancária
      Débito automático BECS na Austrália
      Cash App Pay
      Klarna
      PayPal
      Revolut Pay
      Cartões coreanos
      Kakao Pay
      Naver Pay
      Débito pré-autorizado no Canadá
      Débito automático SEPA na UE
      Stablecoins
      iDEAL com débito automático SEPA
      Bancontact com débito automático SEPA
    Análises
    Gerenciar assinaturas no iOS
Invoicing
Cobrança por uso
Cotações
Gerenciamento de clientes
Cobrança com outros produtos
Recuperação de receitas
Automações
Teste sua integração
Tributos
Visão geral
Usar Stripe Tax
Gerenciar conformidade
Relatórios
Visão geral
Selecionar um relatório
Configurar relatórios
Relatórios para várias contas
API de relatórios
Reconhecimento de receitas
Dados
Visão geral
Consultar os dados da empresa
Sigma
Data Pipeline
Importar dados externos
Estados Unidos
Português (Brasil)
Página inicialReceitaSubscriptionsManage subscription payment methods

Configure uma assinatura com o débito automático SEPA

Saiba como criar e cobrar uma assinatura com o débito automático SEPA.

Exemplo da Stripe

Confira o exemplo no GitHub ou explore a demonstração.

Uma sessão do Checkout representa os detalhes da intenção do cliente de fazer a compra. Você cria uma sessão do Checkout quando seu cliente quer iniciar uma assinatura. Após redirecionar seu cliente para uma sessão do Checkout, a Stripe apresenta um formulário de pagamento onde seu cliente pode concluir a compra. Assim que o cliente tiver finalizado uma compra, ele é redirecionado de volta para o seu site.

Configurar a Stripe
Lado do servidor

Instale o cliente Stripe de sua escolha:

Command Line
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
# Available as a gem sudo gem install stripe
Gemfile
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
# If you use bundler, you can add this line to your Gemfile gem 'stripe'

Instale a Stripe CLI (opcional). A CLI fornece testes de webhook e você pode executá-la para criar produtos e preços.

Command Line
homebrew
Instalar da fonte
No results
# Install Homebrew to run this command: https://brew.sh/ brew install stripe/stripe-cli/stripe # Connect the CLI to your dashboard stripe login

Para obter opções de instalação adicionais, consulte Comece a usar o Stripe CLI.

Criar o modelo de preços
Dashboard
Stripe CLI

Crie seus produtos e preços usando o Dashboard ou a Stripe CLI.

Este exemplo usa um serviço de preço fixo com duas opções diferentes de nível de serviço: Básico e Premium. Para cada opção de nível de serviço, você precisa criar um produto e um preço recorrente. (Se quiser adicionar uma cobrança avulsa para um item como tarifa de configuração, crie um terceiro produto com um preço avulso. Para simplificar, este exemplo não inclui uma cobrança avulsa.)

Neste exemplo, o faturamento de cada produto é mensal. O produto básico custa 5 EUR e o produto Premium custa 15 EUR.

Acesse a página Adicionar um produto e crie dois produtos. Adicione um preço para cada produto, cada um com um período de faturamento mensal recorrente:

  • Produto premium: serviço premium com recursos extras

    • Preço: Tarifa fixa | 15 EUR
  • Produto básico: serviço básico com recursos mínimos

    • Preço: Tarifa fixa | 5 EUR

Depois de criar os preços, registre o ID deles para utilizá-los em outras etapas. Os IDs de preço têm esta estrutura: price_G0FvDp6vZvdwRZ.

Quando tudo estiver pronto, use o botão Copiar para modo de produção, no canto superior direito, para clonar seu produto de uma área restrita para o modo de produção.

Para outros modelos de preços, consulte os exemplos de faturamento.

Criar uma sessão do Checkout
Do lado do cliente
Lado do servidor

Adicione um botão de checkout ao seu site para chamar um endpoint do lado do servidor e criar uma Sessão do Checkout.

index.html
<html> <head> <title>Checkout</title> </head> <body> <form action="/create-checkout-session" method="POST"> <button type="submit">Checkout</button> </form> </body> </html>

Parâmetros da sessão do Checkout

Consulte Criar uma sessão do Checkout para ver a lista completa de parâmetros que podem ser usados.

Crie uma sessão do Checkout com o ID de um Preço existente. Certifique-se de que o modo esteja definido como subscription e você passe pelo menos um preço recorrente. Você pode adicionar preços avulsos além de preços recorrentes. Depois de criar a sessão do Checkout, redirecione o cliente para o URL retornado na resposta.

Command Line
cURL
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d "payment_method_types[]"="sepa_debit" \ -d "line_items[][price]"=
"{{PRICE_ID}}"
\ -d "line_items[][quantity]"=1 \ -d "mode"="subscription" \ -d "success_url"="https://example.com/success?session_id={CHECKOUT_SESSION_ID}" \ -d "cancel_url"="https://example.com/cancel" \

Quando o cliente finaliza um pagamento, é redirecionado para o success_url, uma página no seu site que informa ao cliente que o pagamento foi bem-sucedido. Disponibilize o ID da sessão na página de sucesso incluindo a variável de modelo {CHECKOUT_SESSION_ID} no success_url como no exemplo acima.

Quando o cliente clica no seu logotipo em uma sessão do Checkout sem concluir o pagamento, o Checkout redireciona o cliente de volta ao site, navegando para o cancel_url. Normalmente, essa é a página no seu site que o cliente visualizou antes de ser redirecionado para o Checkout.

As Sessões do Checkout expiram 24 horas após a criação por padrão.

No Dashboard, ative as formas de pagamento que deseja aceitar de seus clientes. O checkout aceita várias formas de pagamento.

Cuidado

Não dependa apenas do redirecionamento ao success_url para detectar a iniciação de um pagamento, pois:

  • Usuários mal-intencionados podem acessar diretamente o success_url sem pagar e acessar seus produtos ou serviços.
  • Os clientes podem não acessar o success_url após o pagamento. Eles podem fechar a guia do navegador antes do redirecionamento.

Confirmar a finalização do pagamento

Quando o cliente conclui um pagamento, a Stripe o redireciona para o URL que você especificou no parâmetro success_url. Normalmente, é uma página no site que informa seu cliente de que o pagamento foi bem-sucedido.

No entanto, SEPA Direct Debit é uma forma de pagamento com notificação posterior, o que significa que os fundos não ficam imediatamente disponíveis. Por isso, adie a execução do pedido até que os fundos estejam disponíveis. Após o êxito do pagamento, o status subjacente do PaymentIntent muda de processing para succeeded.

Você pode confirmar a realização do pagamento de várias maneiras:

Os pagamentos bem-sucedidos aparecem na lista de pagamentos do Dashboard. Quando você clica em um pagamento, a página de detalhes do pagamento é exibida. A seção Resumo do checkout contém dados de cobrança e a lista de itens comprados, que você pode usar para fazer a execução manual do pedido.

Observação

A Stripe ajuda você a acompanhar a entrada de pagamentos com o envio de notificações por e-mail sempre que um cliente efetua um. Use o Dashboard para configurar notificações por e-mail.

Testar a integração

Você pode testar a integração usando os IBANs abaixo. Os dados da forma de pagamento são coletados para todos os IBANs, mas cada um deles terá um comportamento diferente na cobrança.

IBANs de teste
Número da contaDescrição
DE89370400440532013000O status do PaymentIntent muda de processing para succeeded.
DE08370400440532013003O status do PaymentIntent muda de processing para succeeded após pelo menos três minutos.
DE62370400440532013001O status do PaymentIntent muda de processing para requires_payment_method.
DE78370400440532013004O status do PaymentIntent muda de processing para requires_payment_method após pelo menos três minutos.
DE35370400440532013002O status do PaymentIntent muda de processing para succeeded, mas uma contestação é imediatamente criada.
DE65370400440000343434O pagamento falha com um código de falha charge_exceeds_source_limit devido ao valor do pagamento fazer com que a conta exceda o limite de volume de pagamentos semanal.
DE27370400440000121212O pagamento falha com um código de falha charge_exceeds_weekly_limit quando o valor do pagamento excedeu o limite de volume de transações da conta.
DE65370400440002222227O pagamento falha com um código de falha insufficient_funds.

OpcionalAdicionar uma tarifa de configuração avulsa
Lado do servidor

Além de passar os preços recorrentes, é possível adicionar preços avulsos no modo subscription. Eles só são incluídos na fatura inicial criada pela assinatura. Isso é útil para adicionar tarifas de configuração ou tarifas avulsas associadas com uma assinatura. É possível adicionar um preço avulso a um produto existente ou criar um produto com um novo preço.

Command Line
curl
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d "payment_method_types[]"="sepa_debit" \ -d "line_items[0][price]"="{{RECURRING_PRICE_ID}}" \ -d "line_items[0][quantity]"=1 \ -d "line_items[1][price]"="{{ONE_TIME_PRICE_ID}}" \ -d "line_items[1][quantity]"=1 \ -d "mode"="subscription" \ -d "success_url"="https://example.com/success?session_id={CHECKOUT_SESSION_ID}" \ -d "cancel_url"="https://example.com/cancel"

OpcionalCriar preços e produtos em linha
Lado do servidor

Além de passar IDs de preços existentes, você pode criar preços durante a criação da sessão do Checkout. Primeiro, defina um Produto e crie uma sessão do Checkout usando o ID do produto. Não se esqueça de passar price_data com os dados de unit_amount, currency, e recurring:

Command Line
curl
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d "payment_method_types[]"=sepa_debit \ -d line_items[0][price_data][unit_amount]=5000 \ -d line_items[0][price_data][currency]=eur \ -d line_items[0][price_data][product]=
"{{PRODUCT_ID}}"
\ -d line_items[0][price_data][recurring][interval]=month \ -d line_items[0][quantity]=1 \ -d mode=subscription \ -d success_url="https://example.com/success?session_id={CHECKOUT_SESSION_ID}" \ -d cancel_url="https://example.com/cancel"

Se você também precisa criar produtos em linha, use product_data:

Command Line
curl
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d "payment_method_types[]"=sepa_debit \ -d "line_items[][price_data][currency]"=eur \ -d "line_items[][price_data][product_data][name]"=T-shirt \ -d "line_items[][price_data][unit_amount]"=2000 \ -d "line_items[][quantity]"=1 \ -d "mode"="subscription" \ -d success_url="https://example.com/success?session_id={CHECKOUT_SESSION_ID}" \ -d cancel_url="https://example.com/cancel"

OpcionalClientes existentes
Lado do servidor

Se você já tiver criado um objeto Customer para representar um cliente, use o argumento cliente para passar o ID desse cliente ao criar uma sessão do Checkout. Isso garante que todos os objetos criados durante a sessão sejam associados ao objeto Customer correto.

Quando você passa um ID de cliente, a Stripe também usa o e-mail armazenado no objeto Customer para preencher o campo de e-mail na página de checkout. Se o cliente trocar o e-mail na página de checkout, este será atualizado no objeto Customer quando o pagamento for concluído.

Command Line
curl
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d "customer"=
"{{CUSTOMER_ID}}"
-d "payment_method_types[]"="sepa_debit" \ -d "line_items[][price]"=
"{{PRICE_ID}}"
\ -d "line_items[][quantity]"=1 \ -d "mode"="subscription" \ -d "success_url"="https://example.com/success" \ -d "cancel_url"="https://example.com/cancel"

OpcionalPreencher dados do cliente
Lado do servidor

Se você já coletou o e-mail do cliente e quer preenchê-lo antecipadamente na sessão de checkout, passe customer_email ao criar uma sessão de checkout.

Command Line
curl
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d customer_email="customer@example.com" \ -d "payment_method_types[]"=sepa_debit \ -d "line_items[][price]"=
"{{PRICE_ID}}"
\ -d "line_items[][quantity]"=1 \ -d mode=subscription \ -d success_url="https://example.com/success" \ -d cancel_url="https://example.com/cancel"

OpcionalGerenciar períodos de avaliação
Lado do servidor

É possível usar trial_end ou trial_period_days na sessão do Checkout para especificar a duração do período de avaliação. Neste exemplo, usamos trial_period_days para criar uma sessão do Checkout para uma assinatura com um período de avaliação de 30 dias.

Command Line
curl
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d "payment_method_types[]"=sepa_debit \ -d "line_items[][price]"=
"{{PRICE_ID}}"
\ -d "line_items[][quantity]"=1 \ -d "subscription_data[trial_period_days]"=30 \ -d mode=subscription \ -d success_url="https://example.com/success?session_id={CHECKOUT_SESSION_ID}" \ -d cancel_url="https://example.com/cancel"

O Checkout exibe as seguintes informações automaticamente para assinaturas com períodos de avaliação:

  • Período de avaliação
  • Frequência e valor das cobranças após o vencimento da avaliação

Veja mais informações sobre requisitos de conformidade no guia do Billing ou do suporte.

OpcionalAlíquotas
Lado do servidor

Você pode especificar alíquotas de impostos (sobre vendas, IVA, GST e outros) nas sessões de checkout para aplicar impostos às assinaturas.

  • Use alíquotas fixas quando você souber qual a alíquota exata que deve ser cobrada dos clientes antes do início do checkout (por exemplo, você vende apenas para clientes no Reino Unido e sempre cobra 20% de IVA).
  • Com a API Prices, você pode usar alíquotas dinâmicas quando precisar de mais dados do cliente (por exemplo, endereço de cobrança ou entrega) para determinar a alíquota a ser cobrada. As alíquotas dinâmicas podem ser atribuídas a regiões diferentes (por exemplo, uma alíquota de 20% de IVA para clientes no Reino Unido e uma alíquota de 7,25% sobre vendas para clientes na Califórnia). A Stripe tenta associar o local do cliente a uma dessas alíquotas.

Defina subscription_data.default_tax_rates para aplicar uma alíquota padrão a uma assinatura iniciada com o Checkout.

Command Line
curl
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d "payment_method_types[]"=sepa_debit \ -d "line_items[][price]"=
"{{PRICE_ID}}"
\ -d "line_items[][quantity]"=1 \ -d "subscription_data[default_tax_rates][]"="{{TAX_RATE_ID}}" \ -d mode=subscription \ -d success_url="https://example.com/success" \ -d cancel_url="https://example.com/cancel"

Você também pode especificar line_items.tax_rates ou subscription_data.items.tax_rates para aplicar alíquotas de imposto a planos ou itens de linha de fatura específicos.

Command Line
curl
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d "payment_method_types[]"="sepa_debit" \ -d "line_items[][price]"=
"{{PRICE_ID}}"
\ -d "line_items[][quantity]"=1 \ -d "line_items[][tax_rates][0]"="{{TAX_RATE_ID}}" \ -d "mode"="subscription" \ -d "success_url"="https://example.com/success" \ -d "cancel_url"="https://example.com/cancel"

Você pode usar as exportações de dados da Stripe para preencher as declarações periódicas necessárias para o repasse. Acesse Declarações e remessas fiscais para obter mais informações.

OpcionalAdicionar cupons
Lado do servidor

Você pode aplicar cupons a assinaturas em uma sessão do Checkout configurando descontos. Este cupom substitui qualquer cupom no cliente. Se você estiver criando uma assinatura com um cliente existente, qualquer cupom associado ao cliente é aplicado às faturas da assinatura.

Command Line
curl
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d "payment_method_types[]"=sepa_debit \ -d "line_items[][price]"=
"{{PRICE_ID}}"
\ -d "line_items[][quantity]"=1 \ -d "discounts[][coupon]"="{{COUPON_ID}}" \ -d "mode"="subscription" \ -d success_url="https://example.com/success" \ -d cancel_url="https://example.com/cancel"

Adicionar códigos de promoção voltados para o cliente

Também é possível ativar códigos promocionais resgatáveis pelo usuário utilizando o parâmetro allow_promotion_codes em sessões do Checkout. Com allow_promotion_codes ativado em uma sessão do Checkout, o Checkout inclui uma caixa de resgate de código de promoção para uso pelos clientes. Crie seus cupons e códigos promocionais no Dashboard ou na API para que seus clientes possam resgatá-los no Checkout.

Command Line
curl
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d "payment_method_types[]"="sepa_debit" \ -d "line_items[0][price_data][unit_amount]"=2000 \ -d "line_items[0][price_data][currency]"="eur" \ -d "line_items[0][price_data][product]=
{{PRODUCT_ID}}
"
\ -d "line_items[0][price_data][recurring][interval]=month" \ -d "line_items[0][quantity]"=1 \ -d "allow_promotion_codes"="true" \ -d "mode"="subscription" \ -d "success_url"="https://example.com/success" \ -d "cancel_url"="https://example.com/cancel"

Veja também

  • Personalizar sua integração
  • Gerenciar assinaturas com o portal de clientes
Esta página foi útil?
SimNão
  • Precisa de ajuda? Fale com o suporte.
  • Confira nosso changelog.
  • Dúvidas? Fale com a equipe de vendas.
  • LLM? Read llms.txt.
  • Powered by Markdoc