简介
Quick Reference
WhatA55 支付 API 概览与架构
Why了解 A55 的功能、各组件如何协作,并完成首次认证调用
Reading Time5 分钟
Difficulty初级
为什么选择 A55
在拉丁美洲,大多数支付集成需要对接多个 acquirer(收单机构)。还须对接反欺诈服务商与 3DS(3D Secure 验证)服务。每个国家一套、每种支付方式一套。A55 用一个 API(应用程序编程接口)取代了这些零散的拼接。
| 没有 A55 | 使用 A55 |
|---|---|
| 需要与每个国家的收单机构签订独立合同 | 一个 API,29 家收单机构,7 个国家 |
| 自行构建并维护 PIX(巴西即时支付系统)、Boleto(巴西银行支付凭单)、OXXO(墨西哥便利店现金支付)、SPEI(墨西哥电子银行转账系统)集成 | 统一端点——通过 type_charge 选择支付方式 |
| 自行实现 3DS、反欺诈和重试逻辑 | 内置 3DS、设备指纹识别和智能路由 |
| 新增支付方式或国家需要数周时间 | 修改一个字段即可新增国家或支付方式 |
| 多个后台进行对账 | 统一结算管道,支持多币种报告(USD、EUR、本地货币) |
最终效果:
- 更快的上市速度——从沙箱到生产环境仅需数天,而非数月。
- 更高的通过率——跨服务商智能路由和自动重试。
- 更低的总成本——一次集成替代数十个供应商合同。
- 拉美全覆盖——巴西、墨西哥、阿根廷、智利、哥伦比亚、秘鲁,并持续扩展。
专为平台打造
A55 专为平台、市场和嵌入支付的 SaaS 公司设计。合作伙伴→账户→商户→钱包的层级结构,让您可以在任意层级接入子商户并隔离资金。
功能概览
| 功能 | 描述 | 了解更多 |
|---|---|---|
| 银行卡支付 | 信用卡和借记卡,支持 3DS、令牌化、分期付款 | 信用卡 |
| PIX | 即时支付、二维码生成、实时确认 | PIX |
| 数字钱包 | Apple Pay(苹果支付)、Google Pay(谷歌支付)、电子钱包 | Apple/Google Pay |
| 订阅支付 | 自动重试的周期性扣款 | 订阅支付 |
| 多币种 | 8 种货币、56 个货币对的汇率报价 | 汇率 |
| Webhook(网络钩子) | 带 HMAC(基于哈希的消息认证码)签名的实时状态通知 | Webhook |
| 支付链接 | 通过 URL 进行免代码收银——可通过 WhatsApp、邮件、短信分享 | 支付链接 |
| 卡片令牌化 | A55 安全存储卡数据,支持一键支付 | 令牌化 |
架构
合作伙伴接入账户(实体)。每个账户包含一个或多个商户;每个商户拥有钱包;钱包处理收款并可承载订阅。
支付处理流程
所有支付——无论使用何种支付方式——都遵循相同的生命周期:
所需凭证
在调用 API 之前,请向我们的团队申请以下凭证:
| 凭证 | 描述 | 使用场景 |
|---|---|---|
client_id | OAuth 2.0(开放授权)应用 ID(公开) | 向 Cognito 请求令牌 |
client_secret | OAuth 2.0 密钥(私密) | 请求令牌——仅限服务端使用 |
entity_uuid | 唯一账户(实体)标识符 | 创建钱包及账户范围内的操作 |
merchant_uuid | 该账户下的商户标识符 | 收款和交易 |
wallet_uuid | 钱包标识符 | 余额、收款及钱包级别的操作 |
保护 client secret
仅在后端存储 client_secret——使用密钥管理器或环境变量。切勿将其放入前端代码、移动应用、公开仓库或客户端日志中。
60 秒完成首次 API 调用
认证并列出您的钱包,确认一切正常。
- cURL
- Python
- JavaScript
# 1. 获取访问令牌
TOKEN=$(curl -s -X POST \
https://smart-capital.auth.us-east-1.amazoncognito.com/oauth2/token \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials" \
-d "client_id=YOUR_CLIENT_ID" \
-d "client_secret=YOUR_CLIENT_SECRET" | jq -r '.access_token')
# 2. 列出钱包
curl -s -X GET \
https://core-manager.a55.tech/api/v1/wallets \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" | jq .
import requests
AUTH_URL = "https://smart-capital.auth.us-east-1.amazoncognito.com/oauth2/token"
API_BASE = "https://core-manager.a55.tech/api/v1"
token = requests.post(AUTH_URL, data={
"grant_type": "client_credentials",
"client_id": "YOUR_CLIENT_ID",
"client_secret": "YOUR_CLIENT_SECRET",
}, headers={"Content-Type": "application/x-www-form-urlencoded"}).json()["access_token"]
wallets = requests.get(f"{API_BASE}/wallets", headers={
"Authorization": f"Bearer {token}",
"Content-Type": "application/json",
}).json()
print(wallets)
const AUTH_URL = "https://smart-capital.auth.us-east-1.amazoncognito.com/oauth2/token";
const API_BASE = "https://core-manager.a55.tech/api/v1";
const tokenResp = await fetch(AUTH_URL, {
method: "POST",
headers: { "Content-Type": "application/x-www-form-urlencoded" },
body: new URLSearchParams({
grant_type: "client_credentials",
client_id: "YOUR_CLIENT_ID",
client_secret: "YOUR_CLIENT_SECRET",
}),
});
const { access_token } = await tokenResp.json();
const wallets = await fetch(`${API_BASE}/wallets`, {
headers: {
Authorization: `Bearer ${access_token}`,
"Content-Type": "application/json",
},
}).then(r => r.json());
console.log(wallets);
沙箱已就绪
使用您的沙箱 client_id / client_secret 即可立即运行——不会产生真实资金流动。详情请参阅环境配置。
申请接入
发送邮件至**tech.services@a55.tech**,附上您的公司名称、技术联系人和使用场景。我们的团队将为您提供沙箱凭证并指导您完成接入流程。