Configurar uma assinatura com o PayPal
Saiba como criar e cobrar uma assinatura com PayPal e Checkout.
Use este guia para configurar uma assinatura usando o PayPal e o Checkout.
Uma sessão do Checkout representa os detalhes da intenção do cliente de fazer a compra. Crie uma sessão do Checkout quando um cliente quiser iniciar uma assinatura. Após redirecionar um cliente para uma sessão do Checkout, a Stripe apresenta um formulário de pagamento onde ele pode concluir a compra. Após a conclusão de uma compra, a Stripe redireciona o usuário de volta ao seu site.
Cuidado
Para começar a aceitar assinaturas do PayPal na Stripe, pagamentos recorrentes do PayPal devem estar habilitados no Dashboard.
Configurar a StripeLado do servidor
Primeiro, você precisa de uma conta Stripe. Cadastre-se agora.
Use nossas bibliotecas oficiais para acessar a API Stripe no seu aplicativo:
Criar produtos e preços recorrentes
Cuidado
A API Prices unifica o modo como compras avulsas e assinaturas são modeladas na Stripe. Integrações existentes que não usam a API Prices ainda são aceitas. No entanto, alguns recursos do Checkout aceitam apenas preços. Consulte o guia de migração para atualizar para a API Prices.
Antes de usar o Checkout, você precisa criar um produto e um preço. Mercadorias físicas ou níveis de serviço diferentes devem ser representados por produtos. Cada produto pode ter um ou mais preços.
Por exemplo, você pode criar um produto de software que tenha quatro preços: 10 USD/mês, 100 USD/ano, 9 EUR/mês e 90 EUR/ano. Isso permite alterar e adicionar preços sem precisar alterar os detalhes dos produtos correspondentes. Você pode criar um produto e preço usando a API ou usando o Stripe Dashboard.
Quando o preço é determinado no checkout (por exemplo, o cliente define o valor da doação) ou você prefere não criar preços antecipadamente, é possível criar preços em linha na criação da sessão do Checkout.
Criar uma sessão do CheckoutLado do clienteLado 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.
<html> <head> <title>Checkout</title> </head> <body> <form action="/create-checkout-session" method="POST"> <button type="submit">Checkout</button> </form> </body> </html>
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.
Quando o cliente finaliza um pagamento, é redirecionado para o success_
, uma página do 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_
no success_
, 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_
. Normalmente, essa é a página no seu site que o cliente visualizou antes de ser redirecionado para o Checkout.
As Sessions do Checkout expiram 24 horas após a criação por padrão.
Cuidado
Não dependa apenas do redirecionamento ao success_
para detectar a iniciação de um pagamento, pois:
- Usuários mal-intencionados podem acessar diretamente o
success_
sem pagar e acessar seus produtos ou serviços.url - Os clientes podem não acessar o
success_
após o pagamento. Eles podem fechar a guia do navegador antes do redirecionamento.url
Confirmar a finalização do pagamento
Observação
Quando um comprador confirma uma assinatura na Stripe com PayPal, recebe um recibo da Stripe e outro do PayPal.
Quando o cliente conclui um pagamento, é redirecionado para o URL especificado como success_
. Normalmente, é uma página no site que informa ao cliente que o pagamento foi bem-sucedido.
Use o Dashboard, um webhook personalizado ou um plugin de terceiros para processar eventos pós-pagamento, como enviar um e-mail de confirmação de pedido ao cliente, registrar a venda em um banco de dados ou iniciar um fluxo de entrega.
Use plugins como o Zapier para automatizar a atualização dos seus sistemas de execução de compras com dados dos pagamentos da Stripe.
Alguns exemplos de automação aceitas por plugins incluem:
- Atualizar planilhas usadas para acompanhamento de pedidos em resposta a pagamentos efetivados
- Atualizar sistemas de gerenciamento de inventário em resposta a pagamentos efetivados
- Acionar notificações a equipes internas de atendimento ao cliente usando e-mail ou aplicativos de chat
Testar a integração
Teste a integração do PayPal com as chaves de API de teste visualizando a página de redirecionamento. Para testar o caso de pagamento bem-sucedido, autentique o pagamento na página de redirecionamento. O PaymentIntent fará a transição de requires_
para succeeded
.
Para testar o que acontece quando a autenticação do usuário falha, use as chaves de API de teste e visualize a página de redirecionamento. Nessa página, clique em Falhar pagamento de teste. O PaymentIntent mudará de requires_
para requires_
.