Exportar PDF

Parceiroos

Documentação técnica de integração

Referência para anunciantes, afiliados, redes e desenvolvedores que integram com a Parceiroos.

Host
SEU-DOMINIO
Gerado em
07 de setembro de 2026
Idioma
Português
Nesta documentação
  1. 01Visão geral
    1. Endereços da plataforma
  2. 02Anunciantes: enviar conversões
    1. Antes de tudo: o click_id
    2. Postback server-to-server
    3. Pixel de imagem
    4. Container JavaScript
    5. Ciclo de vida da conversão
  3. 03Afiliados: links e postback de saída
    1. Link de tracking
    2. Postback de saída
    3. Macros disponíveis
  4. 04Redes e integradoras externas
    1. Exemplo completo: rede externa
    2. Como o sale_amount é preenchido
  5. 05Redes de afiliados
    1. Actionpay
    2. Admitad
    3. Awin
    4. CJ Affiliate
    5. Impact
    6. Rakuten Advertising
    7. Afilio
    8. Lomadee
    9. Plataformas de checkout
  6. 06Assistentes de IA e servidor MCP
    1. Conectar um cliente
    2. Ferramentas disponíveis
  7. 07Depuração e perguntas frequentes

Visão geral

O caminho de uma venda, do clique à comissão, e os endereços que fazem parte dele.

Todos

A Parceiroos acompanha uma venda do primeiro clique até a comissão paga. O afiliado divulga um link de tracking; a plataforma registra o clique e envia o visitante ao anunciante; o anunciante confirma a venda de volta; a conversão percorre seus status e se transforma em comissão. Tudo o que vem a seguir descreve as peças desse circuito.

  1. Clique

    O tráfego entra por https://SEU-DOMINIO/click?offer=…&aff=…. A plataforma grava o clique, cria um click_id e redireciona para a página do anunciante com esse identificador.

  2. Conversão

    Com a venda confirmada, o anunciante informa a plataforma por postback server-to-server, pixel ou container JavaScript. O click_id e um ID único da transação acompanham toda chamada.

  3. Status

    A conversão nasce PENDING, pode passar por VALIDATING e termina em APPROVED, DECLINED ou PAID. Cada mudança pode disparar o postback de saída do afiliado.

  4. Pagamento

    Conversões aprovadas entram no financeiro e são pagas ao afiliado segundo a política do programa.

#Endereços da plataforma

UsoEndereçoQuem usa
Link de tracking (entrada de tráfego)GET https://SEU-DOMINIO/click?offer=ID_PUBLICO&aff=CODIGOAfiliado / rede
Postback de entrada (conversão)GET ou POST https://SEU-DOMINIO/postbackAnunciante
Script de captura do cliquehttps://SEU-DOMINIO/js/platform/handle.jsAnunciante (pixel / JS)
Pixel JavaScripthttps://SEU-DOMINIO/js/platform/pixel.jsAnunciante (JS)
Servidor MCP (assistentes de IA)POST https://SEU-DOMINIO/api/mcpAnunciante / dev
Catálogo de macros em JSONGET https://SEU-DOMINIO/api/postback-macrosRede / integradora

Anunciantes: enviar conversões

Três formas de confirmar uma venda: postback server-to-server, pixel de imagem e container JavaScript.

Anunciante

A venda só existe para a Parceiroos quando o anunciante a confirma. Há três métodos. O postback server-to-server é o mais preciso e o primeiro a considerar; pixel e container JavaScript dependem do navegador do comprador e atendem quem não tem acesso ao backend.

#Antes de tudo: o click_id

Ao redirecionar o visitante, a plataforma anexa o identificador do clique à URL de destino. Esse valor precisa sobreviver até a confirmação da venda: cookie, sessão ou campo oculto do pedido. Sem click_id não há atribuição, e a conversão é recusada.

  • O postback aceita o clique em click_id, e também em clickId, clickid, cid, p1 e sub1.
  • Nas integrações por pixel e container, o handle.js captura e guarda o click_id sozinho.
  • Um click_id inventado não passa: a conversão é recusada.

#Postback server-to-server

O backend do anunciante chama a plataforma no instante em que a venda é confirmada, por exemplo na aprovação do pagamento.

