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
Billing
Visão geralSobre as APIs do Billing
Assinaturas
    Visão geral
    Como funcionam as assinaturas
    Início rápido
    Casos de uso
    Crie sua integração
    Recursos de assinatura
      Faturas de assinatura
      Cronogramas de assinatura
      Preços de assinatura
      Modelos de preço recorrente
      Incorporar uma tabela de preços
      Iniciar assinaturas
      Definir quantidades
      Defina ciclos de faturamento
      Inicie assinaturas com data passada
      Inscrever-se em vários itens
      Definir períodos de avaliação
      Aplicar cupons
      Migrar assinaturas para a Stripe
      Como cobranças proporcionais de crédito são calculadas
      Pagamentos de assinaturas
      Formas de pagamento de assinaturas
        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
        PayPal
          PayPal no Checkout
        Revolut Pay
        Cartões coreanos
        Kakao Pay
        Naver Pay
        Débito pré-autorizado no Canadá
        Débito automático SEPA na UE
        iDEAL com débito automático SEPA
        Bancontact com débito automático SEPA
      Integrar com processamento de pagamentos externo
      Métodos de cobrança
      SCA (autenticação forte de cliente)
      Gerenciar assinaturas
      Modifique assinaturas
      Gerencie atualizações pendentes
    Direitos
    Análises
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
API de relatórios
Relatórios para várias contas
Reconhecimento de receitas
Dados
Visão geralEsquema
Relatórios personalizados
Data Pipeline
Gerenciamento de dados
Página inicialReceitaSubscriptionsSubscription featuresSubscription payment methods

Configurar uma assinatura com o PayPal

Saiba como criar e cobrar uma assinatura com o PayPal.

Cuidado

Para começar a aceitar assinaturas do PayPal na Stripe, pagamentos recorrentes do PayPal devem estar habilitados no Dashboard.

Use este guia para configurar uma assinatura usando PayPal como forma de pagamento.

Criar produto e preço
Dashboard

Produtos representam o item ou serviço que você está vendendo. Preços definem quanto e com que frequência você cobra por um produto. Você estabelece quanto custa o produto, qual moeda você aceita e se a cobrança é avulsa ou recorrente. Se você tiver apenas alguns produtos e preços, crie e gerencie-os no Dashboard.

Este guia usa um serviço de banco de imagens como exemplo e cobra dos clientes uma assinatura mensal de 15 EUR. Para modelar isso:

  1. Navegue até a página Adicionar um produto.
  2. Insira um Nome para o produto.
  3. Insira 15 para o preço.
  4. Selecione EUR como moeda.
  5. Clique em Salvar produto.

Depois de criar o produto e o preço, registre o ID do preço para utilizá-lo nas etapas subsequentes. A página de preços exibe o ID, que tem esta estrutura: price_G0FvDp6vZvdwRZ.

Criar ou recuperar um Customer antes da configuração
Lado do servidor

Para reutilizar uma forma de pagamento PayPal para pagamentos futuros, vincule-a a um Cliente.

Crie um objeto Customer quando um cliente abrir uma conta em sua empresa. Associar o ID do objeto Customer à sua própria representação interna de um cliente permitirá que você recupere e use posteriormente os dados da forma de pagamento armazenados. Se o cliente não criou uma conta, você pode criar um objeto Customer agora e associá-lo posteriormente à sua representação interna da conta do cliente.

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

Criar um SetupIntent
Lado do servidor

Um SetupIntent é um objeto que representa sua intenção e acompanha as etapas de configuração da forma de pagamento do cliente para pagamentos futuros.

Crie um SetupIntent no servidor com payment_method_types definido como paypal e especifique o id do cliente.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node
Go
.NET
No results
curl https://api.stripe.com/v1/setup_intents \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d customer=
{{CUSTOMER_ID}}
\ -d "payment_method_types[]"=paypal \ -d "payment_method_data[type]"=paypal

O objeto SetupIntent contém um client_secret, uma chave única que você precisa passar para a Stripe no lado do cliente para redirecionar seu comprador para o PayPal e autorizar a instrução.

Redirecionar o cliente
Lado do cliente

Quando um cliente tenta configurar sua conta PayPal para pagamentos futuros, recomendamos que você use o Stripe.js para confirmar o SetupIntent. Stripe.js é a nossa biblioteca JavaScript básica para criar fluxos de pagamento. Ele processa automaticamente fluxos complexos, como o redirecionamento descrito abaixo, e facilita a ampliação da integração para incluir outras formas de pagamento no futuro.

Para incluir o script Stripe.js na página de checkout, adicione-o ao head do arquivo HTML.

checkout.html
<head> <title>Checkout</title> <script src="https://js.stripe.com/basil/stripe.js"></script> </head>

