🏠

O que é o TrendPay

O TrendPay é a plataforma da TrendBrands para venda de infoprodutos e produtos digitais. Reúne em um só lugar: checkout profissional, área de membros, programa de afiliados, assinaturas recorrentes, financeiro com carteira por método de pagamento e saque automático via Pix.

É usado por produtores de conteúdo, mentores, professores, desenvolvedores de software e qualquer pessoa que venda produtos digitais online.

Perfis de acesso

Infoprodutor

Dono da conta. Acesso total ao painel de vendas, produtos, financeiro e configurações.

Equipe

Colaboradores com permissões específicas definidas pelo infoprodutor (vendas, produtos, financeiro etc.).

Afiliado

Divulga produtos de outros produtores e recebe comissão por cada venda realizada.

Comprador / Aluno

Acessa o painel do cliente para ver pedidos e a área de membros dos produtos adquiridos.

Tecnologia

O TrendPay é uma aplicação web 100% online — não requer instalação. Acesse pelo navegador em qualquer dispositivo. A área de membros pode ser instalada como app no celular via PWA.

🚀

Primeiros Passos

Siga este caminho para começar a vender pelo TrendPay:

1

Crie sua conta

Acesse /cadastro e preencha o wizard de registro com seus dados pessoais ou empresariais.

2

Complete o KYC

Envie seus documentos para verificação de identidade. Necessário para habilitar saques.

3

Crie seu primeiro produto

Vá em Produtos → Novo produto e defina nome, preço e tipo de entrega.

4

Configure o checkout

Personalize o link de checkout com sua identidade visual e formas de pagamento.

5

Configure a chave Pix para saques

Em Financeiro, cadastre sua chave Pix para receber saques automáticos.

6

Comece a vender

Compartilhe o link do seu checkout e acompanhe as vendas em tempo real no Dashboard.

📝

Cadastro (Wizard)

O cadastro do TrendPay é feito em um wizard (assistente) por etapas. Acesse /cadastro para iniciar.

Tipo de pessoa

Escolha entre Pessoa Física (PF) ou Pessoa Jurídica (PJ). Essa definição afeta os campos obrigatórios e a verificação KYC.

Dados solicitados — PF

Dados solicitados — PJ

Faixas de faturamento

OpçãoFaixa
Até R$ 10 milInício de operação
R$ 10 mil a R$ 50 milPequeno produtor
R$ 50 mil a R$ 100 milProdutor em crescimento
R$ 100 mil a R$ 500 milProdutor consolidado
Acima de R$ 500 milGrande operação
💡 Compradores que já têm conta podem fazer upgrade para infoprodutor sem criar uma nova conta — acesse /cadastro/infoprodutor.
🛡️

Verificação KYC

O KYC (Know Your Customer) é a verificação de identidade obrigatória para habilitar saques na plataforma. Acesse Financeiro → KYC para enviar seus documentos.

Status do KYC

StatusDescriçãoSaques
Não enviadoDocumentos ainda não foram enviados❌ Bloqueado
Em análiseDocumentos enviados, aguardando revisão❌ Bloqueado
AprovadoIdentidade verificada com sucesso✅ Habilitado
RejeitadoDocumentos inválidos ou inconsistentes❌ Bloqueado

Documentos aceitos

⚠️ Vendas continuam normalmente enquanto o KYC está pendente. Apenas os saques ficam bloqueados até a aprovação.
👤

Perfil & Segurança

Acesse Meu Perfil no menu para gerenciar suas informações pessoais e segurança da conta.

O que você pode alterar

💡 O username é usado na vitrine de afiliação e em outras partes públicas da plataforma.
📊

Dashboard

O Dashboard é a tela principal do TrendPay. Mostra um resumo das suas vendas em tempo real com cache de 5 minutos.

Períodos disponíveis

Hoje

Vendas do dia atual

Ontem

Vendas do dia anterior

7 dias

Última semana

Mês

Mês atual

Ano

Ano atual

Total

Todo o histórico

Métricas exibidas

💡 Membros de equipe só visualizam métricas dos produtos aos quais têm acesso, conforme permissões definidas pelo infoprodutor.
📦

Produtos

Produtos são o coração do TrendPay. Cada produto tem seu próprio checkout, área de membros, afiliados e configurações.

