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:
-
Simular primeiro: Use
isSimulation: truepara ver os valores sem executar -
Verificar preços: Use
currentPriceetradePriceAmountpara validar valores -
Confirmar taxas: Verifique
parsedFeeAmountpara entender os custos da operação -
Executar compra: Use
isSimulation: falsepara realizar a compra real -
Confirmar execução: Verifique os campos
success,transactionIde amessageretornada
💰 Cálculo de valores
-
Valor em centavos: O campo
amountdeve 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
tradePriceAmountpara 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
successretornoufalse -
Confirme se o saldo (
newBalance) é suficiente -
Verifique a
messagepara 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:
-
Verifique o saldo disponível na conta
-
Confirme os valores estão corretos
-
Entre em contato com nossa equipe de suporte
Mais informações sobre o endpoint:
Acesse aqui