URL de postback (GET ou POST)URL
https://SEU-DOMINIO/postback?token=SEU_TOKEN&click_id={CLICK_ID}&txn_id={TXN_ID}&saleAmount=VALOR_DA_VENDA&currency=BRL
Parâmetros do postback de entrada
ParâmetroObrigatórioDescrição
tokensimToken de postback do anunciante. Também em postbackToken, pb_token ou no header X-Postback-Token.
click_idsimIdentificador do clique capturado na landing page.
txn_idsimID único da transação no sistema do anunciante. É a chave de idempotência: o mesmo txn_id nunca gera duas conversões. Também em transaction_id, transactionId ou txid.
saleAmountdependeValor total da venda em decimais (199.90), para ofertas que pagam percentual. Também em sale_amount, orderAmount, total.
commission ou ratedependePara ofertas de comissão fixa: a comissão (commission, value, payout) ou o rate (rate, fixed) no lugar de saleAmount. A página da oferta indica qual.
currencynãoCódigo ISO da moeda; BRL por padrão. Também em cur.
statusnãoStatus na origem (approved, declined…). Fica guardado para conciliação; a conversão entra como PENDING e é validada pela operação.
order_id, external_idnãoIdentificador adicional do pedido, guardado para conciliação.
  • POST aceita JSON ou application/x-www-form-urlencoded; os campos podem ir no corpo ou na query string.
  • A resposta é 200 com um JSON de confirmação. Uma transação repetida devolve DUPLICATE_TRANSACTION e não cria registro.
  • Uma chamada por venda, sempre do servidor. Reenviar o mesmo txn_id é seguro.

#Pixel de imagem

Sem backend. O script de captura vai em todas as páginas, ou ao menos na landing page; a tag de imagem, apenas na página de obrigado. A imagem dispara a conversão ao carregar.

Pixel de imagemHTML
<!-- Em toda página (ou ao menos na landing page) -->
<script src="https://SEU-DOMINIO/js/platform/handle.js"></script>

<!-- Apenas na página de obrigado / confirmação -->
<img style="display:none;" src="https://SEU-DOMINIO/postback?token=SEU_TOKEN&click_id={CLICK_ID}&txn_id={TXN_ID}&currency=BRL&offer_id=ID_DA_OFERTA&saleAmount=VALOR_DA_VENDA">

#Container JavaScript

Na página de obrigado, o objeto window.PLATFORM_PIXEL recebe os dados reais do pedido e o pixel.js faz o resto: lê o objeto, recupera o click_id guardado pelo handle.js e envia a conversão.

Container JavaScriptHTML
<!-- Em toda página (ou ao menos na landing page) -->
<script src="https://SEU-DOMINIO/js/platform/handle.js"></script>

<!-- Apenas na página de obrigado / confirmação -->
<script>
  window.PLATFORM_PIXEL = {
    token: "SEU_TOKEN",
    clickId: "{CLICK_ID}",
    txnId: "{TXN_ID}",
    value: "VALOR_DA_VENDA",
    valueParam: "saleAmount",
    currency: "BRL",
    offerId: "ID_DA_OFERTA",
    network: "https://SEU-DOMINIO"
  };
</script>
<script src="https://SEU-DOMINIO/js/platform/pixel.js"></script>

#Ciclo de vida da conversão

StatusSignificado
PENDINGRecebida; aguarda validação.
VALIDATINGEm análise pela operação: antifraude, conferência do pedido.
APPROVEDConfirmada. A comissão passa a contar para o afiliado.
DECLINEDRecusada: cancelamento, estorno ou fraude.
PAIDComissão paga ao afiliado.

Afiliados: links e postback de saída

O link de tracking, os sub-IDs e a conversão entregue no sistema do afiliado.

Afiliado

Todo link de divulgação passa por https://SEU-DOMINIO/click. O painel entrega o link pronto na página de cada oferta; a estrutura é simples o bastante para ser montada à mão.