Criando um produto

Acesse Produtos → Novo Produto e preencha:

Tipos de produto

TipoDescriçãoUso típico
Produto únicoCobrado uma vezCursos, e-books, templates
RecorrenteCobrado periodicamenteAssinaturas, clubes, SaaS
ParceladoValor dividido em parcelasMentorias, programas

Ações disponíveis

⚠️ Produtos bloqueados pela plataforma ficam indisponíveis para venda até regularização.
🔗

Checkout Builder

O Checkout Builder permite personalizar completamente a página de pagamento do seu produto. Acesse via Produtos → Editar Checkout.

URL do checkout

Cada produto tem um slug único: trendpay.com.br/c/{slug}. O slug é gerado automaticamente mas pode ser customizado.

O que você pode personalizar

Domínio próprio

No plano Pro você pode configurar um subdomínio ou domínio customizado para o checkout. Configure em Produtos → Checkout → Domínio.

Formas de pagamento no checkout

⚡ Pix

Pagamento instantâneo. QR Code gerado automaticamente com validade configurável.

💳 Cartão de Crédito

À vista ou parcelado. Tokenização segura via gateway.

📄 Boleto Bancário

Vencimento em 1-3 dias úteis. Confirmação após compensação.

Pixel de rastreamento

Configure pixels de conversão diretamente no checkout: Meta (Facebook/Instagram), Google Tag Manager, TikTok e outros.

💡 O TrendPay usa a Meta Conversions API server-side — os eventos de compra são enviados diretamente do servidor, sem depender do pixel no navegador do comprador. Isso garante dados precisos mesmo com bloqueadores de anúncio.
🏷️

Ofertas & Preços

Cada produto pode ter múltiplas ofertas com preços e condições diferentes. Isso permite criar promoções, condições especiais e planos diferenciados sem criar produtos separados.

Criando uma oferta

Acesse Produtos → Editar → Ofertas e clique em Nova Oferta.

Campos da oferta

💡 Para direcionar um comprador a uma oferta específica, adicione o parâmetro ?offer={id} ao link do checkout.
⬆️

Order Bumps

Order Bumps são produtos complementares exibidos dentro do próprio checkout, antes do pagamento. O comprador adiciona com um clique, sem precisar preencher os dados novamente.

Configurando um Order Bump

Acesse Produtos → Editar → Order Bumps → Adicionar.

Campos

💡 Order Bumps têm taxa de conversão muito alta por estarem no fluxo de compra. Use produtos de baixo custo e complementares ao produto principal.
🔀

Upsell & Downsell

Upsell e Downsell são páginas exibidas após a confirmação do pagamento. O comprador já converteu — agora você oferece algo adicional.

Fluxo

1

Compra aprovada

O pagamento é confirmado e o comprador é redirecionado.

2

Página de Upsell

Oferta de upgrade ou produto complementar de maior valor.

3

Aceita ou recusa

Se aceitar: compra processada automaticamente. Se recusar: vai para o Downsell.

4

Página de Downsell

Oferta alternativa de menor valor ou diferente configuração.

5

Página de Obrigado

Confirma todas as compras e direciona para a área de membros.

Configurando Upsell

Acesse Produtos → Editar Upsell. Configure:

🎟️

Cupons de Desconto

Crie cupons de desconto para campanhas, afiliados, parceiros ou promoções pontuais. Acesse Produtos → Cupons.

Campos do cupom

Como o comprador usa

No checkout, o comprador digita o código no campo de cupom. O desconto é aplicado instantaneamente antes da confirmação do pagamento.

💡 Cupons são validados em tempo real via API. Se expirado, esgotado ou inválido, o comprador recebe uma mensagem de erro imediata.
🎓

Área de Membros — Configuração

A área de membros é onde seus alunos acessam o conteúdo após a compra. Cada produto tem sua própria área de membros. Acesse via Produtos → Member Builder.

URL de acesso

Por padrão: trendpay.com.br/m/{slug}. Com domínio próprio: seu domínio ou subdomínio configurado.

Configurações gerais

Tipos de conteúdo suportados

🎬 Vídeo

YouTube, Vimeo ou hospedagem própria

📄 PDF

Upload direto de arquivos PDF

📝 Texto

Conteúdo rico com editor

