Documentation Index
Fetch the complete documentation index at: https://docs.troqpay.com/llms.txt
Use this file to discover all available pages before exploring further.
Autenticação
Toda chamada para a API da troqpay precisa de uma chave válida. Sem ela, a requisição não passa.O que você precisa saber
Bearer token
Toda requisição autenticada usa o header
Authorization: Bearer ....Mesmo endpoint para os dois ambientes
Você continua usando
https://api.troqpay.com. O ambiente muda de acordo com a chave.Chaves de teste
Use prefixo
trq_test_ para homologação e validação do fluxo.Chaves de produção
Use prefixo
trq_live_ para cobranças reais.Header obrigatório
URL-base
Acesso a produção
Chavestrq_live_ só funcionam quando sua conta está marcada como APPROVED para produção. Antes disso, chamadas de produção retornam 403 forbidden com uma mensagem relacionada ao recurso chamado.
Os quatro estados possíveis da sua conta são:
| Estado | O que significa |
|---|---|
NOT_REQUESTED | Você ainda não pediu acesso à produção |
PENDING_REVIEW | Você pediu, e o time da troqpay está analisando |
APPROVED | Você pode usar trq_live_ em todas as rotas suportadas |
REJECTED | A troqpay rejeitou; veja o motivo no app |
O bloqueio se aplica a
POST /v1/checkouts, GET /v1/balance e saques em produção. A consulta GET /v1/checkouts/{checkoutId} continua funcionando mesmo em contas que não estão APPROVED, para você ler checkouts antigos.Permissões da chave
Nem toda chave pode chamar todos os recursos. Por padrão, uma chave server-side permite criar/consultar checkouts e ler saldo conforme o ambiente dela. Para criar ou consultar saques pela API, a chave precisa ter permissão de saque.Idempotência
Quando você cria um checkout, mande também o headerIdempotency-Key. Para criar um saque pela API, esse header é obrigatório.
409 idempotency_conflict.
Outros pontos importantes:
- a chave não tem prazo de validade — ela fica associada ao recurso para sempre
- a primeira criação devolve
201 Created. Uma reentrega idempotente (mesma chave, mesmo corpo) devolve200 OKcom o recurso já existente - em checkouts, a API trima o valor; uma string vazia depois do trim é tratada como se você não tivesse enviado a chave
- em saques, não enviar uma chave válida retorna
400 idempotency_key_required
Request-Id
Toda resposta da API inclui o headerRequest-Id no formato req_<24 hex>.
Você pode também enviar seu próprio identificador na requisição em Request-Id ou X-Request-Id. Quando você manda, a API ecoa o mesmo valor de volta. Quando você não manda, ela gera um.
Use esse campo para correlacionar logs do seu sistema com o que aconteceu na troqpay quando precisar abrir um suporte.
Boas práticas
- guarde suas chaves em variáveis de ambiente
- nunca exponha segredos no front-end
- use chaves separadas para teste e produção
- revogue a chave imediatamente em caso de suspeita de vazamento
Onde isso costuma ser configurado
No fluxo mais comum, você vai:- gerar a chave no
app.troqpay.com - salvar o segredo no seu gerenciador de segredos
- usar a chave no backend
- manter teste e produção em variáveis separadas
Erros comuns
| HTTP | Código | O que normalmente significa |
|---|---|---|
401 | unauthorized | Chave ausente, mal formatada, inválida ou revogada. A API sempre devolve unauthorized em 401 — confira a message para o detalhe. |
403 | forbidden | Sua conta ainda não tem acesso a produção, ou a chave não tem permissão para o recurso. |
403 | api_key_scope_forbidden | A chave não tem permissão para o recurso chamado. |
403 | test_withdrawals_not_supported | Saques só estão disponíveis em produção. |
429 | rate_limited | Limite de requisições excedido. Faça retry com backoff. |
Próximos passos
Precisa de ajuda para seguir?
Fazer o Quickstart
Use uma
trq_test_ para validar seu primeiro checkout sem depender de produção.Revisar o sandbox
Confirme como separar os ambientes e o que observar nas respostas de teste.
Abrir o app
Gere ou revise suas chaves diretamente no app da troqpay.

