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
Se
key_type não for informado, o sistema assume cpf como padrão e valida o key_value como CPF.Taxa de saque (discount_fee)
O campo discount_fee controla se a taxa de saque é descontada do valor transferido ou acrescida ao valor total debitado da conta.
Exemplo com
discount_fee: true (padrão):
Você solicita R 2,00 (200 centavos):
- Valor debitado da conta: R$ 500,00
- Valor transferido (
liquid_amount): R$ 498,00
discount_fee: false:
Você solicita R 2,00 (200 centavos):
- Valor debitado da conta: R$ 502,00
- Valor transferido (
liquid_amount): R$ 500,00
Tipos de chave PIX aceitos
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.1
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.2
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.3
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.4
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.5
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.6
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.7
Saldo disponível
O usuário deve ter saldo disponível suficiente para cobrir o saque. O saldo é verificado em tempo real no momento da requisição.
- Com
discount_fee: true(padrão), o saldo deve cobrir o valor deamount. - Com
discount_fee: false, o saldo deve cobrir o valor deamountmais as taxas de saque.
400 Bad Request com os detalhes do saldo.8
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.9
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.10
Valor líquido após taxas
Após o cálculo das taxas de saque, o valor líquido transferido deve ser maior que R$ 0,00.
- Com
discount_fee: true(padrão), a taxa é descontada deamount— oliquid_amountdeve ser positivo após o desconto. - Com
discount_fee: false, oliquid_amounté igual aoamountsolicitado; a taxa é acrescentada ao total debitado da conta.
400 Bad Request.11
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.12
Processamento na adquirente
Se o saque for auto-aprovado, a comunicação com a adquirente de cash-out deve ser bem-sucedida para que a transferência PIX seja realizada.Se houver falha na comunicação, a API retorna
500 Internal Server Error.Resposta de sucesso
Se todas as validações passarem e o saque for processado com sucesso, a API retorna201 Created com os seguintes dados: