Crear Orden
POST /v1/orders
Crea una orden de energía y devuelve una dirección de depósito. El usuario debe enviar exactamente amount TRX desde address_from a deposit_address para activar la entrega.
Cuerpo de la solicitud
| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
referral_code | string | no* | Tu código de referido. La comisión por esta orden se acredita a su propietario. Máx. 64 caracteres. |
address_from | string | sí | Dirección TRON que enviará el pago en TRX. |
address_to | string | sí | Dirección TRON que recibirá la energía y el ancho de banda. |
resources.duration | integer | sí | Duración del alquiler de recursos en horas. Debe ser 1. |
resources.energy | integer | no** | Cantidad de energía a entregar. |
resources.bandwidth | integer | no** | Cantidad de ancho de banda a entregar. |
address_to_activation | boolean | no | Si es true, activa address_to en cadena. Por defecto es false. |
* Obligatorio para la comisión de socio. Sin un referral_code válido, la orden no se atribuye a ninguna cuenta de socio.
** Al menos uno de resources.energy o resources.bandwidth debe ser mayor que cero.
Incluye siempre referral_code
Pasa referral_code en cada llamada a POST /v1/orders. Un referral_code ausente o vacío significa que no se genera ninguna comisión — incluso si la orden se completa exitosamente.
Ejemplos
curl -X POST https://api.tronzap.com/v1/orders \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"referral_code": "YOUR_CODE",
"address_from": "TKzxdSv2FZKQrEqkKVgp5DcwEXBEKMg2Ax",
"address_to": "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t",
"resources": {
"duration": 1,
"energy": 65000
}
}'const response = await fetch('https://api.tronzap.com/v1/orders', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Accept': 'application/json',
},
body: JSON.stringify({
referral_code: 'YOUR_CODE',
address_from: 'TKzxdSv2FZKQrEqkKVgp5DcwEXBEKMg2Ax',
address_to: 'TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t',
resources: { duration: 1, energy: 65000 },
}),
})
const { result } = await response.json()
// result.deposit_address — send result.amount TRX here
// result.order_id — save for polling$response = file_get_contents('https://api.tronzap.com/v1/orders', false, stream_context_create([
'http' => [
'method' => 'POST',
'header' => "Content-Type: application/json\r\nAccept: application/json",
'content' => json_encode([
'referral_code' => 'YOUR_CODE',
'address_from' => 'TKzxdSv2FZKQrEqkKVgp5DcwEXBEKMg2Ax',
'address_to' => 'TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t',
'resources' => ['duration' => 1, 'energy' => 65000],
]),
],
]));
$data = json_decode($response, true)['result'];
// $data['deposit_address'] — send $data['amount'] TRX hereimport requests
resp = requests.post('https://api.tronzap.com/v1/orders', json={
'referral_code': 'YOUR_CODE',
'address_from': 'TKzxdSv2FZKQrEqkKVgp5DcwEXBEKMg2Ax',
'address_to': 'TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t',
'resources': {'duration': 1, 'energy': 65000},
})
result = resp.json()['result']
# result['deposit_address'] — send result['amount'] TRX hereRespuesta
{
"code": 0,
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"result": {
"order_id": "01HZX5N6Q9TY3K2P0VWB7HRD4M",
"status": "new",
"deposit_address": "TLa2f6VPqDgRE67v1736s7bJ8Ray5wYjU7",
"amount": 2.69,
"currency": "TRX",
"expires_at": "2026-05-18T16:07:05+00:00",
"ttl": 3600
}
}Campos de la respuesta
| Campo | Tipo | Descripción |
|---|---|---|
order_id | string | ULID de la orden creada. Úsalo para consultar y cancelar. |
status | string | Siempre new para una orden recién creada. |
deposit_address | string | El usuario debe enviar TRX desde address_from a esta dirección. |
amount | number | Cantidad exacta de TRX a enviar. Cualquier diferencia no coincidirá con la orden. |
currency | string | Siempre TRX. |
expires_at | string | Marca de tiempo ISO-8601. La orden pasa automáticamente a expired después de esto. |
ttl | integer | Segundos restantes hasta expires_at. Generalmente 3600 (1 hora). |
Se requiere monto exacto y remitente correcto
La transferencia de TRX debe originarse desde address_from y ser exactamente amount TRX. Cualquier otro monto o dirección de remitente no coincidirá con la orden.
