Cotización de fiat a criptomonedas
Este endpoint le permite calcular con anticipación cuánto recibirá el cliente en criptomonedas al depositar un monto específico en moneda fiduciaria.
Utilice esta ruta para mostrar una "vista previa" o cotización en tiempo real en la pantalla de su usuario antes de que confirme la generación de la orden de depósito.
Endpoint
- Método: POST
https://api.xgateglobal.com/deposit/conversion/tether
Prueba de integración
Utilice el formulario a continuación para simular una conversión. El sistema obtendrá automáticamente los datos de la moneda BRL y calculará cuánto produciría en criptomonedas.
Probar: Cotización para Conversión
Solicitud
Debe enviar el encabezado de autenticación y el cuerpo JSON con el monto y el objeto de moneda.
Encabezados obligatorios
| Encabezado | Valor | Descripción |
|---|---|---|
Authorization | Bearer <tu_token> | El token JWT obtenido al iniciar sesión. |
Cuerpo (Request Body)
| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
amount | number | Sí | Monto en moneda fiduciaria que desea convertir. |
currency | object | Sí | El objeto de la moneda fiduciaria, obtenido desde la ruta de listado de monedas. |
Respuestas
Éxito (200 OK)
Devuelve el valor convertido, el acrónimo de la criptomoneda y la tasa de cambio utilizada en ese momento.
{
"amount": 0.186433,
"crypto": "USDT",
"fiatToCryptoExchangeRate": "R$ 5.364"
}
Errores comunes
| Estado | Mensaje | Posible causa |
|---|---|---|
| 401 | Unauthorized | • Token inválido o vencido. • Encabezado inválido o faltante. • IP no permitida. |
| 500 | Internal Server Error | Error interno del servidor. Contacte con soporte. |
Cómo usar
Esta ruta no genera una orden de pago; solo sirve para consulta.
Flujo recomendado (UX)
- Entrada: El usuario escribe "R$ 100.00" en su aplicación o sitio.
- Consulta: Su sistema llama a
POST /deposit/conversion/tetherenviando el monto 100 y el objeto de moneda BRL. - Visualización: La API devuelve que esto equivale a
18.64 USDT. Usted muestra: "Recibirá aproximadamente 18.64 USDT". - Acción: Si el usuario está de acuerdo, entonces llama a la ruta Crear orden de depósito (
POST /deposit).
Ejemplo práctico
Siga los pasos a continuación para realizar la cotización.
Paso 1: Ingrese el monto en BRL para la cotización:
{
"amount": 100,
"currency": {
"_id": "6728cba3******************",
"name": "BRL",
"type": "PIX",
"createdDate": "2024-11-04T16:04:50.019Z",
"updatedDate": "2024-11-07T02:23:38.606Z",
"__v": 0,
"symbol": "R$"
}
}
Paso 2: Debe obtener e inyectar el objeto de moneda dentro de currency:
{
"amount": 100,
"currency": {
"_id": "6728cba3******************",
"name": "BRL",
"type": "PIX",
"createdDate": "2024-11-04T16:04:50.019Z",
"updatedDate": "2024-11-07T02:23:38.606Z",
"__v": 0,
"symbol": "R$"
}
}
Puede obtener la lista de monedas haciendo clic aquí.
Integración
- Node.js
Este ejemplo de integración utiliza la librería Axios en Node.js.
Instalando Axios:
npm install axios
Ejemplo en JavaScript:
const axios = require("axios");
(async () => {
const email = "your_email@domain.com";
const password = "**********";
const amount = 10.90;
try {
const url_api = "https://api.xgateglobal.com"
const login = await axios.post(`${url_api}/auth/token`, { email, password });
const currencies = await axios.get(`${url_api}/deposit/company/currencies`, {
headers: {
"Authorization": `Bearer ${login.data.token}`
}
});
const { data } = await axios.post(`${url_api}/deposit/conversion/tether`, {
amount,
currency: currencies.data[0]
}, {
headers: {
"Authorization": `Bearer ${login.data.token}`
}
});
console.log(data); // Respuesta
} catch (error) {
console.log(error.response.data.message) // Error
}
})()