Convierte bolívares o pesos a USDT
Convierte los VES o COP de tu saldo en USDT a una tasa cotizada, desde el portal o la API, y opcionalmente convierte una parte de cada pago en pesos automáticamente.
Qué vas a hacer
Pides una cotización, la aceptas dentro de 60 segundos y el monto de origen sale de tu saldo VES o COP. Los USDT se acreditan en tu saldo USDT cuando la conversión se completa. La tasa ya incluye el precio: no hay una comisión de conversión aparte.
- USDT habilitado en tu cuenta (y COP, para convertir pesos).
- Un saldo VES o COP para convertir.
- Un endpoint de webhook suscrito a
conversion.created,conversion.completedyconversion.canceled.
Pasos: en el portal
- Abre la tarjeta correcta
Bolívares: Portal → USDT, "Convert VES → USDT". Pesos: Portal → COP, "Convert COP → USDT".
- Obtén una cotización
Elige gastar un monto o recibir un monto de USDT, escríbelo y haz clic en Get quote.
- Confirma a tiempo
Revisa la tasa y ambos montos, y haz clic en Confirm conversion antes de que termine la cuenta regresiva de 60 segundos (o Refresh quote).
Pasos: con la API
- Revisa tu configuración
GET /v1/conversions/settingsmuestra si las conversiones están habilitadas, tu spread por moneda, tu mínimo en USDT, cualquier tope diario y la conversión automática. - Pide una cotización
POST /v1/conversions/quotesconsourceCurrency(VESpor defecto, oCOP) y exactamente un monto:sourceAmountotargetAmountUsdt. - Acéptala
POST /v1/conversionsconquoteId(y un encabezadoIdempotency-Key) dentro de 60 segundos. La cotización se puede usar una vez. - Espera a que se complete
En Test se completa en la misma solicitud. En Live puede quedar
PENDINGmientras VEXPay entrega los USDT, normalmente el mismo día hábil (una aceptada fuera de horario o en fin de semana se completa el siguiente día hábil): reacciona aconversion.completed, no bloquees esperando la solicitud. Mientras esté pendiente puedes cancelarla conPOST /v1/conversions/:id/cancely recuperar el monto de origen completo.
curl --request POST "${API_URL}/v1/conversions/quotes" \
--header "content-type: application/json" \
--header "x-api-key: ${VEXPAY_API_KEY}" \
--data '{ "sourceCurrency": "VES", "targetAmountUsdt": 100 }'
curl --request POST "${API_URL}/v1/conversions" \
--header "content-type: application/json" \
--header "x-api-key: ${VEXPAY_API_KEY}" \
--header "Idempotency-Key: conv-2026-11-01" \
--data '{ "quoteId": "QUOTE_ID", "reference": "treasury-nov" }'Convierte una parte de cada pago en pesos
Define un porcentaje entero de 0 (apagado) a 100 en Portal → COP → "Auto-convert COP payments", o con PATCH /v1/conversions/settings y {"autoConvert":{"COP":{"percent":50}}}. Aplica a los pagos en pesos completados después del cambio, y envía conversion.created con origin: "auto" después del payment.completed. Una parte por debajo de tu mínimo se omite y queda en COP.
Comprueba que funcionó
GET /v1/conversions/:idmuestraCOMPLETEDcontargetAmountUsdt.GET /v1/crypto/balancemuestra los USDT. Si convertiste dinero que seguía retenido, los USDT quedan retenidos hasta que termine esa retención original.
Si algo sale mal
| Síntoma | Causa probable | Qué hacer |
|---|---|---|
403 conversions_not_enabled | Conversiones, USDT o (para pesos) COP no habilitados | Pregunta a VEXPay. |
410 quote_expired | Pasaron más de 60 segundos | Pide una cotización nueva. |
409 quote_used | La cotización ya fue aceptada | Lee la conversión existente, o pide una cotización nueva. |
422 amount_below_minimum | Por debajo de tu mínimo en USDT | Convierte más (mira tu configuración). |
422 insufficient_balance | Más que tu saldo VES o COP | Baja el monto; revisa GET /v1/balance o GET /v1/cop/balance. |
422 daily_limit_exceeded | Alcanzaste tu tope diario | Espera al día siguiente, o pregunta a VEXPay. |
503 rate_unavailable | No hay una tasa de mercado reciente | Reintenta en unos minutos. |
Relacionado: Convertir VES o COP a USDT · Cobra en bolívares, recibe USDT · Receta: Bs entran, USDT salen