Link de tracking com sub-IDsURL
https://SEU-DOMINIO/click?offer=ID_PUBLICO_DA_OFERTA&aff=SEU_CODIGO&sub1=campanha-a&sub2=criativo-3
ParâmetroDescrição
offerID público da oferta, exibido na página da oferta.
affCódigo do afiliado. Também em affiliateCode.
sub1sub5Sub-IDs livres para campanhas, criativos e fontes. Ficam no clique e voltam no postback de saída.
Tokens de plataformaParâmetros conhecidos de plataformas de anúncio são guardados e devolvidos sem alteração: gclid · wbraid · gbraid · fbclid · ttclid · msclkid · twclid · irclickid · epik · utm_source · utm_medium · utm_campaign · utm_content · utm_term.

#Postback de saída

A URL do sistema do afiliado é cadastrada em Integrações → Postback. Quando uma conversão entra em um status assinado em Quando disparar seu postback, a Parceiroos renderiza a URL com as macros e a chama por HTTP GET ou POST. O padrão dispara apenas em APPROVED.

URL de postback de saídaURL
https://meu-tracker.com/postback?cid={click_id}&payout={payout}&status={status}&sub1={sub1}
  • As macros aceitam os dois delimitadores, {macro} e [macro]; a URL pode ser colada do jeito que a rede documenta.
  • Uma macro desconhecida sai literal, sem substituição: um erro de digitação aparece no log em vez de virar um parâmetro vazio.
  • Todo valor é codificado para URL. Um valor opcional inexistente vira string vazia, nunca 0.00.

#Macros disponíveis

Macros da conversão
MacroO que enviaExemploTambém aceita
{click_id}Identificador do clique gerado pela plataforma no redirecionamento.clk_9f2a4c1b7e8d3a5c6b0f{clickid} {clkid} {click}
{conversion_id}Identificador unico da conversao na plataforma. Corresponde ao action_id/apid das redes que usam esses nomes.cnv_7d21b93a4f6c{conversionid} {action_id} {actionid} {apid}
{txn_id}Identificador do pedido enviado pelo anunciante no postback de entrada.TX-88213{transaction_id} {transactionid} {external_id} {externalid} {order_id} {orderid} {txid} {tid}
{status}Status da conversao: PENDING, VALIDATING, APPROVED, DECLINED ou PAID.APPROVED
{payout}Comissao do afiliado, em unidades decimais. Corresponde ao price/commission das redes.35.00{commission} {price}
{payout_cents}Mesma comissao em centavos, para sistemas que nao aceitam decimais.3500{payoutcents} {commission_cents}
{sale_amount}Valor total do pedido para o cliente final, quando o anunciante envia. Corresponde ao totalPrice/total das redes. Vazio se nao informado.199.90{saleamount} {total_price} {totalprice} {revenue} {total} {order_value}
{sale_amount_cents}Mesmo valor da venda em centavos. Vazio se nao informado.19990{saleamountcents}
{currency}Codigo ISO da moeda da conversao.BRL
{offer_id}Identificador interno da campanha.cmp_4a8e1d02{campaign_id} {campaignid}
{offer_public_id}Identificador publico da campanha, o mesmo usado no link de tracking.OF-2Z9K{offerpublicid} {campaign_public_id} {offer}
{offer_name}Nome da campanha, ja codificado para URL.Conta Digital{campaign_name} {campaignname}
{affiliate_id}Identificador do afiliado dono da conversao.usr_31c7be40{affiliateid} {publisher_id}
{timestamp}Momento do disparo em segundos desde a epoca Unix.1772712000{unix} {ts}
{datetime}Momento do disparo em ISO 8601 (UTC).2026-03-05T12:00:00.000Z{date_time} {iso_date}
Macros de passagem: só existem se vierem no link de tracking
MacroOrigem no link
{sub1}?sub1=
{sub2}?sub2=
{sub3}?sub3=
{sub4}?sub4=
{sub5}?sub5=
{gclid}?gclid=
{wbraid}?wbraid=
{gbraid}?gbraid=
{fbclid}?fbclid=
{ttclid}?ttclid=
{msclkid}?msclkid=
{twclid}?twclid=
{irclickid}?irclickid=
{epik}?epik=
{utm_source}?utm_source=
{utm_medium}?utm_medium=
{utm_campaign}?utm_campaign=
{utm_content}?utm_content=
{utm_term}?utm_term=

Redes e integradoras externas

