Pular para o conteúdo
Criar conta
ou
Entrar
O logotipo da documentação da Stripe
/
Pergunte à IA
Criar conta
Login
Comece já
Pagamentos
Receita
Plataformas e marketplaces
Gestão de valores
Recursos para desenvolvedores
Visão geral
Sobre os pagamentos da Stripe
Atualize sua integração
Análise de pagamentos
Pagamentos online
Visão geralEncontre seu caso de usoUsar o Managed Payments
Usar Payment Links
Usar uma página de checkout predefinida
Criar uma integração personalizada com o Elements
    Visão geral
    Comparar as sessões de checkout e Payment Intents
    Guias de início rápido
    Crie uma integração avançada
    Personalizar a aparência
    Gerenciar formas de pagamento
    Coletar informações adicionais
    Crie uma integração de assinaturas
    Atualizações dinâmicas
    Adicione descontos
    Recolher impostos nos seus pagamentos
    Resgatar créditos
    Permita que os clientes paguem na moeda local
    Salvar e recuperar formas de pagamento do cliente
      Salvar a forma de pagamento utilizada em um pagamento
      Salvar uma forma de pagamento sem fazer pagamento
    Enviar recibos e faturas pagas
    Aprovar manualmente pagamentos no servidor
    Autorize e capture um pagamento separadamente
    Elements com changelog beta da API Checkout Sessions
Crie uma integração no aplicativo
Formas de pagamento
Adicionar formas de pagamento
Gerenciar formas de pagamento
Checkout mais rápido com o Link
Interfaces de pagamento
Payment Links
Checkout
Web Elements
Pagamentos no aplicativo
Cenários de pagamento
Gerenciar várias moedas
Fluxos de pagamento personalizados
Aquisição flexível
Orquestração
Pagamentos presenciais
Terminal
Muito mais que pagamentos
Abra sua empresa
Cripto
Comércio agêntico
Financial Connections
Climate
Entenda as fraudes
Proteção contra fraudes do Radar
Gerenciar contestações
Verificar identidades
Página inicialPagamentosBuild a custom integration with ElementsSave and retrieve customer payment methods

Salvar a forma de pagamento de um cliente sem fazer pagamento

Saiba como salvar uma forma de pagamento e cobrá-la mais tarde.

A API Checkout Sessions em setup mode permite que você salve os detalhes de pagamento de um cliente sem um pagamento inicial. Isso é útil se você quiser fazer onboarding dos clientes agora, configurá-los para pagamentos e cobrá-los usando a API Payment Intents no futuro, quando estiverem offline.

Use esta integração para configurar pagamentos recorrentes ou criar pagamentos avulsos de valores a serem definidos mais tarde, talvez depois de o cliente receber seu serviço.

Transações com cartão presente

As transações com cartão presente, como , as que recolhem os dados do cartão por meio do Stripe Terminal, usam um processo diferente para salvar as formas de pagamento.

Conformidade

Você é responsável por cumprir todas as leis, regulamentos e regras da bandeira em vigor ao salvar os dados de pagamento de um cliente. Esses requisitos geralmente se aplicam quando você quer salvar a forma de pagamento do cliente para uso futuro, como exibir a forma de pagamento de um cliente para ele no fluxo de checkout para uma compra futura ou cobrá-lo quando não estiver usando seu site ou aplicativo. Adicione termos ao seu site ou aplicativo que definam como você planeja salvar os dados da forma de pagamento e permitir que os clientes aceitem.

Ao salvar uma forma de pagamento, você só pode usá-la para o uso específico incluído nos seus termos. Para cobrar uma forma de pagamento quando o cliente está offline e salvá-la como opção para compras futuras, não se esqueça de obter o consentimento do cliente para esse uso específico. Por exemplo, inclua a caixa de seleção “Salvar minha forma de pagamento para uso futuro” para coletar consentimento.

Para cobrar um cliente quando ele estiver off-line, certifique-se de que seus termos incluam o seguinte:

  • A concordância do cliente para que você inicie um pagamento ou uma série de pagamentos em nome dele para transações específicas.
  • O momento e a frequência previstos para os pagamentos (por exemplo, se são cobranças de parcelas agendadas, pagamentos de assinatura ou recargas não agendadas).
  • Como você determina o valor do pagamento.
  • Sua política de cancelamento, se a forma de pagamento for usada em um serviço de assinatura.

