UU 收款
UU 收款
API 文档帮助中心进入控制台
CTRL K
API 文档帮助中心进入控制台

开始接入

接入概览快速开始请求签名与鉴权

接口参考

用户与充值地址订单与查询充值回调提现与退款

排查与处理

错误与重试

快速开始

准备商户配置,获取第一个用户充值地址。

1. 准备商户配置

在注册页面提交申请。商户激活后,使用所有者账户登录控制台:

  1. 打开收款地址,配置自己控制的 BSC 主钱包,并再次输入地址确认。
  2. 打开开发者设置,查看商户 ID、商户编码,生成 API Key 与 API Secret。
  3. 在同页配置公网 HTTPS 回调地址,保存首次生成的独立回调密钥。

API Secret 与回调密钥只在生成时显示一次。控制台登录密码、API Secret 和回调密钥分别使用,均不要放入浏览器代码。修改钱包、生成或轮换密钥需要验证当前登录密码。

无需开发的收款方式

在支付链接填写收款项目、订单号、金额与有效期,即可创建公开收银台。付款人无需登录,可查看地址、二维码与付款状态。需要按业务用户长期收款时,再使用下面的 API 方式。

2. 从服务端发送签名请求

以下 Node.js 示例创建业务用户 customer_1001。凭据从环境变量读取;示例金额和编号均不代表真实业务数据。

import {createHmac, randomUUID} from 'node:crypto';
 
const key = process.env.UPAY_API_KEY;
const secret = process.env.UPAY_API_SECRET;
if (!key || !secret) throw new Error('请先设置 API 凭据');
 
const path = '/v1/customers';
const body = JSON.stringify({external_id: 'customer_1001'});
const timestamp = Math.floor(Date.now() / 1000).toString();
const nonce = randomUUID();
const message = `${timestamp}.POST.${path}.${nonce}.${body}`;
const signature = createHmac('sha256', secret).update(message).digest('hex');
 
const response = await fetch(`https://u.agpt.pro${path}`, {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'X-API-Key': key,
    'X-Timestamp': timestamp,
    'X-Nonce': nonce,
    'X-Signature': signature,
  },
  body,
});
const result = await response.json();
if (!response.ok) throw new Error(result.error || `HTTP ${response.status}`);
console.log(result.data);

3. 保存地址与用户的关联

响应中的 customer_id 是平台用户标识,external_id 是你提交的业务用户编号,address 是充值地址。请保存这些信息并将地址展示给对应用户。

相同商户使用同一 external_id 重复创建,会返回同一用户的有效地址;提交的 metadata 会更新。详情见用户与充值地址。

4. 验证充值与回调

确认网络为 BNB Smart Chain、资产为 USDT,再进行小额主网充值。记录交易哈希,等待链上确认,并验证业务系统收到的回调签名。

完成验签后再入账

不要根据浏览器页面、用户截图或前端提交的金额入账。服务端应验签、核对资产与用户,并按链上交易幂等记账。

5. 检查归集结果

平台会在充值确认后安排归集。请分别检查充值回调、业务账本和主钱包到账情况;三者可能存在处理时间差。

如果要先熟悉控制台操作,请阅读测试收款说明。

接入概览

上一篇

请求签名与鉴权

下一篇

本页内容

1. 准备商户配置无需开发的收款方式2. 从服务端发送签名请求3. 保存地址与用户的关联4. 验证充值与回调5. 检查归集结果