Documentação da API v1 · Conheça a Naut
v1

Reservar a chave do saque do painel

Reserva a chave de idempotência de um pedido de saque, para um duplo clique não virar dois. ELA NÃO SACA: nenhum centavo se move aqui.

POSThttps://api.navenaut.com/seller/withdrawals

Autenticação

A sessão do painel autentica esta rota, e ela é lida de forma autoritativa: não há parâmetro em que o chamador aponte para outra conta.

Esta rota não exige escopo nomeado — o que não quer dizer que ela seja aberta: sem a credencial acima ela recusa.

Exige sessão de vendedor. Tudo aqui é escopado pela sessão: não há parâmetro em que o chamador aponte para outra conta.

Parâmetros

Cabeçalho

NomeTipoDescrição
idempotency-keyobrigatóriotextoOBRIGATÓRIA. É ela que se está reservando. O MESMO valor com o MESMO corpo devolve a MESMA resposta e marca replayed; com corpo diferente, recusa.

Corpo da requisição

application/json.

CampoTipoDescrição
amountCentsobrigatóriointeiro (centavos)Quanto sacar, em centavos inteiros. Ele entra na assinatura da chave, e é ele que volta na resposta.
currencyum de: `BRL`, `USD`, `EUR`A moeda do saque.
{
  "amountCents": 129900,
  "currency": "BRL"
}

Respostas

200 · sucesso

{
  "replayed": true,
  "result": {
    "amountCents": 129900,
    "currency": "BRL"
  }
}

Chave reservada. replayed diz se esta foi a primeira reserva (false) ou a repetição de uma anterior (true), e result devolve o valor e a moeda que você enviou. Nenhum saldo foi lido, movido ou reservado: nem a LIBERAÇÃO de um saldo pendente, nem a EXECUÇÃO de um pagamento têm qualquer relação com esta chamada. Quem pede o saque de verdade é POST /payout/request.

400 · requisição inválida

O header idempotency-key não veio, ou começa por um início que a Naut reserva.

409 · conflito

A mesma chave de idempotência já foi usada com um corpo diferente.

Erros desta rota

StatusCódigoQuandoO que fazer
400IDEMPOTENCY_KEY_RESERVEDO cabeçalho idempotency-key começa por um início que a Naut reserva para as próprias chaves (checkout-plan:, subscription-attempt:, renewal:, reward-claim: ou kyc-identity-correction:). A recusa vem antes da reserva: nada foi reservado.Reenvie com outra chave, que não comece por nenhum desses inícios. Um UUID por pedido de saque serve.
400IDEMPOTENCY_KEY_REQUIREDA chamada chegou sem o cabeçalho idempotency-key, ou com ele em branco. Como é justamente a chave que esta rota existe para reservar, sem ela não há o que fazer: nada foi reservado.Gere um valor por pedido de saque, envie no cabeçalho e reenvie. Repetir sem a chave devolve sempre o mesmo 400.
409IDEMPOTENCY_FINGERPRINT_MISMATCHEsta chave já foi reservada antes com outro valor ou outra moeda. É o que impede o segundo clique de um botão com o valor trocado de herdar a reserva do primeiro.Para repetir o mesmo pedido, reenvie o valor e a moeda exatos da primeira reserva: a resposta volta igual, com replayed verdadeiro. Para um pedido de outro valor, gere uma chave nova.

Os códigos são estáveis e fazem parte do contrato. A lista completa, com todos os vocabulários, está na tabela de erros.

Próximo passo