Tamino Docs

Managers (parceiros)

Um manager é um parceiro/revendedor da plataforma: cadastra tenants por conta própria e recebe uma comissão recorrente sobre a receita que a plataforma gera com eles. Diferente do resto desta documentação (API pública /v1, autenticada por API Key de um merchant), tudo aqui usa a mesma sessão de login do Backoffice — um manager é um papel administrativo (AdminUser.role = 'manager'), não um tipo novo de chave de API.

Nota

Um manager é criado por um super_admin, pelo Backoffice (Configurações → Usuários) ou pela API administrativa — com uma taxa de comissão (commissionRateBps, base 10000: 200 = 2%) definida na criação ou ajustada depois.

Autenticação (sessão, não API Key)

curl -c cookies.txt -X POST https://api.tamino.com.br/admin/auth/login \
  -H "Content-Type: application/json" \
  -d '{ "email": "[email protected]", "password": "..." }'

A resposta seta dois cookies: gw_admin_session (a sessão em si) e gw_csrf (token CSRF, legível por JS — não é httpOnly). Toda chamada de escrita (POST/PUT/PATCH/DELETE) precisa ecoar o valor de gw_csrf no header X-Csrf-Token — chamadas de leitura (GET) não precisam. Com curl, um cookie jar (-c/-b) resolve a sessão; o CSRF token precisa ser lido do jar e passado manualmente:

CSRF=$(grep gw_csrf cookies.txt | awk '{print $NF}')

curl -b cookies.txt -X POST https://api.tamino.com.br/admin/tenants \
  -H "Content-Type: application/json" \
  -H "X-Csrf-Token: $CSRF" \
  -d '{ "slug": "meu-novo-cliente", "name": "Meu Novo Cliente" }'
Limitação desta entrega

Sem MFA configurada na conta, o login acima já é suficiente. Com MFA ativa, POST /admin/auth/login exige um mfaCode adicional no corpo — mesmo fluxo de qualquer login do Backoffice.

Cadastrar um tenant

POST /admin/tenants provisiona tudo numa chamada só: o tenant, opcionalmente o tenant_admin dele (com senha manual ou gerada + enviada por e-mail) e a curadoria de providers que esse tenant pode ativar. O tenant criado vira automaticamente seu (o campo managerId é setado pelo backend a partir da sua própria sessão — nunca um valor que o corpo da request possa escolher).

curl -b cookies.txt -X POST https://api.tamino.com.br/admin/tenants \
  -H "Content-Type: application/json" \
  -H "X-Csrf-Token: $CSRF" \
  -d '{
    "slug": "loja-do-joao",
    "name": "Loja do João",
    "adminEmail": "[email protected]",
    "adminName": "João",
    "sendCredentialsByEmail": true,
    "allowedProviders": [
      { "providerKey": "simpay", "type": "pix" }
    ]
  }'
{
  "id": "9f1c2a4e-...",
  "slug": "loja-do-joao",
  "name": "Loja do João",
  "managerId": "a1b2c3d4-...",
  "plan": "standard",
  "active": true,
  "createdAt": "2026-09-14T18:00:00.000Z"
}

sendCredentialsByEmail: true dispara um e-mail com senha temporária pro tenant_admin — sem isso, adminPassword fica obrigatório no corpo. allowedProviders é opcional: sem ele, o tenant nasce sem restrição de curadoria (pode ativar qualquer provider disponível na plataforma).

Listar/consultar seus tenants

curl -b cookies.txt https://api.tamino.com.br/admin/tenants
curl -b cookies.txt https://api.tamino.com.br/admin/tenants/9f1c2a4e-...

Você só enxerga os tenants que você mesmo cadastrou — nunca os de outro manager, nem os criados por um super_admin diretamente. GET /admin/tenants/search (com paginação — page/ pageSize/archivedOnly) segue a mesma regra, mesmo formato {page, pageSize, total, items} usado no resto da API administrativa.

Comissão

A comissão é calculada automaticamente, venda a venda: um percentual (commissionRateBps) sobre a receita líquida da plataforma naquela venda (a tarifa que a plataforma cobra, já descontado o custo do provider) — nunca sobre o valor bruto transacionado, nunca um bônus fixo por tenant cadastrado. Sem venda, sem comissão; sem taxa definida pelo super_admin, também não.

Consultar o saldo acumulado

curl -b cookies.txt https://api.tamino.com.br/admin/ledger/accounts
[
  {
    "id": "3f2a1e9c-...",
    "type": "MANAGER_COMMISSION",
    "balanceInCents": 4875,
    "currency": "BRL"
  }
]

balanceInCents é sempre a comissão que ainda não foi sacada.

Sacar a comissão

Reaproveita o mesmo mecanismo de saque PIX (Payout) usado pelo resto da plataforma:

curl -b cookies.txt -X POST https://api.tamino.com.br/admin/payouts \
  -H "Content-Type: application/json" \
  -H "X-Csrf-Token: $CSRF" \
  -d '{
    "amountInCents": 4875,
    "pixKey": "[email protected]",
    "pixKeyType": "email"
  }'

GET /admin/payouts lista só os seus próprios saques de comissão. Ver a página Payouts pra detalhes de status/campos — o formato da resposta é o mesmo, um saque de manager só se distingue por não estar amarrado a nenhum tenant/merchant específico.

Limitação desta entrega

Não existe ainda uma tela dedicada no Backoffice pra um manager visualizar os próprios tenants ou a comissão acumulada — os endpoints acima, chamados com a mesma sessão de login que você já usa pra entrar no Backoffice, são o caminho de hoje.