🔗 Link externo

Redirecionamento para URL externa

📚

Módulos & Aulas

O conteúdo é organizado em Seções → Módulos → Aulas. Essa hierarquia permite organizar cursos complexos de forma clara.

Estrutura

S

Seção

Nível mais alto. Ex: "Módulo 1", "Semana 1", "Fase Iniciante".

M

Módulo

Agrupamento dentro de uma seção. Ex: "Fundamentos", "Prática".

A

Aula

Conteúdo individual. Pode ser vídeo, PDF, texto ou link externo.

Progresso do aluno

Cada aula tem um botão de "Marcar como concluída". O progresso é rastreado individualmente por aluno e exibido na interface da área de membros.

Comentários por aula

Os alunos podem comentar em cada aula. Como produtor, você pode aprovar, editar ou excluir comentários pelo painel de Comentários no Member Builder.

👥

Turmas

Turmas permitem separar alunos em grupos dentro do mesmo produto. Útil para mentorias, programas com início e fim definidos ou conteúdo liberado por fases.

Criando uma turma

Acesse Member Builder → Turmas → Nova Turma.

Gerenciando alunos nas turmas

💡 Turmas são ideais para programas de mentoria onde cada grupo tem um ritmo diferente ou conteúdo liberado em datas específicas.
🏆

Certificados

O TrendPay emite certificados de conclusão automaticamente quando o aluno completa o curso. Acesse Member Builder → Configurações → Certificado.

Configurações do certificado

Conquistas & Badges

Além do certificado, o sistema de gamificação permite criar badges por marcos de progresso. Configure em Plataforma → Conquistas. Os badges são compartilháveis nas redes sociais.

💬

Comunidade

Cada produto pode ter páginas de comunidade — um espaço social para os alunos interagirem. Acesse Member Builder → Comunidade.

Funcionalidades

📱

PWA & Notificações Push

A área de membros do TrendPay é um PWA (Progressive Web App) — pode ser instalada como aplicativo no celular sem precisar publicar na App Store ou Google Play.

Como o aluno instala

1

Acesse a área de membros pelo celular

Via Chrome (Android) ou Safari (iOS).

2

Toque em "Adicionar à tela inicial"

O navegador exibirá automaticamente a sugestão ou acesse pelo menu do navegador.

3

Confirme a instalação

O app aparece na tela inicial com o ícone e nome do produto.

Notificações Push

Envie notificações push diretamente para os celulares dos seus alunos. Acesse Member Builder → Enviar Push.

💡 O painel do produtor também é um PWA — você pode instalar o TrendPay no seu celular para acompanhar vendas e gerenciar produtos de qualquer lugar.
💳

Vendas & Pedidos

Acesse Vendas no menu para visualizar todos os pedidos da sua conta.

Status dos pedidos

StatusDescrição
pendingAguardando pagamento (Pix ou boleto gerados, não pagos)
completedPagamento confirmado — acesso liberado ao comprador
refundedReembolso realizado
cancelledPedido cancelado

Ações disponíveis

Filtros disponíveis

Filtre por produto, status, período, gateway e forma de pagamento para encontrar pedidos específicos rapidamente.

🔄

Assinaturas

Assinaturas são cobranças recorrentes — mensais, trimestrais, anuais etc. Acesse Vendas → Assinaturas.

Status da assinatura

StatusDescrição
activeAssinatura ativa e sendo cobrada normalmente
cancelledCancelada pelo assinante ou pelo produtor
past_dueCobrança falhou — aguardando nova tentativa ou regularização

Cobrança automática

O TrendPay tenta cobrar automaticamente na data de renovação usando:

Lembretes automáticos

O sistema envia e-mails automáticos de lembrete antes do vencimento para reduzir inadimplência.

Cancelamento

O produtor pode cancelar uma assinatura a qualquer momento pelo painel. O acesso do aluno é mantido até o fim do período pago.

↩️

Reembolsos

O TrendPay tem um fluxo estruturado de solicitações de reembolso. O comprador solicita pelo painel e o produtor aprova ou rejeita.

Fluxo do reembolso

1

Comprador solicita

Acessa o Painel do Cliente → Reembolso e descreve o motivo.

2

Produtor é notificado

Aparece em Reembolsos no painel do produtor com status pendente.

