即将推出的变更
我们正在开发令人兴奋的新功能,将增强您的体验。在我们继续开发这些更新的同时,您可以继续构建!
我们建议您定期查看此更新日志以获取最新更新,并相应地规划您的开发周期。您的反馈对我们非常宝贵,如有任何建议或问题,请随时与我们分享。
产品更新
新版本和改进
cNGN 合约地址更新
cNGN 团队已在 5 个网络上部署了新的合约地址。之前的地址现已标记为 “Old v2”,将逐步淘汰。变更内容
- cNGN 新部署:Ethereum、BNB Chain、Base、Asset Chain 和 Arc 上的 cNGN 合约地址已更新
- 之前的地址已重新标记:控制面板中现有地址已标记为 “Old v2”
- 新网络支持:cNGN 现已在 Arc 网络上可用
您需要做什么
- 进入控制面板并添加新的 cNGN 资产(查找没有 “Old” 标签的资产)
- 更新您的集成以使用新的合约地址
- 之前的地址在过渡期间将继续正常工作
新合约地址
| 网络 | 新 cNGN 合约地址 |
|---|
| Ethereum | 0xF55E56423e6b50808fD07cB62b6A32B91903f50E |
| BNB Chain | 0x8a078b182bA9649c03982c2a80CDcc81cdc99dA8 |
| Base | 0xEFdF04BAfE0ebabb5F5cD9e3f36564f51CFe1530 |
| Asset Chain | 0x00F0a33d9AFaC108A4963D4Cb4Ef6A9C6B8D8859 |
| Arc | 0x1716Df6A18DcFF031BFD209aDB8035174AdC0D31 |
cNGN 测试代币
需要用于沙盒(测试网)集成的测试 cNGN?请使用官方 cNGN Faucet 获取测试代币。有关 cNGN 稳定币项目的更多信息,请访问官方仓库。
虚拟账户 API 重大变更
重大变更:此更新现已生效。使用虚拟账户 API 的现有集成应更新至新的响应格式。
为什么进行此变更
之前,每个钱包或地址只能拥有一个虚拟账户。我们听到企业反馈需要每个钱包拥有多个虚拟账户——例如,为不同的客户或用例分配单独的账户。此更新实现了这种灵活性,同时保持了检索单个账户的向后兼容性。变更内容
| 端点 | 之前的行为 | 新的行为 |
|---|
GET /wallets/{walletId}/virtual-accounts | 返回单个对象 | 返回分页数组 |
GET /wallets/{walletId}/addresses/{addressId}/virtual-accounts | 返回单个对象 | 返回分页数组 |
新增端点
要检索特定的虚拟账户(相当于旧的单对象响应),请使用这些新端点:| 端点 | 描述 |
|---|
GET /wallets/{walletId}/virtual-accounts/{virtualAccountId} | 获取特定虚拟账户 |
GET /wallets/{walletId}/virtual-accounts/{virtualAccountId}/transactions | 获取虚拟账户的交易记录 |
POST /wallets/{walletId}/virtual-accounts/{virtualAccountId}/regenerate | 重新生成虚拟账户 |
GET /wallets/{walletId}/addresses/{addressId}/virtual-accounts/{virtualAccountId} | 获取特定子地址虚拟账户 |
GET /wallets/{walletId}/addresses/{addressId}/virtual-accounts/{virtualAccountId}/transactions | 获取子地址虚拟账户的交易记录 |
POST /wallets/{walletId}/addresses/{addressId}/virtual-accounts/{virtualAccountId}/regenerate | 重新生成子地址虚拟账户 |
分页详情
所有列表端点现在支持以下分页参数:| 参数 | 类型 | 默认值 | 最大值 | 描述 |
|---|
page | integer | 1 | — | 要检索的页码 |
limit | integer | 10 | 100 | 每页记录数 |
新功能
- 虚拟账户标签:添加自定义标签以组织账户(例如,“客户A”、“工资单”)
- 账户重新生成:生成新的账户号码,带有原因跟踪以便审计
- 交易历史:查询与特定虚拟账户关联的交易
迁移指南
之前 — 单对象响应:const response = await fetch(`/wallets/${walletId}/virtual-accounts`);
const account = await response.json();
console.log(account.accountNumber);
console.log(account.bankName);
之后 — 分页数组响应:const response = await fetch(`/wallets/${walletId}/virtual-accounts`);
const { data, meta } = await response.json();
// 处理空数组情况
if (data.length === 0) {
console.log('未找到虚拟账户');
return;
}
// 获取第一个账户(相当于旧行为)
const account = data[0];
console.log(account.accountNumber);
console.log(account.bankName);
// 或遍历所有账户
for (const account of data) {
console.log(account.accountNumber);
}
// 分页信息在 meta 中可用
console.log(`第 ${meta.currentPage} 页,共 ${meta.totalPages} 页`);
通过 ID 获取特定账户(推荐):const response = await fetch(`/wallets/${walletId}/virtual-accounts/${virtualAccountId}`);
if (!response.ok) {
console.log('未找到虚拟账户');
return;
}
const { data } = await response.json();
console.log(data.accountNumber);
API 响应示例
列表端点 GET /wallets/{walletId}/virtual-accounts:{
"message": "Virtual accounts retrieved successfully",
"statusCode": 200,
"data": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"accountNumber": "8012345678",
"accountName": "Blockradar/John Doe",
"bankName": "Wema Bank",
"bankCode": "035",
"isActive": true,
"type": "AUTO_FUNDING",
"label": "Customer Deposits",
"createdAt": "2026-01-22T10:30:00.000Z",
"updatedAt": "2026-01-22T10:30:00.000Z"
}
],
"meta": {
"itemCount": 1,
"totalItems": 1,
"itemsPerPage": 10,
"totalPages": 1,
"currentPage": 1
}
}
单账户端点 GET /wallets/{walletId}/virtual-accounts/{virtualAccountId}:{
"message": "Virtual account retrieved successfully",
"statusCode": 200,
"data": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"accountNumber": "8012345678",
"accountName": "Blockradar/John Doe",
"bankName": "Wema Bank",
"bankCode": "035",
"isActive": true,
"type": "AUTO_FUNDING",
"label": "Customer Deposits",
"createdAt": "2026-01-22T10:30:00.000Z",
"updatedAt": "2026-01-22T10:30:00.000Z"
}
}
需要帮助?
虚拟账户 API
- 新功能:虚拟账户 API 使企业能够创建和管理与主钱包或子地址关联的虚拟银行账户
- 法币转稳定币转换:客户可以通过传统银行转账接收 NGN 付款,自动转换为 cNGN 稳定币
- 自动充值支持:AUTO_FUNDING 类型账户在收到法币付款时自动铸造 cNGN 并转移到关联钱包
- 主钱包集成:创建直接关联到主钱包的虚拟账户
- 子地址集成:创建关联到特定子地址的虚拟账户以实现精细控制
- 账户管理:激活或停用虚拟账户以控制自动充值行为
您需要做什么
API 端点
以下是虚拟账户操作的核心 API 端点:主钱包端点
子地址端点
主要功能
- 支持的货币:NGN(尼日利亚奈拉)用于法币付款,cNGN 用于稳定币转换
- 自动充值流程:收到付款时自动铸造和转移 cNGN(AUTO_FUNDING 类型)
- 账户激活:通过激活或停用账户控制自动充值行为
- 客户管理:使用客户信息(名字、姓氏、邮箱、电话)创建账户
更多信息,请参阅虚拟账户文档和 API 参考。
cNGN 测试网代币地址更新
- 更新的 cNGN 测试网地址:cNGN 团队已更新其在多个网络上的测试网代币地址
- 新资产支持:在控制面板中添加了对更新后 cNGN 代币的支持
- 资产管理:之前的测试网地址现在标记为 “old”,将在 30 天后移除
- Tron USDT 支持:添加了更新的 Tron USDT 支持地址,之前的地址标记为 “old”
您需要做什么
- 进入控制面板并添加新的 cNGN 资产(查找没有 “old” 标签的资产)
- 更新您的集成以使用新的测试网地址
- 旧的测试网地址将在 30 天后自动移除
- 注意:这些更改仅适用于测试网环境 - 主网地址保持不变
更新的测试网地址
| 网络 | 新 cNGN 合约地址 |
|---|
| ASSETCHAIN | 0x4c00E85cd0B0307D8ED0b5534Bc678776C4aa7D3 |
| BASE | 0x929A08903C22440182646Bb450a67178Be402f7f |
| BNBCHAIN | 0x20354A3Ad3B67836ab9c6D7D82cF5e5Ddfe104dD |
| ETHEREUM | 0xd076ceCB8af5D92F7f6F32bDf24Da708859593d3 |
| POLYGON | 0xf24B1Cee8cA70341FcefBCa10e7e4Db9A4896486 |
| LISK | 0x999E3A32eF3F9EAbF133186512b5F29fADB8a816 |
更新的 Tron USDT 地址
| 网络 | 新 Tron USDT 合约地址 |
|---|
| TRON | TXYZopYRdj2D9XRtbG411XZZ3kM5VkAeBf |
有关 cNGN 稳定币项目的更多信息,请访问官方仓库。