# A API Setup Intents

Saiba mais sobre a API Setup Intents para salvar formas de pagamento.

Use a *API Setup Intents* (The Setup Intents API lets you build dynamic flows for collecting payment method details for future payments. It tracks the lifecycle of a payment setup flow and can trigger additional authentication steps if required by law or by the payment method) para configurar uma forma de pagamento para pagamentos futuros. O funcionamento é similar ao de um pagamento, mas não se cria uma cobrança. [Configure já uma forma de pagamento para pagamentos futuros](https://docs.stripe.com/payments/save-and-reuse.md).

O objetivo é salvar e preparar as credenciais de pagamento para pagamentos futuros, configurando a forma de pagamento corretamente para qualquer situação. Ao configurar um cartão, por exemplo, pode ser preciso autenticar o cliente ou verificar a validade do cartão no banco do cliente. A Stripe atualiza o objeto `SetupIntent` durante esse processo.

## Salvar e reutilizar formas de pagamento

A API Setup Intents é útil para empresas que aceitam clientes mas não cobram imediatamente:

- Uma empresa de aluguel de veículos que coleta dados de forma de pagamento antes de o cliente alugar o carro e cobra o cartão após o término do período de aluguel
- Um site de crowdfunding que coleta detalhes do cartão para ser cobrado posteriormente, somente se a campanha atingir um determinado valor
- Uma empresa de serviços públicos que cobra um valor diferente a cada mês, com base no uso, mas coleta detalhes de pagamento SEPA antes do pagamento do primeiro mês

> Você também pode configurar formas de pagamento para uso futuro quando for cobrando durante o [ Checkout](https://docs.stripe.com/payments/save-and-reuse.md?platform=checkout).

#### Comece já

- [Salvar cartões sem fazer um pagamento inicial](https://docs.stripe.com/payments/save-and-reuse.md)
- [Salvar dados bancários para pagamentos com débito automático SEPA](https://docs.stripe.com/payments/sepa-debit/set-up-payment.md)
- [Salvar dados bancários para pagamentos com débito automático BECS](https://docs.stripe.com/payments/au-becs-debit/set-up-payment.md)

## Obtenha permissão para salvar uma forma de pagamento

Você é responsável pela conformidade com todas as leis, regulamentos e regras de rede aplicáveis ao salvar os dados de pagamento de um cliente.

### Uso futuro na sessão

Se você configurar uma forma de pagamento para pagamentos futuros *na sessão* (A payment is described as on-session if it occurs while the customer is actively in your checkout flow and able to authenticate the payment method), como exibir a forma de pagamento em uma página de checkout futura, você deve obter explicitamente o consentimento do cliente para esse uso específico. Por exemplo, inclua uma caixa de seleção “Salvar minha forma de pagamento para uso futuro” para obter o consentimento.

Se você precisar diferenciar entre formas de pagamento salvas apenas para uso offline e formas de pagamento que você pode apresentar ao seu cliente para futuras compras *na sessão* (A payment is described as on-session if it occurs while the customer is actively in your checkout flow and able to authenticate the payment method), você pode utilizar o parâmetro [allow_redisplay](https://docs.stripe.com/api/payment_methods/object.md#payment_method_object-allow_redisplay) no objeto PaymentMethod.

### Uso futuro fora da sessão

Para configurar uma forma de pagamento para pagamentos futuros *fora de sessão* (A payment is described as off-session if it occurs without the direct involvement of the customer, using previously-collected payment information), você precisa de permissão. Criar um contrato inicial (também chamado de *mandato*) permite que você cobre o cliente quando ele não estiver conectado e usando seu site ou aplicativo.

Publique os termos, que devem ser confirmados e aceitos pelo cliente, explicando como os pagamentos são processados no site ou aplicativo. Os termos devem incluir pelo menos os dados a seguir:

- Permissão do cliente para iniciar um pagamento ou uma série de pagamentos em seu nome
- A frequência prevista dos pagamentos (ou seja, pagamento avulso ou recorrente)
- Como será definido o valor dos pagamentos

Veja recomendações para o texto do mandato para [salvar cartões](https://docs.stripe.com/payments/save-and-reuse.md?platform=web&ui=elements#collect-payment-details) ou [salvar dados bancários SEPA](https://docs.stripe.com/payments/sepa-debit/set-up-payment.md).

Para usuários que precisam seguir a *SCA* (Strong Customer Authentication (SCA) is a regulatory requirement in effect as of September 14, 2019, that impacts many European online payments. It requires customers to use two-factor authentication like 3D Secure to verify their purchase), este contrato ajuda a autorizar os pagamentos sem interrupções. Se sua integração estiver corretamente configurada para salvar um cartão, a Stripe marcará os futuros pagamentos fora de sessão como *transações iniciadas pelo comerciante* (A payment made off-session with a properly authenticated saved card, can qualify as merchant-initiated transaction and be exempt from SCA) (MIT) para que os clientes não precisem se conectar outra vez para fazer a autenticação. Para fazer transações iniciadas pelo comerciante, você precisa de um contrato com o cliente.

## Especifique o uso para aumentar a taxa de sucesso

O parâmetro [usage](https://docs.stripe.com/api/setup_intents/object.md#setup_intent_object-usage) indica à Stripe como você pretende usar a forma de pagamento no futuro. Para algumas formas de pagamento, a Stripe pode usar sua configuração de `usage` para selecionar o fluxo mais simples para o cliente. Essa otimização deve aumentar o número de pagamentos bem-sucedidos.

Por exemplo, cartões de crédito e débito sujeitos à regulamentação europeia *SCA* (Strong Customer Authentication (SCA) is a regulatory requirement in effect as of September 14, 2019, that impacts many European online payments. It requires customers to use two-factor authentication like 3D Secure to verify their purchase) podem exigir que o cliente autentique o cartão durante o processo de salvamento. Definir o parâmetro `usage` como `off_session` autentica corretamente o cartão de crédito ou débito para pagamentos fora de sessão para que o cliente não precise se conectar novamente e repetir a autenticação. Embora haja uma complicação inicial no fluxo de configuração, definir `usage` como `off_session` pode reduzir a intervenção do cliente em futuros pagamentos fora de sessão.

No entanto, se você só quiser usar o cartão quando o cliente estiver no checkout, defina `usage` como `on_session`. O banco saberá que você planeja usar o cartão quando o cliente estiver disponível para fazer a autenticação, o que permite postergar a autenticação dos dados do cartão e evitar o atrito inicial.

| Como você pretende usar o cartão                                                                                                                                                             | Valor da enumeração de usage a ser aplicado |
| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------- |
| Somente para pagamentos *na sessão* (A payment is described as on-session if it occurs while the customer is actively in your checkout flow and able to authenticate the payment method)     | `on_session`                                |
| Somente para pagamentos *fora da sessão* (A payment is described as off-session if it occurs without the direct involvement of the customer, using previously-collected payment information) | `off_session` (padrão)                      |
| Pagamentos na sessão ou fora da sessão                                                                                                                                                       | `off_session` (padrão)                      |

`Usage` é uma otimização. Você ainda pode usar um cartão configurado para pagamentos na sessão para fazer pagamentos fora da sessão, mas é provável que os bancos recusem o pagamento e exijam a autenticação do cliente. Os dois casos podem exigir autenticação posterior, por isso, [crie um processo de recuperação](https://docs.stripe.com/billing/revenue-recovery.md) no aplicativo. Quando um pagamento com cartão fora de sessão exigir autenticação, deixe o cliente online de volta para concluir o pagamento.

Por padrão, o parâmetro `usage` é definido como `off_session`. Veja como criar um SetupIntent no seu servidor e especifique o `usage`:

```curl
curl https://api.stripe.com/v1/setup_intents \
  -u "<<YOUR_SECRET_KEY>>:" \
  -d usage=on_session
```

> Siga as instruções desta página para que sua integração funcione com cartões que exigem *Autenticação Forte de Cliente* (Strong Customer Authentication (SCA) is a regulatory requirement in effect as of September 14, 2019, that impacts many European online payments. It requires customers to use two-factor authentication like 3D Secure to verify their purchase). Marcar corretamente as transações permite que a Stripe ignore a SCA quando for permitido, evitando que a autenticação seja necessária em todos os pagamentos.