3

Produtor decide

Aprova (processa o estorno) ou rejeita (com justificativa).

4

Estorno processado

Se aprovado, o gateway processa o estorno ao comprador.

⚠️ Respeite a política de reembolso configurada no produto (ex: 7 dias). Reembolsos fora do prazo podem ser rejeitados.
🎓

Alunos

Gerencie todos os alunos de todos os seus produtos em Produtos → Alunos.

Funcionalidades

Importação em massa

Baixe o modelo CSV em Alunos → Baixar modelo, preencha com os dados e faça o upload. Os alunos recebem e-mail de acesso automaticamente.

🤝

Programa de Afiliados

O programa de afiliados permite que outras pessoas divulguem seus produtos e recebam comissão por cada venda. Acesse Afiliados no menu.

Configurando afiliados no produto

Acesse Produtos → Editar → Configurações de Afiliados:

Vitrine de Afiliação

Produtos com vitrine ativa aparecem em /produtos/vitrine-afiliacao. Qualquer usuário cadastrado pode solicitar se afiliar.

Gerenciando inscrições

Acesse Afiliados → Inscrições para aprovar, rejeitar ou revogar afiliados por produto.

Pixels de conversão por afiliado

Cada afiliado pode configurar seus próprios pixels de rastreamento (Meta, Google) no painel de afiliado. As conversões são atribuídas corretamente.

Link do afiliado

Cada afiliado recebe um link único com parâmetro de rastreamento: trendpay.com.br/c/{slug}?ref={codigo}.

Comissões

As comissões são calculadas automaticamente a cada venda aprovada e creditadas na carteira do afiliado. O afiliado solicita saque pelo próprio painel.

🤜

Co-produção

Co-produção permite que dois ou mais produtores colaborem no mesmo produto, dividindo receita automaticamente.

Adicionando um co-produtor

Acesse Produtos → Editar → Co-produtores → Convidar. O co-produtor recebe um link de convite por token.

Aceitando o convite

O co-produtor acessa o link /coproducao/convite/{token} e aceita a colaboração.

Divisão de receita

Configure o percentual de cada co-produtor. A divisão é automática a cada venda aprovada — cada um recebe na própria carteira.

⚠️ O co-produtor precisa ter KYC aprovado para receber os valores da co-produção.
🏅

Conquistas & Gamificação

O sistema de conquistas cria badges que os alunos ganham ao atingir marcos de progresso. Acesse Conquistas no menu.

Criando uma conquista

Compartilhamento social

Cada conquista tem uma página pública em /conquistas/{slug}/share que o aluno pode compartilhar nas redes sociais.

💰

Carteira & Saldo

Acesse Financeiro no menu para visualizar seu saldo e histórico de transações. O saldo é organizado por método de pagamento.

Estrutura da carteira

ColunaPixCartãoBoleto
Disponível
Pendente
ReservaValor retido como garantia antifraude

Saldo disponível vs pendente

Prazo de liquidação

Cada método tem prazo diferente para o valor ir de "pendente" para "disponível":

⚡ Pix

Liquidação mais rápida — geralmente no mesmo dia ou D+1.

💳 Cartão

Prazo maior — geralmente D+14 a D+30 dependendo do gateway.

📄 Boleto

Após compensação bancária — geralmente D+2 a D+3.

💡 O prazo exato é configurado pela plataforma e pode variar. Consulte a prévia de liquidação em Financeiro → Prévia de Taxas.
🏦

Saques

Solicite a transferência do seu saldo disponível para sua conta bancária via Pix. Acesse Financeiro → Solicitar Saque.

Pré-requisitos

Cadastrando sua chave Pix

Em Financeiro → Dados de Recebimento, cadastre:

Processo de saque

1

Solicite o saque

Informe o valor e selecione o método (Pix, cartão ou boleto).

2

Processamento automático

O sistema tenta enviar via CajuPay, SpacePag ou Woovi automaticamente.

3

Pix enviado

Se aprovado, o valor cai na sua conta em minutos.

Status dos saques

StatusDescrição
pendingAguardando processamento
processingEm processamento pelo gateway
completedPix enviado com sucesso
failedFalha no envio — entre em contato com o suporte
📊

Taxas & Liquidação