Crie uma instância de Stripe.js com o JavaScript a seguir em sua página de checkout.

// Set your publishable key. Remember to change this to your live publishable key in production! // See your keys here: https://dashboard.stripe.com/apikeys const stripe = Stripe(
'pk_test_TYooMQauvdEDq54NiTphI7jx'
, {} );

Para confirmar a configuração no lado do cliente, passe o segredo do cliente no objeto SetupIntent criado na etapa 3.

O segredo do cliente é diferente das chaves de API que autenticam as solicitações da API Stripe. Mesmo assim, use-o com cuidado, pois ele permite finalizar a cobrança. Não registre em log, incorpore em URLs nem exponha esse segredo a ninguém, exceto para o próprio cliente.

Confirmar configuração do PayPal

Para autorizar você a usar a conta PayPal para pagamentos futuros, o cliente será redirecionado para uma página de contrato de cobrança do PayPal, que precisará ser aprovada antes de ser redirecionado de volta ao seu site. Use stripe.confirmPayPalSetup para prosseguir da sua página para a conclusão da configuração. Adicione um return_url a esta função para indicar aonde a Stripe deve redirecionar o usuário depois que ele aprovar o contrato de faturamento no site do PayPal.

client.js
// Redirects away from the client const {error} = await stripe.confirmPayPalSetup( '{{SETUP_INTENT_CLIENT_SECRET}}', { return_url: 'https://example.com/setup/complete', mandate_data: { customer_acceptance: { type: 'online', online: { infer_from_client: true } } }, } ); if (error) { // Inform the customer that there was an error. }

Você pode encontrar o ID do pagador da forma de pagamento e o ID do contrato de cobrança no Mandate resultante, na propriedade payment_method_details. O e-mail e o ID do pagador do comprador também podem ser encontrados na propriedade paypal do PaymentMethod.

CampoValor
payer_emailO e-mail do pagador na conta PayPal dele.
payer_idUm ID único da conta PayPal do pagador.
billing_agreement_idO ID do contrato de faturamento (BAID) do PayPal. Um ID gerado pelo PayPal para representar o mandato entre a empresa e o cliente.

Monitorar webhooks
Lado do servidor

Use um método, como webhooks, para confirmar que o contrato de cobrança foi autorizado pelo cliente, em vez de esperar que o cliente volte à página de status do pagamento. Quando um cliente autoriza o contrato de cobrança, o SetupIntent emite o evento webhook setup_intent.succeeded. Se um cliente não autorizar o contrato de cobrança, o SetupIntent emitirá o evento de webhook setup_intent.setup_failed e voltará ao status de requires_payment_method. Quando um cliente revoga o contrato de cobrança da sua conta PayPal, o mandate.updated é emitido.

Criar a assinatura
Lado do servidor

Crie uma assinatura com preço e cliente:

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node
Go
.NET
No results
curl https://api.stripe.com/v1/subscriptions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d customer=cus_Gk0uVzT2M4xOKD \ -d default_payment_method=pm_1F0c9v2eZvKYlo2CJDeTrB4n \ -d "items[0][price]"=price_F52b2UdntfQsfR \ -d "expand[0]"="latest_invoice.confirmation_secret" \ -d off_session=true

A criação de assinaturas cobra automaticamente os clientes porque a forma de pagamento padrão está definida. Depois de um pagamento bem-sucedido, o status no Stripe Dashboard muda para Ativo. O preço que você criou anteriormente determina as cobranças seguintes.

Gerenciar o status da assinatura
Lado do cliente

Se o pagamento inicial bem-sucedido, o estado da assinatura é active e nenhuma ação adicional é necessária. Quando o pagamento falha, o status é alterado para o valor de Status da assinatura definido nas configurações de cobrança automática. Notifique a falha ao cliente e cobrá-lo com outra forma de pagamento.

Atualizar uma assinatura
Lado do servidor

Quando você atualiza uma assinatura, é preciso especificar off_session=true. Caso contrário, qualquer novo pagamento exige um redirecionamento do usuário ao PayPal para confirmação. Por exemplo, se quiser alterar a quantidade de um item incluído na assinatura, você pode usar:

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node
Go
.NET
No results
curl https://api.stripe.com/v1/subscriptions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d customer=cus_Gk0uVzT2M4xOKD \ -d default_payment_method=pm_1F0c9v2eZvKYlo2CJDeTrB4n \ -d "items[0][price]"=price_F52b2UdntfQsfR \ -d "items[0][quantity]"=2 \ -d off_session=true

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_action 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_action para requires_payment_method.

OpcionalDefinir o ciclo de faturamento

OpcionalAvaliações de assinaturas

OpcionalRemover uma conta PayPal salva

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