Criar pedido de cobrança
Cria uma ordem de pagamento compartilhada de valor fixo. A resposta inclui número do pedido, endereço de recebimento, checkout URL e pagamento status.
notifyUrl é obrigatório. Os retornos de chamada posteriores para este pedido são entregues diretamente a este URL.
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 de token, por exemplo USDT. |
| merchantOrderNo | string | Sim | Número do pedido do comerciante. |
| amount | string | Sim | Valor do pagamento, até 6 casas decimais. |
| notifyUrl | string | Sim | Retorno de chamada específico do pedido URL. Recomenda-se um HTTPS URL público de propriedade do comerciante. |
Exemplo de requisição
{
"chainCode": "TRON",
"tokenSymbol": "USDT",
"merchantOrderNo": "M202604150001",
"amount": "100.00",
"notifyUrl": "https://merchant.example.com/api/uugate/payin-notify"
}Campos da resposta
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| orderNo | string | Sim | Número de pedido da plataforma. |
| merchantOrderNo | string | null | Sim | Número do pedido do comerciante. |
| bindKey | string | null | Sim | Binding key for exclusive-wallet orders; empty for shared pay-in orders. |
| amount | string | null | Sim | Valor do pedido. |
| paidAmount | string | null | Sim | Valor pago. Vazio antes do pagamento. |
| address | string | Sim | Endereço de recebimento real. |
| cashierUrl | string | Sim | Check-out completo URL. |
| paymentUri | string | Sim | Pagamento de carteira URI. |
| expireAt | string | null | Sim | Prazo de validade do pedido. |
| createdAt | string | null | Sim | Tempo criado. |
| detectedAt | string | null | Sim | Payment detection time; empty before detection. |
| confirmedAt | string | null | Sim | On-chain confirmation time; empty before confirmation. |
| completedAt | string | null | Sim | Order completion time; empty before completion. |
| status | string | Sim | Pedido status. |
Exemplo de resposta
{
"orderNo": "PI1776193200123ABCD1234",
"merchantOrderNo": "M202604150001",
"bindKey": null,
"amount": "100.000000",
"paidAmount": null,
"address": "TXYZ3x9nJ5J4xP2gh6mQW7rT31jB8Y2pA9",
"cashierUrl": "https://open.uugate.com/SK/PI1776193200123ABCD1234",
"paymentUri": "TRON:TXYZ3x9nJ5J4xP2gh6mQW7rT31jB8Y2pA9?token=USDT&amount=100.000000",
"expireAt": "2026-04-18T06:30:00.000Z",
"createdAt": "2026-04-18T06:00:00.000Z",
"detectedAt": null,
"confirmedAt": null,
"completedAt": null,
"status": "waiting_payment"
}Exemplos de código
cURL Exemplo de solicitação
curl -X POST 'https://api.uugate.com/openapi/payin/orders' \
-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",
"merchantOrderNo": "M202604150001",
"amount": "100.00",
"notifyUrl": "https://merchant.example.com/api/uugate/payin-notify"
}'Notas
- Um pedido de pagamento compartilhado pode ser acionado 40105 quando o mesmo comerciante, rede, token e valor ainda estão reservados por outro pedido válido.