Antes de solicitar um saque, você pode visualizar a prévia das taxas e o valor líquido que receberá.

Composição do valor líquido

Valor bruto da venda
- Taxa do gateway (%)
- Taxa da plataforma (%)
= Valor líquido creditado na carteira

Taxas de saque

Além das taxas de venda, há uma taxa por saque solicitado. O valor líquido do saque é exibido antes da confirmação.

💡 No plano Pro a taxa da plataforma é 0%. Você paga apenas a taxa do gateway de pagamento.
📈

Relatórios

Acesse Relatórios no menu para análises detalhadas das suas vendas e comportamento dos compradores.

Relatórios disponíveis

📊 Visão geral

Resumo de vendas por período, produto e forma de pagamento.

🛒 Carrinhos abandonados

Checkouts iniciados mas não concluídos. Exportável em CSV.

💳 Por forma de pagamento

Breakdown de Pix, cartão e boleto.

📦 Por produto

Desempenho individual de cada produto.

Carrinhos abandonados

O TrendPay registra todos os checkouts iniciados, mesmo os não concluídos. Use essa lista para campanhas de recuperação via e-mail ou WhatsApp. Exporte em CSV em Relatórios → Carrinhos Abandonados → Exportar.

📧

E-mail Marketing

Crie e envie campanhas de e-mail para seus compradores e alunos. Acesse E-mail Marketing no menu.

Criando uma campanha

Clique em Nova Campanha e configure:

Preview de destinatários

Antes de enviar, visualize quantas pessoas receberão o e-mail com base nos filtros definidos. Isso evita envios para públicos errados.

SMTP próprio

Configure seu próprio servidor SMTP em Configurações → E-mail para enviar os e-mails pelo seu domínio, melhorando a entregabilidade.

💡 E-mails enviados por domínio próprio têm muito melhor entregabilidade que domínios genéricos. Configure SPF, DKIM e DMARC no seu DNS.
🔌

Integrações

Acesse Integrações no menu para conectar o TrendPay a ferramentas externas.

UTMify

Rastreamento completo de UTMs. Cada pedido aprovado é enviado automaticamente para o UTMify com os parâmetros de campanha, fonte e mídia.

Configure em Integrações → UTMify → Adicionar Token.

Spedy (Nota Fiscal)

Emissão automática de NF-e a cada venda aprovada. Sem precisar emitir manualmente.

Configure em Integrações → Spedy → Configurar com suas credenciais Spedy.

💡 Você pode restringir a emissão a produtos específicos — configure por produto na integração Spedy.

Cademi

Liberação automática de acesso na plataforma Cademi a cada compra aprovada.

Configure em Integrações → Cademi e associe por produto, oferta ou plano de assinatura.

Plugins

O TrendPay suporta plugins para ampliar funcionalidades. Acesse a loja de plugins ou instale via arquivo ZIP em Plataforma → Gerenciar Plugins.

👥

Equipe & Permissões

Adicione membros de equipe com cargos e permissões específicas. Acesse Usuários → Equipe.

Criando um cargo

Clique em Novo Cargo e defina as permissões:

dashboard.view
Visualizar o dashboard com métricas de vendas
Visualização
vendas.view
Acessar vendas, pedidos, assinaturas e reembolsos
Visualização
financeiro.view
Ver saldo, transações e solicitar saques
Financeiro
produtos.view
Gerenciar produtos, afiliados, alunos e cupons
Produtos
relatorios.view
Acessar relatórios e carrinhos abandonados
Visualização
integracoes.view
Gerenciar integrações, plugins e webhooks
Configuração
api_pagamentos.view
Criar e gerenciar aplicações de API de pagamentos
API
equipe.manage
Gerenciar membros e cargos da equipe
Administração

Adicionando um membro

Em Equipe → Membros → Adicionar, informe o e-mail e selecione o cargo. O usuário receberá acesso ao painel com as permissões do cargo.

Logs de auditoria

Todas as ações dos membros de equipe são registradas nos logs. Acesse em Equipe → Logs para auditoria completa.

⚠️ Membros com permissão financeiro.view podem solicitar saques. Conceda essa permissão apenas a pessoas de total confiança.
🔐

API de Pagamentos

