QRA
Quick Reference
WhatQRA 支付(阿根廷)
Why阿根廷即时 QR 支付——所有银行与金融科技互通
Reading Time10 分钟
Difficulty初级
Prerequisites身份验证 → 环境配置
阿根廷市场背景
Transferencias 3.0(受 BCRA(阿根廷中央银行)监管)在银行和金融科技之间提供互通的 QR 码(二维码)支付。一个 QR 可与任意参与 App 配合使用。
为何选择 QRA
| 优势 | 说明 |
|---|---|
| 互通 | 任意阿根廷银行或钱包 App 均可扫描支付 |
| 即时结算 | 经 BCRA 清算实时转账 |
| 无拒付 | Push 支付——确认后不可撤销 |
| 覆盖广 | 90%+ 成年人拥有银行或钱包访问 |
支付流程
分步说明
- 创建收费——
POST,type_charge: "qra"且currency: "ARS"。 - 渲染 QR——使用
qra_payload.qr_code(Base64 PNG)。 - 付款人扫描——任意兼容 App 完成转账。
- Webhook(网络钩子)——监听
paid、cancelled或终态错误。
创建 QRA 收费
- cURL
- Python
- JavaScript
curl -X POST https://core-manager.a55.tech/api/v1/bank/wallet/charge/ \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"wallet_uuid": "00000000-0000-0000-0000-000000000000",
"merchant_id": "11111111-1111-1111-1111-111111111111",
"payer_name": "刘洋",
"payer_email": "liuyang@example.com",
"payer_tax_id": "27123456789",
"payer_cell_phone": "+5491155551234",
"installment_value": 5000,
"installment_count": 1,
"items": [{"name":"运动鞋","quantity":1,"total_amount":5000,"unit_amount":5000,"sku":"ZAP-001","code":"Z001"}],
"payer_address": {"street":"Corrientes","address_number":"1200","complement":"","neighborhood":"Centro","city":"CABA","state":"C","postal_code":"C1043","country":"AR"},
"currency": "ARS",
"due_date": "2026-12-31T23:59:59Z",
"description": "QRA 订单",
"type_charge": "qra",
"webhook_url": "https://yoursite.com/webhook",
"redirect_url": "https://yoursite.com/"
}'
import requests
charge = requests.post(
"https://core-manager.a55.tech/api/v1/bank/wallet/charge/",
headers={"Authorization": f"Bearer {access_token}", "Content-Type": "application/json"},
json={
"wallet_uuid": "00000000-0000-0000-0000-000000000000",
"merchant_id": "11111111-1111-1111-1111-111111111111",
"payer_name": "刘洋",
"payer_email": "liuyang@example.com",
"payer_tax_id": "27123456789",
"payer_cell_phone": "+5491155551234",
"installment_value": 5000,
"installment_count": 1,
"items": [{"name": "运动鞋", "quantity": 1, "total_amount": 5000, "unit_amount": 5000, "sku": "ZAP-001", "code": "Z001"}],
"payer_address": {"street": "Corrientes", "address_number": "1200", "complement": "", "neighborhood": "Centro", "city": "CABA", "state": "C", "postal_code": "C1043", "country": "AR"},
"currency": "ARS",
"due_date": "2026-12-31T23:59:59Z",
"description": "QRA 订单",
"type_charge": "qra",
"webhook_url": "https://yoursite.com/webhook",
"redirect_url": "https://yoursite.com/",
},
)
charge.raise_for_status()
qr_image = charge.json()["qra_payload"]["qr_code"]
const response = await fetch(
"https://core-manager.a55.tech/api/v1/bank/wallet/charge/",
{
method: "POST",
headers: {
Authorization: `Bearer ${accessToken}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
wallet_uuid: "00000000-0000-0000-0000-000000000000",
merchant_id: "11111111-1111-1111-1111-111111111111",
payer_name: "刘洋",
payer_email: "liuyang@example.com",
payer_tax_id: "27123456789",
payer_cell_phone: "+5491155551234",
installment_value: 5000,
installment_count: 1,
items: [{ name: "运动鞋", quantity: 1, total_amount: 5000, unit_amount: 5000, sku: "ZAP-001", code: "Z001" }],
payer_address: { street: "Corrientes", address_number: "1200", complement: "", neighborhood: "Centro", city: "CABA", state: "C", postal_code: "C1043", country: "AR" },
currency: "ARS",
due_date: "2026-12-31T23:59:59Z",
description: "QRA 订单",
type_charge: "qra",
webhook_url: "https://yoursite.com/webhook",
redirect_url: "https://yoursite.com/",
}),
}
);
if (!response.ok) throw new Error(`请求失败(HTTP ${response.status}):${await response.text()}`);
const { qra_payload } = await response.json();
编码要求
为 QR 生成对 qra_payload 使用 UTF-8 编码且不做变换——字节被改动会导致无法扫描。
响应示例
{
"charge_uuid": "81f0045c-301a-45c4-96bc-5395f7cf35f9",
"local_currency": 5000,
"currency": "ARS",
"type": "qra",
"status": "issued",
"qra_payload": {
"qr_code": "data:image/png;base64,iVBORw0KGgoAAAANSUh…",
"expiration_date": "2026-01-15 18:30:00.000000"
}
}
状态生命周期
| 状态 | 说明 |
|---|---|
issued | 已签发 QR;等待付款 |
paid | 清算网络已确认 |
cancelled | 已过期或作废 |
refunded | 符合条件时已处理退款 |