Crear cartera exclusiva
Crea una dirección de recepción exclusiva para un bindKey. Los depósitos futuros a esta dirección pertenecen permanentemente a ese bindKey.
Si se proporciona notifyUrl, las futuras órdenes de recarga creadas automáticamente para esta dirección exclusiva devolverán la llamada a ese URL primero. Esto es útil cuando cada sitio o aplicación recibe sus propias notificaciones de recarga para miembros.
Encabezados
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| x-api-key | string | Sí | Comerciante API Key. Utilice el valor que comienza con mch_ de la página de configuración del comerciante API. |
| x-merchant-uid | string | Sí | Merchant UID. |
| x-timestamp | string | Sí | Milisegundo de 13 dígitos timestamp. La desviación del reloj permitida por defecto es de 5 minutos. |
| x-nonce | string | Sí | Cadena aleatoria única para cada solicitud, hasta 128 caracteres. Se rechaza la reutilización. |
| x-signature | string | Sí | Firma hexadecimal generada con HMAC-SHA256. La carga útil contiene Merchant UID, timestamp, nonce, método, ruta, query canónico y body canónico. |
Parámetros
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| chainCode | string | Sí | Código de cadena. Valores admitidos: TRON / BSC / SOL. |
| tokenSymbol | string | Sí | Símbolo simbólico. |
| bindKey | string | Sí | Clave vinculante única en el lado del comerciante. |
| label | string | No | Observación vinculante. |
| notifyUrl | string | No | Devolución de llamada independiente URL para esta dirección exclusiva. Las órdenes creadas automáticamente a partir de depósitos futuros se devolverán aquí primero. |
Ejemplo de solicitud
{
"chainCode": "TRON",
"tokenSymbol": "USDT",
"bindKey": "USER_90001",
"label": "VIP User 90001",
"notifyUrl": "https://merchant.example.com/api/uugate/member-topup-notify"
}Campos de respuesta
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| bindingId | number | Sí | ID de registro vinculante. |
| chainCode | string | Sí | Código de cadena. |
| tokenSymbol | string | Sí | Símbolo simbólico. |
| bindKey | string | Sí | Clave de encuadernación. |
| addressId | number | Sí | Identificación de dirección. |
| address | string | Sí | Dirección de recepción exclusiva. |
| addressType | string | Sí | Siempre exclusivo. |
| notifyUrl | string | null | Sí | Devolución de llamada exclusiva URL utilizada por este enlace. |
| status | string | Sí | Encuadernación status. |
Ejemplo de respuesta
{
"bindingId": 70031,
"chainCode": "TRON",
"tokenSymbol": "USDT",
"bindKey": "USER_90001",
"addressId": 31088,
"address": "TQ3sCY8k9h7G9UsApY3JPt5VDpNKr2kJ1E",
"addressType": "exclusive",
"notifyUrl": "https://merchant.example.com/api/uugate/member-topup-notify",
"status": "active"
}Ejemplos de código
cURL Ejemplo de solicitud
curl -X POST 'https://api.uugate.com/openapi/payin/exclusive-bindings' \
-H 'Content-Type: application/json' \
-H 'x-api-key: mch_xxxxxxxxxxxxxxxxxxxx' \
-H 'x-merchant-uid: 880001' \
-H 'x-timestamp: 1776193200000' \
-H 'x-nonce: 2f5c7b147c3748f0a8b3d9bb38aa91a4' \
-H 'x-signature: <SIGNATURE_HEX>' \
-d '{
"chainCode": "TRON",
"tokenSymbol": "USDT",
"bindKey": "USER_90001",
"label": "VIP User 90001",
"notifyUrl": "https://merchant.example.com/api/uugate/member-topup-notify"
}'Notas
- Si se vuelve a crear el mismo bindKey, la plataforma devuelve de forma idempotente el enlace y la dirección existentes, lo que funciona bien para un flujo de obtención o creación.
- Para recarga de miembros, pase notifyUrl en el momento vinculante para que los depósitos de cualquier monto en la dirección exclusiva devuelvan la llamada directamente al sitio o aplicación correspondiente.