API Lume · v1

Conta, PIX e extrato por API

Abra a conta de pagamento do seu cliente, consulte saldo e extrato, cadastre chaves PIX, transfira e cobre por QR Code. Uma chave de sandbox sai em uma chamada, sem cadastro.

Pegue uma chave de sandbox

Sem cadastro e sem aprovação. Você recebe a chave e uma conta de testes isolada, com saldo fictício.

5 chaves por e-mail por dia, e da mesma origem 10 de imediato e depois uma por minuto. A chave expira depois de 30 dias sem uso e aceita 60 requisições por minuto. Nenhum dado real deve ser enviado ao sandbox.

A primeira chamada

Se você preferir o terminal, o passo acima também é uma requisição. Estas duas linhas levam de zero a uma resposta real do sandbox:

1. peça a chave
curl -X POST https://sandbox.api.lumecoding.com/v1/sandbox/keys \
  -H 'Content-Type: application/json' \
  -d '{"email":"[email protected]","company":"Sua Empresa"}'

A resposta traz apiKey e uma conta de testes com R$ 5.000,00 de saldo fictício. Guarde a chave: ela aparece uma vez só.

2. use a chave
curl https://sandbox.api.lumecoding.com/v1/accounts/balance \
  -H 'X-API-Key: lume_sk_sandbox_sua_chave_aqui'
resposta
{
  "balanceCents": 500000,
  "heldCents": 0,
  "currency": "BRL",
  "asOf": "2026-09-05T14:00:00Z"
}

Transferir

A conta de testes já tem saldo, e o sandbox tem contas fictícias para receber. Uma transferência PIX de R$ 50,00:

POST /v1/pix/transfers
curl -X POST https://sandbox.api.lumecoding.com/v1/pix/transfers \
  -H 'X-API-Key: lume_sk_sandbox_sua_chave_aqui' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: 6f1e2a94-7c3d-4b58-9e21-0a8c5d3f7b62' \
  -d '{
    "key": "[email protected]",
    "amountCents": 5000,
    "description": "Pagamento da nota 8841"
  }'

O que a resposta diz

A transferência responde 202, e não 201: ela foi aceita, mas o desfecho pode ainda não existir. Acompanhe pelo status da transação.

StatusO que aconteceuO que fazer
PROCESSINGEnviada ao arranjo, aguardando liquidação.Consulte GET /v1/transactions/{id}.
COMPLETEDLiquidada.Nada.
HELD_FOR_REVIEWO motor de risco reteve. riskSignals explica o que chamou atenção e o que foi conferido e está normal.O titular decide em POST /v1/transactions/{id}/review. Bloquear devolve o dinheiro na hora.
FAILEDRecusada pelo arranjo.Leia code no erro. Tabela de códigos.

Módulos que a instalação liga

Conta, saldo, extrato, limites e segurança estão sempre lá. O resto é funcionalidade do catálogo: cada instalação liga só o que oferece, e GET /v1/features, público e sem credencial, diz o que está ligado. Os módulos abaixo nascem desligados e estão em construção. São só de sessão de cliente, e chave de API recebe 403 FORBIDDEN — com uma exceção: a tabela e a cotação de tarifas (GET /v1/fees e GET /v1/fees/quote) a chave lê com accounts:read.

MóduloFuncionalidadeNa referência
Planos e assinaturassubscriptionsAssinaturas
Portal do estabelecimentomerchant_portalEstabelecimento
Rede de indicaçãoaffiliate_network (com referrals)Indicação
Benefícios e vitrinemarketplaceBenefícios
Tarifas por serviçoservice_feesTarifas
Portabilidade e reivindicação de chave PIXpix_key_claimsPIX
Abertura de conta de empresa MEI e EIbusiness_opening_ownAbertura de conta

Com o módulo desligado, as rotas dele respondem 403 FEATURE_DISABLED, com details.feature dizendo qual. Não repita nem troque de credencial: esconda da tela o que não está ligado. A exceção é a assinatura viva: GET /v1/subscription e POST /v1/subscription/cancel continuam valendo, para o cliente poder sair do plano a qualquer momento. Tabela de códigos.

Por onde seguir