A API do TrendPay permite integrar cobranças Pix, cartão e boleto diretamente ao seu sistema, marketplace, ERP ou SaaS. Acesse Aplicações API no menu para criar suas credenciais.

💡 Documentação interativa disponível em /docs/api-pagamentos. Teste os endpoints ao vivo em /docs/api-pagamentos/testar.

Base URL

https://trendpay.com.br/api/v1

Criando uma aplicação

1

Nova Aplicação

Acesse Aplicações API → Criar e defina nome e descrição.

2

Par de chaves gerado

O sistema gera uma Public Key (sempre visível) e uma Secret Key (exibida uma vez — guarde em local seguro).

3

Configure webhook, IPs e URL de retorno

Opcional: configure webhook_url, IPs permitidos, URL de retorno padrão e logo do checkout hospedado.

Autenticação

Envie o par de chaves em todos os requests via headers:

X-Public-Key: gpk_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
X-Secret-Key: gsk_xxxxxxxx_yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
Content-Type: application/json
⚠️ Nunca exponha a Secret Key no frontend (JavaScript, apps móveis). Sempre chame a API a partir do seu backend. Armazene as chaves em variáveis de ambiente — nunca em repositórios de código.
💡 O formato legado Authorization: Bearer {api_key} ainda é aceito para compatibilidade com integrações antigas.

Idempotência

Para evitar cobranças duplicadas em caso de retry, envie uma chave única por operação. O resultado fica cacheado por 24 horas.

// Via header:
Idempotency-Key: 550e8400-e29b-41d4-a716-446655440000

// Via body:
"idempotency_key": "550e8400-e29b-41d4-a716-446655440000"
💡 Use em todos os endpoints de criação (Pix, cartão, boleto). Máximo 128 caracteres. Mesma chave + mesmas credenciais = mesma resposta sem criar novo pedido.

Resumo dos endpoints

MétodoEndpointDescrição
POST/api/v1/payments/pixCriar cobrança Pix (QR Code + copia e cola)
POST/api/v1/payments/cardPagamento com cartão de crédito
POST/api/v1/payments/boletoGerar boleto bancário
GET/api/v1/payments/{order_id}Consultar status do pedido
POST/api/v1/pix/{order_id}/cancelCancelar Pix pendente
POST/api/v1/pix/{order_id}/refundEstornar pedido pago ou em disputa
POST/api/v1/checkout/sessionsCheckout hospedado (cliente escolhe o método)

Campos comuns (customer)

Todos os endpoints de criação usam o objeto customer com os mesmos campos:

CampoTipoObrig.Descrição
customer.emailstringE-mail do comprador. Cria conta automaticamente se não existir.
customer.namestringNome completo. Se vazio, usa o e-mail.
customer.cpfstringCPF com ou sem máscara. Máx 14 chars.
customer.phonestringTelefone. Máx 24 chars.

Campos opcionais presentes em todos os endpoints de criação:

CampoTipoDescrição
amountnumberValor em reais (ex: 197.00). Mín: 0.01.
currencystringBRL (padrão), USD ou EUR. Conversão automática para BRL.
product_idstring (UUID)ID do produto. Se informado, o acesso é liberado ao comprador após o pagamento.
product_offer_idintegerID da oferta do produto.
subscription_plan_idintegerID do plano de assinatura.
metadataobjectDados livres para rastreamento. Retornados nos webhooks.
idempotency_keystringChave de idempotência. Máx 128 chars.

POST/api/v1/payments/pix

Cria uma cobrança Pix e retorna o QR Code em base64 e o código copia e cola. Ideal para quem exibe o Pix na própria interface.

Exemplo de requisição

POST /api/v1/payments/pix
X-Public-Key: gpk_xxxxxxxxxxxxxxxxxxxx
X-Secret-Key: gsk_xxxxxxxx_yyyyyyyyyy
Content-Type: application/json
Idempotency-Key: 550e8400-e29b-41d4-a716-446655440000

{
  "amount": 197.00,
  "currency": "BRL",
  "customer": {
    "email": "joao@email.com",
    "name": "João Silva",
    "cpf": "123.456.789-00",
    "phone": "11999999999"
  },
  "product_id": "018e1234-abcd-7000-xxxx-000000000001",
  "metadata": {
    "order_ref": "ORD-001",
    "utm_source": "google"
  }
}

