Criar carteira exclusiva
Cria um endereço de recebimento exclusivo para um bindKey. Os depósitos futuros neste endereço pertencem permanentemente a esse bindKey.
Se notifyUrl for fornecido, futuros pedidos de recarga criados automaticamente para este endereço exclusivo retornarão a chamada para esse URL primeiro. Isso é útil quando cada site ou aplicativo recebe suas próprias notificações de recarga de membros.
Cabeçalhos
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| x-api-key | string | Sim | Comerciante API Key. Use o valor que começa com mch_ na página de configurações do comerciante API. |
| x-merchant-uid | string | Sim | Merchant UID. |
| x-timestamp | string | Sim | Milissegundos de 13 dígitos timestamp. O desvio padrão permitido do relógio é de 5 minutos. |
| x-nonce | string | Sim | String aleatória exclusiva para cada solicitação, com até 128 caracteres. A reutilização é rejeitada. |
| x-signature | string | Sim | Assinatura hexadecimal gerada com HMAC-SHA256. A carga útil contém Merchant UID, timestamp, nonce, método, caminho, query canônico e body canônico. |
Parâmetros
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| chainCode | string | Sim | Código da cadeia. Valores suportados: TRON / BSC / SOL. |
| tokenSymbol | string | Sim | Símbolo simbólico. |
| bindKey | string | Sim | Chave de ligação exclusiva do lado do comerciante. |
| label | string | Não | Observação vinculativa. |
| notifyUrl | string | Não | Retorno de chamada independente URL para este endereço exclusivo. Pedidos criados automaticamente a partir de depósitos futuros retornarão aqui primeiro. |
Exemplo de requisição
{
"chainCode": "TRON",
"tokenSymbol": "USDT",
"bindKey": "USER_90001",
"label": "VIP User 90001",
"notifyUrl": "https://merchant.example.com/api/uugate/member-topup-notify"
}Campos da resposta
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| bindingId | number | Sim | ID do registro de associação. |
| chainCode | string | Sim | Código da cadeia. |
| tokenSymbol | string | Sim | Símbolo simbólico. |
| bindKey | string | Sim | Chave de ligação. |
| addressId | number | Sim | ID do endereço. |
| address | string | Sim | Endereço de recebimento exclusivo. |
| addressType | string | Sim | Sempre exclusivo. |
| notifyUrl | string | null | Sim | Retorno de chamada exclusivo URL usado por esta ligação. |
| status | string | Sim | Vinculação status. |
Exemplo de resposta
{
"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"
}Exemplos de código
cURL Exemplo de solicitação
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
- Se o mesmo bindKey for criado novamente, a plataforma retornará idempotentemente a ligação e o endereço existentes, o que funciona bem para um fluxo get-or-create.
- Para recarga de associado, passe notifyUrl no momento da vinculação para depósitos de qualquer valor no endereço exclusivo de retorno diretamente para o site ou aplicativo correspondente.