O modelo geral para qualquer sistema que peça as macros da plataforma.

Rede externa

Um tracker, uma rede ou o backend de um parceiro precisa de duas coisas: o token de clique dele no link de tracking e esse mesmo token de volta no postback de saída. O catálogo de macros também é publicado em JSON em https://SEU-DOMINIO/api/postback-macros, pronto para ser encaminhado.

#Exemplo completo: rede externa

O exemplo usa uma rede fictícia que documenta o postback dela com os campos [click_token], [action_id], [price] e [total]. Os nomes mudam de rede para rede; o mecanismo não.

Campo da rede → macro
Campo da redeMacro ParceiroosObservação
ID da contaValor fixo informado pela rede. Vai literal na URL.
[click_token]{sub1}Token de clique da rede. Entra no link e volta idêntico.
[action_id]{conversion_id}ID da conversão na plataforma.
[price]{payout}Comissão da conversão.
[total]{sale_amount}Valor do pedido. Vazio quando o anunciante não informa.
  1. Link de tracking

    A rede coloca o token dela em sub1; o valor fica guardado com o clique.

  2. URL de postback

    Em Integrações → Postback, a URL da rede entra com os campos dela trocados pelas macros. Em Quando disparar seu postback, os status que devem notificá-la.

  3. O que a rede recebe

    A URL final, já renderizada, fica no log de postback de saída.

1. Link de trackingURL
https://SEU-DOMINIO/click?offer=ID_PUBLICO&aff=CODIGO&sub1=[click_token]
2. URL de postback cadastradaURL
https://rede-exemplo.com/postback/ID_DA_CONTA?token={sub1}&action_id={conversion_id}&price={payout}&total={sale_amount}
3. O que a rede recebeURL
https://rede-exemplo.com/postback/ID_DA_CONTA?token=cca6a691-8ded-6ddf-e979-01503768f7eb.76066&action_id=cnv_7d21b93a4f6c&price=1.00&total=10.00

#Como o sale_amount é preenchido

{payout} é a comissão e sempre existe. {sale_amount} é o valor do pedido e só existe quando o anunciante o envia no postback de entrada em sale_amount, saleAmount, total_price, totalPrice, order_value ou total. Outro nome pode ser mapeado em Integrações → Postback do anunciante. Se a rede exige um número, {payout} serve nos dois campos.

Redes de afiliados

Guia por rede, nas duas direções: a rede como afiliada do seu programa e a rede como anunciante das suas ofertas.

Rede externa

Uma rede de afiliados pode ocupar dois lugares no seu programa. Como afiliada, ela envia tráfego e recebe a conversão pelo postback de saída. Como anunciante, você roda as ofertas dela: o destino da oferta é o link de afiliado da rede, com o seu {click_id} no sub-ID, e o postback dela entrega a venda no seu postback de entrada. Cada guia abaixo cobre as direções que a rede oferece.

Actionpay

Rede CPA com operação forte na América Latina e no Leste Europeu.

Testado na plataforma

A rede é cadastrada como afiliado do seu programa. O token de clique dela viaja no seu link de tracking e volta na URL de postback de saída.

A Actionpay envia tráfego com [click].[source] no link e recebe a conversão no endpoint dela.

1. Link de tracking com o token da redeURL
https://SEU-DOMINIO/click?offer=ID_PUBLICO&aff=CODIGO_DA_REDE&actionpay=[click].[source]
2. URL de postback de saída a cadastrarURL
https://apypp.com/ok/AIM_ID.png?actionpay={actionpay}&apid={conversion_id}&price={payout}&totalPrice={sale_amount}
Campo da rede → macro da plataforma
Campo da redeMacroObservação
AIM_IDID numérico do programa, fornecido pela Actionpay. Fixo na URL.
[click].[source]{actionpay}Token do clique. Entra no link e volta idêntico.
apid{conversion_id}ID da conversão na plataforma.
price{payout}Comissão da conversão.
totalPrice{sale_amount}Valor do pedido. Vazio quando o anunciante não informa.
  • A rede entra como afiliado do programa; o código dela vai em aff.
  • A URL de postback é cadastrada em Integrações → Postback do afiliado, com os status que devem notificar a rede.
  • O token também pode viajar em sub1 e voltar em {sub1}; o resultado é o mesmo.

