Documentação
Tudo para integrar o IndicaSaaS: conectar seu billing, rastrear vendas por indicação e embarcar o widget. Multi-gateway — a plataforma registra e calcula as comissões; o repasse ao afiliado é feito pelo próprio SaaS.
Para afiliados →Encontre programas, gere seu link rastreável e receba comissão em Pix.
Atribuição & tracking →Como o clique vira venda atribuída: ?ref, cookie, webhook, refund-hold.
SStripe →Stripe Connect (OAuth). Recorrência nativa.
MPMercado Pago →OAuth. Pix, boleto e cartão.
asAsaas →API-key. Pix, boleto e cartão.
APAbacatePay →API-key. Pix e cartão.
Widget & SDK →"Indicar e ganhar" no seu painel + afs.js.
Início rápido (dono do SaaS)
- Crie seu SaaS no painel (vira seu "anunciante") e aceite o contrato.
- Conecte um gateway (Stripe, Mercado Pago, Asaas ou AbacatePay) na aba Instalação — basta um.
- Crie um programa (comissão, recorrência, janela de cookie) e publique no catálogo.
- Instale o tracking: carregue o
afs.jse anexe o?refno checkout do gateway. Como funciona → - Pronto. As vendas indicadas chegam com a comissão calculada; você registra o repasse ao afiliado.
Como funciona, em uma frase
O afiliado compartilha um link rastreável; no clique gravamos o click_id e mandamos o cliente pro seu site com ?ref; você anexa esse ref no checkout do seu gateway; o webhook assinado da venda chega ao IndicaSaaS e nós casamos o ref → registramos a conversão e calculamos a comissão. O pagamento ao afiliado é feito direto por você.
Novo por aqui? Comece por Atribuição & tracking — é o coração do produto — e depois vá para a página do seu gateway.
Superfícies & autenticação
| Base | Auth | Uso |
|---|---|---|
/api/public/* | nenhuma | catálogo público |
/api/v1/* | cookie de sessão | marketplace (anunciante + afiliado) |
/sdk/v1/* | Bearer sk_… | widget — chamar do backend do seu SaaS |
/webhooks/* | assinatura do gateway | eventos de venda (não chamar à mão) |
Dúvidas frequentes
Como autentico na API?
O marketplace (/api/v1) usa o cookie de sessão do Better Auth. O SDK do widget (/sdk/v1) usa Bearer sk_live_… no backend do seu SaaS. O catálogo (/api/public) é aberto.
Como recebo eventos de venda?
Conecte um gateway no painel. Stripe/Mercado Pago via OAuth (webhook único multi-tenant); Asaas/AbacatePay via API-key (webhook com token por merchant). A assinatura é sempre verificada.
Como funciona a atribuição?
click_id no link /go/:code → ?ref no site do SaaS → metadata no gateway → webhook assinado. Last-click, com janela de cookie por programa. Detalhes em docs/TRACKING.md no repositório.
O que é o refund-hold?
Comissões ficam retidas por um período (120 dias cartão / 7 dias Pix por padrão) antes de liberar, cobrindo reembolsos e chargebacks (clawback).
Os webhooks são idempotentes?
Sim — deduplicados por (conexão, event_id) e conversões por (conexão, charge_id), sempre escopados por tenant.