Solana y Tron
Las redes Solana y Tron aparecen en GET /api/v1/networks junto a las redes EVM, con family definido como solana o tron. Consulta sus tokens, decimales y minimum_payment en la API; no mantengas tu propia lista. Las direcciones en estas redes usan su propio formato base58 en solicitudes, respuestas y webhooks.
En qué se diferencian de EVM
Sección titulada «En qué se diferencian de EVM»| EVM | Solana | Tron | |
|---|---|---|---|
| Dirección de pago | Una dirección de contrato. El destinatario queda fijado en la cadena al crear la dirección. | Una clave por pago, en manos del firmante de Invoise. | Una clave por pago, en manos del firmante de Invoise. |
| Custodia | Los fondos solo pueden ir al destinatario fijado en la cadena, menos la comisión. | Invoise retiene un pago solo hasta que lo transfiere a tu destinatario. | Invoise retiene un pago hasta que lo transfiere. No hay contrato de pago. |
| Destinatario | El recipient de la tienda |
PUT /shops/{shop_id}/solana-recipient |
PUT /shops/{shop_id}/tron-recipient |
| Delegado | Opcional | Ninguno | Ninguno |
| Tienda sandbox | Sí | No: 400 solana_sandbox_unavailable |
Sí |
Invoise activa Tron para un comercio a petición; pídeselo a soporte. Su minimum_payment es más alto que en otras redes.
Configura el destinatario
Sección titulada «Configura el destinatario»Una tienda necesita un destinatario de Solana o Tron antes de poder emitir en esa red. Sin uno, crear una factura o depósito devuelve 400 solana_setup_required o 400 tron_setup_required.
curl -X PUT 'https://platform.invoise.me/api/v1/shops/{shop_id}/solana-recipient' \ -H 'Authorization: Bearer <session-token>' \ -H 'Idempotency-Key: <saved-unique-key>' \ -H 'Content-Type: application/json' \ -d '{"address":"<your-solana-wallet>"}'Usa /tron-recipient para Tron. Configurarlo necesita una sesión de propietario; una clave de API de tienda solo puede leerlo. GET en la misma ruta devuelve {"address":"..."}, con una dirección vacía hasta que se configure una.
El destinatario se configura una sola vez. Enviar la misma dirección de nuevo tiene éxito; otra dirección devuelve 400 shop_addresses_immutable. Comprueba la dirección antes de guardarla.
| Red | Reglas |
|---|---|
| Solana | Usa una billetera normal, no una dirección derivada de un programa ni una dirección de Invoise: invalid_solana_address. La billetera ya debe tener una cuenta para el token; si no, crear una factura o depósito devuelve solana_recipient_token_account_required. Recibe primero ese token ahí una vez. |
| Tron | Una dirección con formato incorrecto devuelve invalid_tron_address o invalid_tron_checksum; una dirección de Invoise devuelve invalid_tron_recipient. El comercio necesita tener Tron activado, si no, merchant_network_disabled. |
Pagar a la billetera de Invoise
Sección titulada «Pagar a la billetera de Invoise»La billetera de Invoise vive en redes EVM. Una tienda creada con destino de pago wallet también envía ahí sus pagos de Solana: Invoise los transfiere mediante un puente a la billetera en una red EVM. Cuando el puente no es posible, emitir en Solana devuelve 400 solana_bridge_unavailable. GET /merchants/{merchant_id}/networks muestra wallet_bridge: true en una red Solana que admite el puente.
Los pagos de Tron no llegan a la billetera. Elegir la billetera para Tron se rechaza mientras no haya un puente de Tron listo, y emitir en Tron para una tienda cuyos pagos de Tron van a la billetera devuelve 400 tron_bridge_unavailable. Mantén Tron en su propia dirección.
Elige por familia de red con PATCH /shops/{shop_id}: solana_payout_target y tron_payout_target aceptan address o wallet. Consulta la referencia de la API.