Introdução à API
A LeonaPay Gateway API é REST. Todas as chamadas são feitas por HTTPS, os corpos usam JSON e os endpoints são versionados em /api/v2/.
Ambientes
A própria credencial determina o ambiente; nenhuma configuração adicional é necessária.
Credenciais de Sandbox e Produção são independentes e podem ser gerenciadas no painel.
| Ambiente | Base URL |
|---|---|
Sandbox (testes) | https://sandbox.api.leonapay.com.br |
Produção | https://api.leonapay.com.br |
Autenticação
Inclua sua chave no header
x-api-key. Uma chave ausente ou inválida retorna 401; uma chave sem permissão retorna 403.curl https://api.leonapay.com.br/api/v2/transactions/{id} \
+ --header 'Accept: application/json' \
+ --header 'x-api-key: {your_api_key}'Formato da requisição
Nas requisições com corpo, envie os headers abaixo.
| Header | Valor |
|---|---|
Content-Type | application/json |
Accept | application/json |
x-api-key | Sua chave de API |
Idempotência
Endpoints POST aceitam
idempotency-key. Repetir a mesma chave retorna o resultado original e evita duplicidade após falhas de rede.--header 'idempotency-key: {unique_uuid_per_payment}'Rastreamento
Toda resposta inclui o header
RequestId. Informe esse valor ao suporte para rastrear a requisição de ponta a ponta.Respostas
O campo
success indica o resultado. Códigos próprios aparecem em onpayCode e onpayDescription.{
"success": true,
"onpayCode": "ONP200",
"onpayDescription": "Operation successfully completed",
"data": { "id": "pay_01J..." }
}Limites de uso
Os limites são calculados por IP em uma janela móvel de cinco minutos. Ao excedê-los, a API responde 429.
| Endpoint | Limite |
|---|---|
POST /api/v2/payments | 200 / 5 min |
POST /api/v2/refunds | 200 / 5 min |
Global por IP | 1.000 / 5 min |
Paginação
Coleções aceitam
pageNumber e pageSize. A resposta informa a página, o tamanho e os totais.{
"data": [],
"pagination": {
"pageNumber": 1, "pageSize": 10,
"total": 100, "totalAvailable": 100
}
}