Visão geral
Antes de realizar chamadas ao endpoint de solicitação de transferência, é importante compreender os campos aceitos, os tipos de chave PIX e as regras de negócio aplicadas. Toda requisição passa por uma série de validações em cadeia — se qualquer etapa falhar, a transferência não será processada e você receberá uma resposta de erro correspondente.Campos do payload
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
amount | integer | Sim | Valor do saque em centavos. Mínimo: 1000 (R$ 10,00). |
key_type | string | Não* | Tipo da chave PIX. Se omitido, assume cpf como padrão. |
key_value | string | Sim | Valor da chave PIX de destino. |
Se
key_type não for informado, o sistema assume cpf como padrão e valida o key_value como CPF.Tipos de chave PIX aceitos
| Tipo | Formato esperado no key_value | Validação |
|---|---|---|
cpf | 12345678909 ou 123.456.789-09 | Validado algoritmicamente (dígitos verificadores). |
cnpj | 12345678000190 ou 12.345.678/0001-90 | Validado algoritmicamente (dígitos verificadores). |
email | usuario@email.com | Validado como e-mail válido. |
phone | 11999999999 ou +5511999999999 | Deve ter entre 10 e 11 dígitos (sem o +55). |
random | a1b2c3d4-e5f6-7890-abcd-ef1234567890 | Deve ter no mínimo 32 caracteres alfanuméricos. |
Fluxo de validação
As verificações abaixo são aplicadas na ordem listada. A primeira falha interrompe o processamento e retorna o erro correspondente.Autenticação das credenciais
As credenciais
X-Public-Key e X-Secret-Key devem estar presentes nos headers da requisição, além de serem válidas e ativas.Se as credenciais estiverem ausentes, inválidas ou inativas, a API retorna 401 Unauthorized.Permissão da credencial
A credencial utilizada deve possuir permissão do tipo cashout (apenas saídas) ou all (ambas). Credenciais do tipo apenas entrada não podem solicitar transferências.Se a credencial não tiver permissão, a API retorna
403 Forbidden.Status da conta
A conta do usuário deve estar com o status approved (aprovada). Contas pendentes, em análise ou rejeitadas não podem solicitar saques.Se a conta não estiver aprovada, a API retorna
403 Forbidden.Conta não bloqueada
A conta do usuário não pode estar bloqueada. Contas bloqueadas perdem temporariamente o acesso a todas as funcionalidades da API.Se a conta estiver bloqueada, a API retorna
403 Forbidden.Validação dos campos
Os campos obrigatórios devem ser preenchidos com valores válidos. O tipo de chave PIX deve ser um dos aceitos (
cpf, cnpj, email, phone, random) e o key_value deve seguir o formato correspondente. CPF e CNPJ são validados algoritmicamente.Se houver erros de validação, a API retorna 422 Unprocessable Entity com os erros detalhados por campo.Valor mínimo
O valor do saque (
amount) deve ser de no mínimo 1.000 centavos (R$ 10,00).Se o valor for inferior ao mínimo, a API retorna 400 Bad Request.Saldo disponível
O usuário deve ter saldo disponível suficiente para cobrir o valor solicitado. O saldo é verificado em tempo real no momento da requisição.Se o saldo for insuficiente, a API retorna
400 Bad Request com os detalhes do saldo.Limite por solicitação
O valor não pode ultrapassar o limite por solicitação configurado para o usuário (se houver). Esse limite é definido individualmente por conta.Se o valor exceder o limite, a API retorna
400 Bad Request.Limite diário
O valor não pode ultrapassar o limite diário de saques restante do usuário. O limite considera a soma de todos os saques com status
paid e pending realizados no dia.Se o valor exceder o limite diário restante, a API retorna 400 Bad Request.Valor líquido após taxas
Após o cálculo das taxas de saque, o valor líquido que será transferido deve ser maior que R$ 0,00. Transferências que resultem em valor líquido zero ou negativo serão rejeitadas.Se o valor líquido for insuficiente, a API retorna
400 Bad Request.Horário de funcionamento
Dependendo da adquirente configurada, saques podem estar restritos ao horário comercial, das 09:00 às 22:00 (horário de Brasília).Se a solicitação for feita fora do horário permitido, a API retorna
400 Bad Request.Resposta de sucesso
Se todas as validações passarem e o saque for processado com sucesso, a API retorna201 Created com os seguintes dados:
| Campo | Tipo | Descrição |
|---|---|---|
data.id | string | UUID único do saque criado |
data.amount | integer | Valor solicitado em centavos |
data.liquid_amount | integer | Valor líquido que será transferido em centavos (após taxas) |
data.pix_key_type | string | Tipo da chave PIX utilizada |
data.pix_key | string | Valor da chave PIX de destino |
data.status | string | Status inicial do saque |
data.created_at | string | Data/hora de criação no formato YYYY-MM-DD HH:mm:ss |
Resumo dos códigos de resposta
| Código | Situação |
|---|---|
201 | Saque solicitado com sucesso |
400 | Regra de negócio violada (saldo, limites, valor, horário) |
401 | Credenciais ausentes, inválidas ou inativas |
403 | Sem permissão (credencial, conta não aprovada, conta bloqueada) |
422 | Erro de validação nos dados enviados |
500 | Erro interno ou falha na comunicação com a adquirente |