Comprando criptomoedas

Este endpoint permite comprar criptomoedas usando saldo disponível na conta. A operação pode ser simulada ou executada de forma real.

📍 Endpoint

POST https://api.etherglobalassets.com.br/exchange/purchase

🧾 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": 100,
  "token": "USDT",
  "network": "Polygon",
  "isSimulation": true
}

Explicação dos campos:

Campo

Tipo

Obrigatório

Descrição

amount

number

Valor da compra em centavos (ex: 1 real = 100 centavos)

token

enum

Token que deseja comprar (BTC, ETH, USDC, USDT)

network

enum

Rede que deseja usar (Bitcoin, ERC20, Polygon, Tron)

isSimulation

boolean

Se deseja simular a compra ou não

Tokens Suportados:

Token

Nome

Descrição

BTC

Bitcoin

Primeira criptomoeda descentralizada

ETH

Ethereum

Plataforma de contratos inteligentes

USDT

Tether

Stablecoin atrelada ao dólar

USDC

USD Coin

Stablecoin regulamentada

Redes Suportadas:

Rede

Descrição

Bitcoin

Rede nativa do Bitcoin

ERC20

Rede Ethereum

Polygon

Rede Polygon (MATIC)

Tron

Rede Tron

📌 Exemplo com curl

curl https://api.etherglobalassets.com.br/exchange/purchase \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "amount": 500,
    "token": "USDT",
    "network": "Polygon",
    "isSimulation": true
  }'

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

✅ Resposta esperada (HTTP 200 - OK)

{
  "success": true,
  "orderId": "00000000-0000-0000-0000-000000000000",
  "pixId": null,
  "p2pTransferId": null,
  "p2pEndToEnd": null,
  "currentPrice": 5.00,
  "tradePriceAmount": 1.00,
  "parsedAmount": 5.00,
  "parsedFeeAmount": 0.10,
  "parsedNetAmount": 4.90,
  "token": "USDT",
  "network": "Polygon",
  "isSimulation": false,
  "newBalance": 1000.00,
  "transactionId": "11111111-1111-1111-1111-111111111111",
  "accountType": "CRIPTO",
  "message": "Compra processada com sucesso! O valor de R$ X,XX foi debitado de sua conta."
}

Explicação da resposta:

Campo

Tipo

Descrição

Exemplo

success

boolean

Indica se a operação foi bem-sucedida

true

orderId

string

ID único da ordem de compra

“00000000-0000-0000…”

pixId

string/null

ID do PIX associado (se houver)

null

p2pTransferId

string/null

ID da transferência P2P (se houver)

null

p2pEndToEnd

string/null

Identificador End-to-End P2P

null

currentPrice

number

Preço unitário do token no momento da compra

5.00

tradePriceAmount

number

Quantidade líquida de tokens adquirida

1.00

parsedAmount

number

Valor bruto da compra em reais

5.00

parsedFeeAmount

number

Valor da taxa cobrada em reais

0.10

parsedNetAmount

number

Valor líquido investido em reais

4.90

token

string

Símbolo do token comprado

“USDT”

network

string

Rede blockchain utilizada

“Polygon”

isSimulation

boolean

Indica se a operação foi apenas uma simulação

false

newBalance

number

Novo saldo disponível após a operação

1000.00

transactionId

string

ID da transação financeira interna

“11111111-1111-1111…”

accountType

string

Tipo da conta utilizada

“CRIPTO”

message

string

Mensagem descritiva do resultado da operação

“Compra processada com sucesso!..”

⚠️ Possíveis erros

Código

Erro

Causa comum

400

Bad Request

Dados inválidos, saldo insuficiente ou campo obrigatório faltando

401

Unauthorized

Token inválido ou ausente

403

Forbidden

Usuário sem permissão para realizar a operação

500

Internal Server Error

Erro interno do serviço

🎯 Como usar a compra de criptomoedas

Após receber a resposta, você pode:

  1. Simular primeiro: Use isSimulation: true para ver os valores sem executar

  2. Verificar preços: Use currentPrice e tradePriceAmount para validar valores

  3. Confirmar taxas: Verifique parsedFeeAmount para entender os custos da operação

  4. Executar compra: Use isSimulation: false para realizar a compra real

  5. Confirmar execução: Verifique os campos success, transactionId e a message retornada

💰 Cálculo de valores

  • Valor em centavos: O campo amount deve ser enviado em centavos

  • Conversão para reais: Divida por 100 para obter o valor em reais

  • Exemplo: amount: 100 = R$ 1,00

  • Tokens recebidos: Use tradePriceAmount para saber quantos tokens receberá

🛡️ Limitações e restrições

FAÇA:

  • Sempre simule primeiro com isSimulation: true

  • Verifique se tem saldo suficiente antes da compra

  • Use redes compatíveis com o token escolhido

  • Confirme os valores antes de executar a compra real

NÃO FAÇA:

  • Usar valores acima do saldo disponível

  • Ignorar as taxas da operação

  • Usar redes incompatíveis com o token

  • Executar compras sem simular primeiro

🆘 Problemas comuns

“Estou recebendo erro 400!”

  • Verifique se o valor está dentro do saldo disponível

  • Confirme se todos os campos obrigatórios estão preenchidos

  • Verifique se o token e rede são compatíveis

“A compra não está sendo processada!”

  • Verifique se o campo success retornou false

  • Confirme se o saldo (newBalance) é suficiente

  • Verifique a message para entender o motivo do erro

“Erro 401!”

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

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

“Erro 403!”

  • Verifique se o usuário tem permissão para comprar criptomoedas

  • Entre em contato com o suporte se necessário

📞 Suporte

Se nada funcionar:

  1. Verifique o saldo disponível na conta

  2. Confirme os valores estão corretos

  3. Entre em contato com nossa equipe de suporte

Mais informações sobre o endpoint:

Acesse aqui