Pular para o conteúdo principal

Checkout Handler

Integrar o checkout do Dodo Payments no seu app SvelteKit.

Customer Portal

Permitir que clientes gerenciem assinaturas e detalhes.

Webhooks

Receber e processar eventos webhook do Dodo Payments.

Instalação

1

Install the package

Execute o seguinte comando na raiz do seu projeto:
2

Set up environment variables

Crie um arquivo .env na raiz do seu projeto:
Nunca envie seu arquivo .env ou segredos para o controle de versão.

Exemplos de Manipuladores de Rota

Todos os exemplos presumem que você está usando o SvelteKit App Router.
Use esse manipulador para integrar o checkout do Dodo Payments ao seu app SvelteKit. Suporta fluxos de pagamento estático (GET), dinâmico (POST) e de sessão (POST).

Manipulador de Rota de Checkout

A Dodo Payments oferece três tipos de fluxos de pagamento para integrar pagamentos ao seu site, e este adaptador suporta todos os tipos.
  • Links de Pagamento Estáticos: URLs compartilháveis instantaneamente para coleta de pagamento rápida e sem código.
  • Links de Pagamento Dinâmicos: Gere programaticamente links de pagamento com detalhes personalizados usando a API ou SDKs.
  • Sessões de Checkout: Crie experiências de checkout seguras e personalizáveis com carrinhos de produtos pré-configurados e detalhes do cliente.

Parâmetros de Consulta Compatíveis

productId
string
obrigatório
Identificador do produto (ex.: ?productId=pdt_nZuwz45WAs64n3l07zpQR).
quantity
integer
Quantidade do produto.
fullName
string
Nome completo do cliente.
firstName
string
Primeiro nome do cliente.
lastName
string
Último nome do cliente.
email
string
Endereço de e-mail do cliente.
country
string
País do cliente.
addressLine
string
Linha de endereço do cliente.
city
string
Cidade do cliente.
state
string
Estado/província do cliente.
zipCode
string
CEP/código postal do cliente.
disableFullName
boolean
Desabilitar o campo de nome completo.
disableFirstName
boolean
Desabilitar o campo de primeiro nome.
disableLastName
boolean
Desabilitar o campo de último nome.
disableEmail
boolean
Desabilitar o campo de e-mail.
disableCountry
boolean
Desabilitar o campo de país.
disableAddressLine
boolean
Desabilitar o campo de linha de endereço.
disableCity
boolean
Desabilitar o campo de cidade.
disableState
boolean
Desabilitar o campo de estado.
disableZipCode
boolean
Desabilitar o campo de CEP.
paymentCurrency
string
Especifique a moeda do pagamento (ex.: USD).
showCurrencySelector
boolean
Exibir seletor de moeda.
paymentAmount
integer
Especifique o valor do pagamento (ex.: 1000 para $10,00).
showDiscounts
boolean
Exibir campos de desconto.
metadata_*
string
Qualquer parâmetro de consulta que começar com metadata_ será enviado como metadados.
Se o productId estiver ausente, o manipulador retorna uma resposta 400. Parâmetros de consulta inválidos também resultam em resposta 400.

Formato de Resposta

O checkout estático retorna uma resposta JSON com a URL de checkout:

Formato de Resposta

O checkout dinâmico retorna uma resposta JSON com a URL de checkout:
As sessões de checkout oferecem uma experiência de checkout hospedada mais segura que lida com o fluxo completo de pagamento tanto para compras únicas quanto para assinaturas, com controle total de personalização.Consulte o Guia de Integração de Sessões de Checkout para mais detalhes e uma lista completa de campos suportados.

Formato de Resposta

As sessões de checkout retornam uma resposta JSON com a URL de checkout:

Manipulador de Rota do Portal do Cliente

O Manipulador de Rota do Portal do Cliente permite que você integre perfeitamente o portal do cliente dos pagamentos Dodo em sua aplicação SvelteKit.

Parâmetros de Consulta

customer_id
string
obrigatório
O ID do cliente para a sessão do portal (ex.: ?customer_id=cus_123).
send_email
boolean
Se definido como true, envia um e-mail ao cliente com o link do portal.
Retorna 400 se customer_id estiver ausente.

Manipulador de Rota de Webhook

  • Método: Apenas solicitações POST são suportadas. Outros métodos retornam 405.
  • Verificação de Assinatura: Verifica a assinatura do webhook usando webhookKey. Retorna 401 se a verificação falhar.
  • Validação de Payload: Validado com Zod. Retorna 400 para payloads inválidos.
  • Tratamento de Erros:
    • 401: Assinatura inválida
    • 400: Payload inválido
    • 500: Erro interno durante a verificação
  • Roteamento de Eventos: Chama o manipulador de eventos apropriado com base no tipo de payload.

Manipuladores de Eventos Webhook Compatíveis


Prompt para LLM

Última modificação em 22 de maio de 2026