Resposta — 201 Created

{
  "order_id": 456,
  "transaction_id": "abc123",
  "qrcode": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...",
  "copy_paste": "00020126580014br.gov.bcb.pix0136...",
  "status": "pending"
}

Use qrcode para exibir a imagem do QR Code ou copy_paste para o código Pix. Monitore o status via webhook (order.completed) ou polling no endpoint de status.


POST/api/v1/payments/card

Cria cobrança via cartão de crédito. O cartão deve ser tokenizado no frontend pelo SDK do gateway (ex: Stripe.js). Nunca envie dados brutos do cartão.

Campos adicionais

CampoTipoObrig.Descrição
card.payment_tokenstringToken gerado pelo SDK do gateway (ex: pm_xxx do Stripe). Máx 10.000 chars.
card.card_maskstringÚltimos 4 dígitos para exibição (ex: **** 4242).

Resposta — 201 Created

{
  "order_id": 456,
  "transaction_id": "xyz",
  "status": "paid",
  "client_secret": "pi_xxx_secret_yyy"  // apenas se gateway exigir 3DS
}
💡 Se retornar client_secret, confirme o 3D Secure no frontend com stripe.confirmCardPayment(client_secret). O status é atualizado via webhook do gateway.

POST/api/v1/payments/boleto

Cria um boleto bancário. Mesmos campos do Pix (sem card).

Resposta — 201 Created

{
  "order_id": 456,
  "transaction_id": "bol_xxx",
  "barcode": "23793.38128 60007.827136 95000.063305 8 94190000019700",
  "pdf_url": "https://boleto.gateway.com/pdf/abc123.pdf",
  "expire_at": "2026-05-18",
  "amount": 197.00,
  "status": "pending"
}

Exiba barcode, pdf_url e expire_at na sua UI. Status atualizado via webhook após compensação.


GET/api/v1/payments/{order_id}

Consulta o status de um pedido criado com o mesmo par de chaves. Retorna 404 se o pedido não existir ou não pertencer às chaves usadas.

Exemplo

GET /api/v1/payments/456
X-Public-Key: gpk_xxxxxxxxxxxxxxxxxxxx
X-Secret-Key: gsk_xxxxxxxx_yyyyyyyyyy

Resposta — 200 OK

{
  "order_id": 456,
  "status": "completed",
  "amount": 197.00,
  "email": "joao@email.com",
  "gateway": "efi",
  "gateway_id": "tx_abc123xyz",
  "metadata": {
    "source": "api",
    "order_ref": "ORD-001",
    "checkout_payment_method": "pix"
  },
  "created_at": "2026-05-16T12:00:00.000000Z",
  "updated_at": "2026-05-16T12:01:30.000000Z"
}

Status possíveis

StatusDescrição
pendingAguardando pagamento
completedPago — acesso liberado
refundedReembolso processado
cancelledCancelado
disputedEm disputa (chargeback / MED)

POST/api/v1/pix/{order_id}/cancel

Cancela um pedido com status pending. Se já estiver cancelled, retorna 200 normalmente (idempotente). Pedidos pagos não podem ser cancelados — use o endpoint de reembolso.

Resposta — 200 OK

{
  "order_id": 456,
  "status": "cancelled"
}

Erro — 422 Não cancelável

{ "message": "Só é possível cancelar pedidos pendentes.", "order_id": 456, "status": "completed" }

POST/api/v1/pix/{order_id}/refund

Reembolsa um pedido completed ou disputed. O estorno é executado diretamente no gateway. Idempotente se já estiver refunded.

Resposta — 200 OK

{
  "order_id": 456,
  "status": "refunded",
  "gateway_refund": {
    "status": "gateway_ok",
    "note": "Estorno processado pelo gateway."
  }
}
⚠️ Reembolsos são irreversíveis e executados imediatamente no gateway. Verifique o status antes de chamar.

POST/api/v1/checkout/sessions

Cria uma sessão de checkout hospedado. O comprador é redirecionado para a página do TrendPay onde escolhe o método de pagamento (Pix, cartão, boleto).

Campos adicionais

