Confirmar Intenção de Saque
Utilize este endpoint para efetivar um saque a partir de uma intenção criada em Criar Intenção de Saque.
É o segundo passo do fluxo em duas etapas. O valor, o destino e os demais dados já foram informados e validados na intenção, então aqui você envia apenas a chave de idempotência.
Ambientes Disponíveis
- Produção
https://api.gateway.com.br/core
Endpoint
- Método:
POST - Endpoint:
/withdrawal/intent/{id}/confirm - Autenticação: Bearer token
Path Params
| Nome | Tipo | Obrigatório | Descrição | Validações |
|---|---|---|---|---|
id | string (UUID) | Sim | intentId retornado por Criar Intenção de Saque | Deve ser UUID válido |
Request Body
ℹ️ Cada intenção vale para um saque só
Depois de confirmada, a intenção é consumida: uma segunda chamada com o mesmo intentId é recusada. E se os 5 minutos de validade tiverem passado, a intenção também não é mais aceita.
| Nome | Tipo | Obrigatório | Descrição | Validações |
|---|---|---|---|---|
idempotencyKey | string | Sim | Identificador único para evitar duplicações | Deve ter entre 8 e 255 caracteres |
Exemplo de Requisição
- cURL
- JavaScript
curl --request POST \
--url https://api.gateway.com.br/core/withdrawal/intent/553e8400-e29b-41d4-a716-436251480000/confirm \
--header 'Authorization: Bearer seu-token-jwt' \
--header 'Content-Type: application/json' \
--data '{
"idempotencyKey": "unique-key-12345"
}'
const response = await fetch('https://api.gateway.com.br/core/withdrawal/intent/553e8400-e29b-41d4-a716-436251480000/confirm', {
method: 'POST',
headers: {
'Authorization': 'Bearer seu-token-jwt',
'Content-Type': 'application/json'
},
body: JSON.stringify({
idempotencyKey: 'unique-key-12345',
})
});
const data = await response.json();
Resposta de Sucesso
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
id | string (UUID) | Sim | Identificador único do saque |
externalCode | string | Não | Seu código de referência |
amount | number | Sim | Valor do saque (inteiro em centavos) |
status | string (enum) - PENDING | Sim |
|
Exemplo de Resposta
{
"id": "553e8400-e29b-41d4-a716-436251480001",
"externalCode": "SAQUE-123",
"amount": 10000,
"status": "PENDING"
}
Possíveis Erros
| Código | Descrição | Solução |
|---|---|---|
| 401 | Credenciais inválidas | Verifique suas credenciais |
| 403 | Sem permissão/autorização | Contate o suporte |
| 422 | Dados inválidos ou faltando | Verifique o formato dos dados |
| 422 | Intenção não encontrada ou expirada | Crie uma nova intenção e reenvie |
| 422 | Intenção já utilizada | Crie uma nova intenção para cada saque |
| 422 | Validações | Contate o suporte |
| 429 | Muitas requisições | Aguarde e tente novamente |
| 500 | Erro interno | Contate o suporte |