Solicitar Deposito
Utilize este endpoint para criar depositos.
Ambientes Disponíveis
- Produção
https://api.unoip.com.br
Endpoint
- Método:
POST - Endpoint:
/deposit - Autenticação: Bearer token
Request Body
⚠️ Importante: Valores em Centavos
Todos os valores monetários (amount) devem ser enviados em centavos como números inteiros.
Exemplos:
- R$ 10,00 =
1000 - R$ 99,99 =
9999 - R$ 100,50 =
10050
NÃO use: 99.99, 10.00, valores negativos
USE: 9999, 1000 (sempre inteiros)
| Nome | Tipo | Obrigatório | Descrição | Validações |
|---|---|---|---|---|
amount | number | Sim | Valor do deposito (inteiro em centavos) | Deve ser inteiro em centavos; mínimo 1 (R$ 0,01) e máximo 10000000 (R$ 100.000,00) |
paymentMethod | string (enum) - PIX | Sim | Método de pagamento | Deve ser um enum válido |
webhookUrl | string (URL) | Não | URL HTTPS para receber notificações | Deve ser URL válida com https obrigatório; sem fragmento (#); host e TLD obrigatórios; query permitida |
externalCode | string | Não | Seu código de referência | Deve ter entre 8 e 255 caracteres |
idempotencyKey | string | Não | Identificador único para evitar duplicações | Deve ter entre 8 e 255 caracteres |
pix | object | Sim (se paymentMethod for PIX) | Dados do PIX (ver Sub-Objeto Pix) |
Sub-Objetos
Pix
| Campo | Tipo | Obrigatório | Descrição | Validações |
|---|---|---|---|---|
expirationSeconds | number (Default: 1800 (30 minutes)) | Não | Tempo para expiração do QRCode do PIX em segundos | Deve ser inteiro; mínimo 60; máximo 86400 |
Exemplo de Requisição
- cURL
- JavaScript
curl --request POST \
--url https://api.unoip.com.br/deposit \
--header 'Authorization: Bearer seu-token-jwt' \
--header 'Content-Type: application/json' \
--data '{
"amount": 500,
"paymentMethod": "PIX",
"webhookUrl": "https://sua-api.com/webhooks/deposit",
"externalCode": "TRANSACTION-123",
"idempotencyKey": "unique-key-12345",
"pix": {
"expirationSeconds": 600
}
}'
const response = await fetch('https://api.unoip.com.br/deposit', {
method: 'POST',
headers: {
'Authorization': 'Bearer seu-token-jwt',
'Content-Type': 'application/json'
},
body: JSON.stringify({
amount: 500,
paymentMethod: 'PIX',
webhookUrl: 'https://sua-api.com/webhooks/deposit',
externalCode: 'TRANSACTION-123',
idempotencyKey: 'unique-key-12345',
pix: {
expirationSeconds: 600,
},
})
});
const data = await response.json();
Resposta de Sucesso
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
id | string (UUID) | Sim | Identificador único do deposito |
externalCode | string | Não | Seu código de referência |
amount | number | Sim | Valor do deposito (inteiro em centavos) |
type | string (enum) - TRANSACTION | Sim | |
status | string (enum) - PIX_QRCODE_GENERATED | Sim |
|
pixResponse | object | Sim (se paymentMethod for PIX) | Dados do PIX (ver Sub-Objeto PixResponse) |
Sub-Objetos
PixResponse
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
uri | string | Sim | Copia e cola do QRCode |
qrCodeBase64 | string | Sim | Imagem do QRCode |
expirationDate | string | Sim | Data de expiração do QRCode |
Exemplo de Resposta
{
"id": "553e8400-e29b-41d4-a716-436251480000",
"externalCode": "TRANSACTION-123",
"amount": 500,
"status": "PIX_QRCODE_GENERATED",
"pixResponse": {
"uri": "00020126580014br.gov.bcb.pix0136123e4567-e89b-12d3-a456-426614174000",
"qrCodeBase64": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...",
"expirationDate": "2026-03-06T12:49:04.681Z"
}
}
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 | Validações | Contate o suporte |
| 429 | Muitas requisições | Aguarde e tente novamente |
| 500 | Erro interno | Contate o suporte |