Realizando um saque PIX para uma chave fixa

Este endpoint permite realizar saques PIX para chaves PIX fixas (CPF, CNPJ, EMAIL, PHONE, RANDOM). A operação é processada de forma assíncrona e o status é atualizado via webhooks.

Obs.: O pagamento deve ser feito por uma conta bancária com o mesmo CPF ou CNPJ do usuário.

📍 Endpoint

POST https://api.etherglobalassets.com/pix/withdraw/pix-key

🧾 Cabeçalhos obrigatórios (Headers)

Cabeçalho

Valor

Descrição

Authorization

Bearer <token>

Token JWT de autenticação

Content-Type

application/json

Formato do corpo da requisição

🧰 Corpo da Requisição (JSON)

{
  "amount": 10000,
  "pixKey": "user@example.com",
  "pixKeyType": "EMAIL",
  "description": "Saque PIX para conta pessoal"
}

Explicação dos campos:

Campo

Tipo

Obrigatório

Descrição

amount

number

Valor em centavos (mín: 100, máx: 50.000.000)

pixKey

string

Chave PIX destino (deve ser válida para o tipo especificado)

pixKeyType

enum

Tipo da chave PIX (EMAIL, CPF, CNPJ, PHONE, RANDOM)

description

string

Descrição da operação (máx: 500 caracteres)

Tipos de Chave PIX Suportados:

Tipo

Formato

Exemplo

EMAIL

Email válido

"user@example.com"

CPF

11 dígitos

"12345678901"

CNPJ

14 dígitos

"12345678000199"

PHONE

Telefone com DDD

"11999999999"

RANDOM

Chave aleatória

"550e8400-e29b-41d4-a716-446655440000"

📌 Exemplo com curl

curl https://api.etherglobalassets.com/pix/withdraw/pix-key \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "amount": 10000,
    "pixKey": "user@example.com",
    "pixKeyType": "EMAIL",
    "description": "Saque PIX para conta pessoal"
  }'

Dica: Substitua <token> pelo seu JWT de autenticação válido e ajuste os valores conforme necessário.

Resposta esperada (HTTP 200 - OK)

{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "uuid": "550e8400-e29b-41d4-a716-446655440000",
  "userId": "123e4567-e89b-12d3-a456-426614174000",
  "tenantId": "tenant-123",
  "qrCodeId": null,
  "pixKey": "user@example.com",
  "e2e": "",
  "pixKeyType": "EMAIL",
  "type": "WITHDRAW",
  "amount": 10000,
  "description": "Saque PIX para conta pessoal",
  "status": "PENDING",
  "providerReferenceId": null,
  "expireAt": "2025-01-31T23:59:59.000Z",
  "executedAt": null,
  "provider": null,
  "createdAt": "2025-01-31T10:00:00.000Z",
  "updatedAt": "2025-01-31T10:00:00.000Z",
  "senderInfo": null,
  "receiverInfo": null,
  "feeBatchId": null,
  "feeDistributionCompletedAt": null,
  "feeDistributionMetadata": null
}

Explicação da resposta:

Campo

Tipo

Descrição

id

string

ID único da transação PIX

uuid

string

UUID único da transação

userId

string

ID do usuário que solicitou o saque

tenantId

string

ID do tenant

qrCodeId

string/null

ID do QR Code (null para saques)

pixKey

string

Chave PIX destino

e2e

string

End-to-end ID (preenchido após confirmação)

pixKeyType

enum

Tipo da chave PIX

type

enum

Tipo da operação (sempre “WITHDRAW”)

amount

number

Valor em centavos

description

string

Descrição da operação

status

enum

Status da transação

providerReferenceId

string/null

ID de referência do provider

expireAt

string

Data de expiração

executedAt

string/null

Data de execução

provider

string/null

Nome do provider

createdAt

string

Data de criação

updatedAt

string

Data da última atualização

Status da Transação:

Status

Descrição

PENDING

Transação criada, aguardando processamento

PROCESSING

Transação sendo processada pelo provider

CONFIRMED

Transação confirmada pelo provider

COMPLETED

Transação finalizada com sucesso

FAILED

Transação falhou

CANCELED

Transação cancelada

REFUNDED

Transação reembolsada

⚠️ Possíveis erros

Código

Erro

Causa comum

400

Bad Request

Valor inválido, saldo insuficiente ou campo obrigatório faltando

401

Unauthorized

Token inválido ou ausente

500

Internal Server Error

Erro interno do serviço

🎯 Como usar o saque PIX

Após receber a resposta, você pode:

  1. Monitorar o status: Verifique o campo status para acompanhar o processamento

  2. Aguardar confirmação: O saque é processado de forma assíncrona

  3. Receber webhook: Configure webhooks para receber atualizações automáticas

  4. Verificar execução: Use o campo executedAt para saber quando foi processado

⏰ Processamento assíncrono

  • Criação: Transação criada imediatamente com status PENDING

  • Enfileiramento: Adicionada à fila de processamento

  • Processamento: Provider processa a transação

  • Webhook: Status atualizado via webhook do provider

  • Finalização: Transação marcada como COMPLETED ou FAILED

🛡️ Limitações e restrições

FAÇA:

  • Use valores entre R$ 1,00 (100 centavos) e R$ 500.000,00 (50.000.000 centavos)

  • Verifique se tem saldo suficiente + taxas

  • Use chaves PIX válidas e pertencentes ao usuário

  • Configure webhooks para receber atualizações

NÃO FAÇA:

  • Usar valores fora dos limites permitidos

  • Tentar saques sem saldo suficiente

  • Usar chaves PIX de outros usuários

  • Ignorar o processamento assíncrono

🆘 Problemas comuns

“Estou recebendo erro 400!”

  • Verifique se o valor está dentro dos limites (R$ 1,00 a R$ 500.000,00)

  • Confirme se tem saldo suficiente

  • Verifique se a chave PIX é válida

“O saque não está sendo processado!”

  • Verifique se a chave PIX pertence ao usuário

  • Confirme se o status não está como FAILED

  • Aguarde o processamento assíncrono

“Erro 401!”

  • Verifique se o token de autenticação é válido

  • Faça uma nova autenticação se necessário

📞 Suporte

Se nada funcionar:

  1. Verifique os valores e limites

  2. Confirme a autenticação está válida

  3. Entre em contato com nossa equipe de suporte

Mais informações sobre esse endpoint:

Acesse aqui