Não se esqueça de manter um registro por escrito da concordância do cliente com esses termos.

Observação

Se você precisar usar a confirmação manual do lado do servidor ou se sua integração exigir a apresentação de formas de pagamento separadamente, consulte nosso guia alternativo .

Configurar a Stripe
Lado do servidor

Primeiro, crie uma conta Stripe ou entre.

Use nossas bibliotecas oficiais para acessar a API da Stripe no seu aplicativo:

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'

Criar um cliente
Lado do servidor

Para configurar uma forma de pagamento para pagamentos futuros, você deve anexá-la a um Customer. Crie um objeto Customer quando seu cliente criar uma conta com sua empresa. Os objetos Customer permitem reutilizar formas de pagamento e rastrear vários pagamentos.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl -X POST https://api.stripe.com/v1/customers \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"

Usar o modo de configuração
Lado do servidor

Crie uma sessão de Checkout com mode=setup.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d mode=setup \ -d ui_mode=custom \ -d currency=usd

Anexe a forma de pagamento a um cliente
Lado do servidor

Se você não criou a Checkout Session com um cliente existente, use o ID do PaymentMethod para attach a forma de pagamento para um cliente.

Caso contrário, a forma de pagamento será automaticamente vinculada ao cliente que você forneceu ao criar a Checkout Session.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/payment_methods/
{{PAYMENT_METHOD_ID}}
/attach
\ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d customer=
{{CUSTOMER_ID}}

Recuperar a forma de pagamento
Lado do servidor

Depois que um cliente concluir com êxito sua sessão de Checkout, trate o Webhook checkout.session.completed. Recupere o objeto Session no Webhook e faça o seguinte:

  • Obtenha o valor da chave setup_intent, que é a ID do SetupIntent criada durante a Checkout Session.
  • Use a ID SetupIntent para recuperar o objeto SetupIntent. O objeto retornado contém um payment_method ID que você pode anexar a um cliente na próxima etapa.

Saiba mais sobre configuração de Webhooks.

Cobrar a forma de pagamento mais tarde
Lado do servidor

Depois de anexar o PaymentMethod a um cliente, você pode fazer um pagamento off-session usando um PaymentIntent:

  • Defina customer como o ID do cliente e payment_method como o ID da forma de pagamento.
  • Defina off_session para true para indicar que o cliente não está em seu fluxo de checkout durante uma tentativa de pagamento e não pode executar uma solicitação de autenticação feita por um parceiro, como um emissor de cartão, banco ou outra instituição de pagamento. Se, durante o seu fluxo de checkout, um parceiro solicitar autenticação, o Stripe Authentication solicita isenções usando informações do cliente de uma transação anterior on-session. Se as condições para isenção não forem atendidas, o PaymentIntent poderá resultar em um erro.
  • Defina o valor do PaymentIntent’s confirma a propriedade do PaymentIntent como true, o que faz com que a confirmação ocorra imediatamente quando você cria o PaymentIntent.
Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/payment_intents \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d amount=1099 \ -d currency=usd \ -d customer=
{{CUSTOMER_ID}}
\ -d payment_method=
{{PAYMENT_METHOD_ID}}
\ -d off_session=true \ -d confirm=true

Se uma tentativa de pagamento falhar, a solicitação também falhará com um código de status HTTP 402 e o status do PaymentIntent será requires_payment_method. Notifique o cliente para retornar ao seu aplicativo (por exemplo, enviando um e-mail ou uma notificação no aplicativo) e direcione o cliente para uma nova Checkout Session para selecionar outra forma de pagamento.

Command Line
cURL
Stripe CLI
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 "line_items[0][price_data][currency]"=usd \ -d "line_items[0][price_data][product_data][name]"=T-shirt \ -d "line_items[0][price_data][unit_amount]"=1099 \ -d "line_items[0][quantity]"=1 \ -d mode=payment \ -d ui_mode=custom \ --data-urlencode return_url="https://example.com/return"
Esta página foi útil?
SimNão
  • Precisa de ajuda? Fale com o suporte.
  • Participe do nosso programa de acesso antecipado.
  • Confira nosso changelog.
  • Dúvidas? Fale com a equipe de vendas.
  • LLM? Read llms.txt.
  • Powered by Markdoc