Assistentes de IA e servidor MCP

Claude Code, Cursor ou qualquer cliente MCP gera e aplica a integração a partir das ofertas reais.

Desenvolvedor

A Parceiroos expõe um servidor Model Context Protocol. Com uma chave, o assistente do anunciante lista as ofertas, gera o snippet com token e ID reais, aplica no projeto e confirma se as conversões chegaram. O escopo é sempre o das ofertas do dono da chave.

Incluído no plano desta plataforma

Clientes compatíveis

  • Claude
  • ChatGPT
  • Cursor
  • Windsurf
  • Hermes
  • OpenClaw

Conecte em um comando

Claude CodeShell
claude mcp add --transport http plataforma https://SEU-DOMINIO/api/mcp --header "Authorization: Bearer mcp_SUA_CHAVE"
  • Claude Claude Code e Claude Desktop: comando claude mcp add ou o JSON genérico.
  • ChatGPT Conector MCP remoto (Developer mode) apontando para /api/mcp com o header de autorização.
  • Cursor Bloco mcpServers no arquivo de configuração do editor.
  • Windsurf Mesmo bloco mcpServers, na configuração do Cascade.
  • Hermes Servidor MCP por HTTP: mesma URL, mesmo header.
  • OpenClaw Qualquer agente aberto que fale MCP por HTTP.
  1. Chave

    Configurações → API & MCP → Criar chave. A chave (prefixo mcp_) é exibida uma única vez.

  2. Cliente

    O comando abaixo no terminal do projeto que recebe a integração, ou a configuração JSON genérica.

  3. Pedido

    No assistente: “liste minhas ofertas e gere a integração por postback da oferta X”. Aplicado o snippet, um segundo pedido verifica.

#Conectar um cliente

Claude CodeShell
claude mcp add --transport http plataforma https://SEU-DOMINIO/api/mcp --header "Authorization: Bearer mcp_SUA_CHAVE"
Configuração genérica (Cursor, Claude Desktop e outros)JSON
{
  "mcpServers": {
    "plataforma": {
      "type": "http",
      "url": "https://SEU-DOMINIO/api/mcp",
      "headers": {
        "Authorization": "Bearer mcp_SUA_CHAVE"
      }
    }
  }
}

#Ferramentas disponíveis

FerramentaArgumentosO que faz
list_offerslimit?Lista as ofertas do tenant com seus IDs públicos.
get_offerofferIdDetalhes de uma oferta por ID público, ID interno ou slug.
generate_integrationofferId, methodSnippet pronto para POSTBACK, PIXEL ou JAVASCRIPT_CONTAINER, com o passo a passo.
verify_integrationofferIdConfirma se a oferta já recebeu conversões e mostra a mais recente.
  • Transporte: Streamable HTTP, sem estado, resposta única em JSON (JSON-RPC 2.0).
  • Autenticação: header Authorization: Bearer mcp_… em toda chamada. Chaves são revogáveis a qualquer momento.
  • Sem cliente MCP, a página da oferta gera um prompt completo para qualquer assistente.

Depuração e perguntas frequentes

Onde olhar quando uma conversão não aparece ou um postback não chega.

Todos
SintomaOnde olhar
A conversão não aparece no painelAdmin → Logs de postback guarda tudo o que chegou do anunciante, com o motivo de recusa: token inválido, click_id ausente, duplicada.
A rede não recebe o postback de saídaO status assinado em Quando disparar seu postback. Cada disparo fica registrado com URL final, método, status HTTP e erro.
A URL no log mostra {alguma_coisa} literalA macro não existe. A tabela de macros lista nomes e aliases.
totalPrice chega vazioO anunciante não enviou o valor da venda. O parâmetro pode ser mapeado em Postback do anunciante, ou {payout} ocupa o campo.
O pixel dispara, nada é registradoO handle.js precisa carregar na landing page para capturar o click_id. O postback server-to-server elimina essa dependência.
Conversão duplicadaReenvios com o mesmo txn_id são ignorados por desenho. Um txn_id novo só para vendas diferentes.
Parceiroos © 2026Documento gerado em 07 de setembro de 2026