CampoTipoObrig.Descrição
return_urlstring (URL)URL final após o pagamento. Se omitida, usa a URL padrão da aplicação.
expires_inintegerValidade em minutos. Mín: 5, máx: 1440 (24h). Padrão: 30.
⚠️ Se product_id for informado, o amount deve corresponder ao preço do produto/oferta (tolerância R$ 0,02). Diferenças maiores retornam erro 422.

Resposta — 201 Created

{
  "session_id": "7",
  "checkout_url": "https://trendpay.com.br/api-checkout/550e8400-e29b-41d4-a716-446655440000",
  "expires_at": "2026-05-16T13:00:00.000000Z"
}
💡 Redirecione o comprador para checkout_url. Após o pagamento ele é enviado para return_url.

Tabela de erros

HTTPSituação
401Credenciais ausentes ou inválidas (X-Public-Key + X-Secret-Key)
403Integração inativa, IP não permitido ou API Pix desabilitada para o tenant
404Pedido não encontrado ou não pertence às chaves usadas
422Dados inválidos: produto indisponível, oferta inválida, valor incorreto, pedido não cancelável/reembolsável
429Rate limit excedido — aguarde antes de tentar novamente
500Erro interno do servidor ou gateway

Gerenciamento de credenciais

🔔

Webhooks

O TrendPay envia notificações HTTP ao seu servidor quando eventos ocorrem. Há dois tipos de webhook: os webhooks do painel (configurados em Integrações → Webhooks) e os webhooks da API (configurados por aplicação de API).

Webhooks do painel (Integrações → Webhooks)

Notificações para todos os eventos de vendas dos seus produtos. Acesse Integrações → Webhooks.

Criando um webhook

Eventos disponíveis

order.completed

Venda aprovada e paga

order.pending

Pedido criado aguardando pagamento

order.refunded

Reembolso processado

order.cancelled

Pedido cancelado

subscription.created

Nova assinatura criada

subscription.cancelled

Assinatura cancelada

subscription.past_due

Cobrança da assinatura falhou

chargeback.created

Chargeback aberto pelo comprador

Webhooks da API (por aplicação)

Configure webhook_url na aplicação de API para receber eventos de pedidos criados via API com aquele par de chaves.

Eventos da API

EventoDescrição
order.completedPagamento concluído (pedido pago)
order.pendingPedido criado / aguardando pagamento
order.refundedPedido estornado
order.cancelledPedido cancelado via API ou fluxo interno

Formato do payload (API)

{
  "event": "order.completed",
  "order_id": 456,
  "amount": 197.00,
  "status": "completed",
  "email": "joao@email.com",
  "metadata": {
    "external_id": "ref-123",
    "source": "api"
  },
  "created_at": "2026-05-16T12:00:00.000000Z",
  "updated_at": "2026-05-16T12:01:30.000000Z"
}

Assinatura HMAC (segurança)

Se a aplicação tiver webhook secret configurado, cada POST inclui o header:

X-Webhook-Signature: {hmac-sha256-do-body-bruto}

Como validar no seu servidor

// Exemplo em PHP
$body_bruto = file_get_contents('php://input');
$assinatura_recebida = $_SERVER['HTTP_X_WEBHOOK_SIGNATURE'];
$secret = 'seu_webhook_secret';

$assinatura_esperada = hash_hmac('sha256', $body_bruto, $secret);

if (!hash_equals($assinatura_esperada, $assinatura_recebida)) {
    http_response_code(401);
    exit('Assinatura inválida');
}

// Exemplo em Node.js
const crypto = require('crypto');
const sig = req.headers['x-webhook-signature'];
const expected = crypto
  .createHmac('sha256', process.env.WEBHOOK_SECRET)
  .update(req.rawBody)
  .digest('hex');
if (!crypto.timingSafeEqual(Buffer.from(sig), Buffer.from(expected))) {
  return res.status(401).send('Assinatura inválida');
}
⚠️ Leia o body bruto (antes de parsear JSON) para calcular a assinatura. Use comparação constante (hash_equals / timingSafeEqual) para evitar timing attacks.

Retry automático

Se o seu servidor retornar um status diferente de 2xx, o TrendPay reenviar automaticamente com backoff exponencial.

Boas práticas

Logs e testes

Acesse Integrações → Webhooks → Logs para ver o histórico completo de envios e respostas. Use o botão Testar ao lado do webhook para enviar um payload de teste sem precisar gerar uma venda real.