SMARTPAY

QRPH二维码支付是什么?菲律宾央行统一二维码标准科普

什么是QRPH?菲律宾央行推行的统一二维码标准

如果你在马尼拉的便利店、餐馆或者菜市场留意过收银台,大概率见过那张印着"QR Ph"字样的贴纸。很多人第一次看到会以为这只是某个钱包自己的收款码,其实不是——QRPH是菲律宾央行(Bangko Sentral ng Pilipinas,简称BSP)牵头制定的全国统一二维码支付标准,英文全称是National QR Code Standard,业内一般写作QR Ph。

在QRPH出现之前,菲律宾的二维码支付是碎片化的:GCash有自己的码,一些银行App有自己的码,彼此互不相认。BSP推动QRPH的初衷,是让所有持牌银行、电子钱包和支付机构共用一套码制规则,消费者不用再纠结"这张码我的App到底扫不扫得开"。这也是菲律宾央行推进国家支付体系数字化转型的一块基础设施,和InstaPay、PesoNet这类清算网络属于同一战略方向,只是QRPH解决的是"收款界面"这一端的标准化问题。

QRPH和普通二维码支付到底有什么区别?

这是最容易被问到、也最容易被误解的一点。很多人以为"扫码支付"都差不多,其实核心差别就在于"互联互通"这四个字。

在QRPH出现之前,一个商户如果想覆盖多个钱包和银行的客户,往往需要在收银台贴出好几张不同的码,分别对应不同的App;消费者也需要提前确认自己常用的App支不支持眼前这张码。QRPH要解决的正是这种割裂——只要是遵循QRPH标准生成的码,理论上任何一家接入了QRPH网络的银行或钱包App都可以扫描识别、完成付款,不需要为每个渠道单独出一张码。

对比维度传统专属二维码QRPH互联互通标准
发码方与扫码方关系通常绑定同一家钱包或App由BSP统一制定,跨机构互认
商户需要摆放的码数量每接入一个渠道贴一张码理论上一张码覆盖多个参与机构
消费者需要安装的App取决于商户贴了哪些码只要常用App支持QRPH即可尝试扫码
标准制定与监管主体各家自行定义BSP统一制定并持续更新技术规范
典型应用场景单一钱包生态内收付款跨银行、跨钱包的收付款场景

需要说明的是,"互联互通"是一个持续推进的过程,不同机构接入的深度和体验会有差异,具体到某一张码能不能被某个App扫开,还是要以App内的实际提示为准。想更细致了解不同App之间的扫码体验差别,可以参考我们另一篇消费者视角实测的文章。

一张QRPH码里到底装了什么?技术标准拆解

从技术角度看,QRPH并不是一张"图片",而是一段按照固定规则编码的字符串,再被渲染成二维码图案。这套编码规则参考了国际上广泛使用的EMV二维码支付规范,字段之间采用"标签-长度-值"(Tag-Length-Value,简称TLV)的方式排列——每个字段先声明自己的标签编号,再声明内容长度,最后跟上具体内容。正因为所有参与机构都遵循同一套字段定义,不同银行、不同钱包生成的QRPH码才能被彼此的App正确解析。

一张标准的QRPH商户码里,大致会包含这样几类信息:码的版本与初始化方式、商户账户信息(用来定位具体收款账户)、商户类别码、货币种类标识、是否携带固定金额、商户名称与所在城市、以及末尾用于校验完整性的CRC校验码。下面是一段简化后的解析示例,帮助理解这段字符串背后的结构逻辑(实际生产环境中的字段顺序和长度需严格按规范处理,这里仅作原理演示):

// 简化版 EMV 风格二维码 TLV 解析示例,仅用于说明原理
function parseQrPayload(payload) {
  let i = 0;
  const fields = {};
  while (i < payload.length) {
    const tag = payload.substr(i, 2); i += 2;
    const len = parseInt(payload.substr(i, 2), 10); i += 2;
    const value = payload.substr(i, len); i += len;
    fields[tag] = value;
  }
  return fields;
}

// 关键字段速查(简化说明):
// 00 = 载荷格式指示符   26-51 = 商户账户信息模板
// 52 = 商户类别码       53 = 货币种类标识
// 54 = 固定金额(如为空则代表动态输入金额)
// 58 = 国家代码         59 = 商户名称   63 = CRC 校验值
const fields = parseQrPayload(qrString);
console.log(fields);

理解这层结构有个直接好处:当你的App提示"该二维码格式不受支持"或者扫码后金额、商户名对不上时,大概率不是App出了问题,而是这张码本身没有严格按QRPH规范生成,或者你所使用的App尚未完整接入某一类字段的解析逻辑。

目前有哪些银行和电子钱包支持扫描QRPH码?

QRPH网络里的参与机构大致可以分成三类:电子钱包类、商业银行类,以及数字银行类。电子钱包这边,GCash和Maya是市面上覆盖面最广的两家,几乎所有支持QRPH的门店都会优先考虑这两个App能不能扫开。商业银行这边,菲律宾几家主要商业银行——比如BDO、BPI、Metrobank、UnionBank、RCBC、LandBank、Chinabank、PNB、Security Bank等,大多已经在网银App或手机银行App里加入了扫码支付功能。近几年新出现的一批数字银行,也陆续把QRPH扫码收付能力做进了自己的App。

机构类型典型代表常见能力
电子钱包GCash、Maya等扫码付款、生成个人/商户收款码
商业银行AppBDO、BPI、Metrobank、UnionBank、RCBC、LandBank等银行App内扫码支付,部分支持商户收款
数字银行App近年新兴数字银行App内置扫码支付入口,持续扩展中

需要提醒的是,参与机构名单和各家的接入深度都在持续变化中,某家银行今天支持的是"只能扫别人的码",明天可能就开放了"生成自己的商户码"。如果你需要一份持续更新、按机构逐一列出的名单,可以看我们整理的参与机构完整名单;如果想知道具体哪些钱包在到账速度、扫码稳定性上有差别,也可以看QRPH钱包覆盖列表这篇的实测梳理。

消费者怎么用QRPH码付款?分步讲清楚

对普通消费者来说,用QRPH码付款的操作其实很简单,几乎所有支持QRPH的App流程都大同小异:

第一步,打开手机里任意一个支持QRPH的钱包或银行App,找到"扫一扫"或"支付"入口。第二步,对准商户台面上的二维码扫描,App会自动识别出商户名称、所在门店信息。第三步,如果这张码是"固定金额码",金额会自动带出;如果是"动态输入码",则需要手动输入本次消费金额。第四步,核对商户名称和金额无误后,用App里设置好的支付密码或生物识别方式确认支付。第五步,支付完成后App通常会有一个交易凭证或回执界面,建议消费者养成截图留存的习惯,方便日后对账或有争议时举证。

这里有个容易被忽略的细节:同一张QRPH码,用不同App扫,界面呈现的信息可能略有出入——有的App会额外显示商户注册地址,有的只显示商户简称。这属于各家App在展示层面的差异,并不代表码本身有问题,消费者只要重点核对"商户名称"和"金额"这两项关键信息就足够了。

QRPH静态码与动态码,普通人该怎么分辨?

逛街时你可能注意到,有些商户的码是打印出来贴在收银台的,一年到头都不换;有些商户则是每次交易时,收银员现场在POS机或平板上生成一张新码让你扫。这其实对应QRPH标准里的两种模式:

  • 静态码:一次生成、长期使用,通常不携带固定金额,需要消费者在扫码后手动输入金额,适合小型商户、摊位这类不方便配备额外设备的场景。
  • 动态码:每笔交易单独生成,通常已经携带好本次交易的金额甚至订单号,消费者扫码后基本只需要确认并支付,常见于连锁门店、有收银系统对接的商户。

对消费者而言,两者的付款体验差别不大,主要区别在于要不要自己手动输入金额;真正需要考虑清楚两者利弊的,其实是商户一方——涉及到对账效率、防止输错金额、以及后台系统对接的复杂度。如果你是商户或者技术负责人,想深入了解该怎么选,可以参考静态码与动态码差异这篇更偏商户决策角度的分析。

为什么现在这么多门店都挂上了QRPH码?

从商户的角度看,QRPH的价值很直接:不用再为每个钱包、每家银行单独申请、单独摆一张码,理论上一张码就能覆盖尽可能多的支付渠道,减少了收银台的管理复杂度,也降低了消费者"扫不开"而放弃购买的概率。这也是为什么这两年从连锁便利店到街边小店,QRPH码越来越常见。

BSP作为QRPH标准的制定者和监管方,同时也是国家支付体系的监管机构——任何希望接入QRPH清算网络、为商户提供二维码收单能力的机构,都必须持有BSP颁发的相应牌照,比如支付系统运营牌照(OPS)或电子货币机构牌照(EMI),才能合法开展相关业务。

对于想要挂上QRPH码收款的商户来说,除了直接找单个银行或钱包申请之外,也有像SMARTPAY这样持牌的第三方支付服务商,可以帮商户一次性打通多个钱包和银行渠道的QRPH收款能力,统一到一个后台管理和对账。举个例子,商户在查询一笔扫码交易状态时,后台系统通常会调用类似下面这样的接口:

curl -X POST https://api.smartpay-gateway.com/v1/qrph/query \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <your_api_key>" \
  -d '{"merchantId":"MCH1001","orderNo":"ORDER20260929001"}'
SMARTPAY持有BSP颁发的OPS与EMI双牌照,这也是我们能够为商户提供合规的QRPH聚合收款服务的基础前提。

如果你正在经营电商或者线下门店,想了解怎样用一张码聚合多个钱包收款,可以看我们更详细的聚合收款方案这篇文章。

常见问题

QRPH和微信支付、支付宝的二维码是同一套体系吗?

不是。QRPH是菲律宾央行制定的本地标准,主要服务于菲律宾国内银行和钱包之间的互联互通,和境外的二维码支付体系是各自独立的技术规范,彼此不直接互通。

我手机里已经装了GCash,还需要额外下载别的App才能用QRPH吗?

不需要。只要商户台面上贴的是符合QRPH标准的码,用你现有的GCash或者其他已支持QRPH的App直接扫描即可,不必为了扫某一张码单独下载新的App。

别人给我看的QRPH码,是不是随便一个钱包或银行App都能扫?

理论上,只要双方使用的App都已经接入QRPH网络,就可以互相扫码识别。但不同机构接入的进度和功能范围存在差异,个别情况下可能出现某个App暂不支持识别某类码的情况,遇到这种情况可以换一个常用的主流App再试一次。

QRPH码可以给境外游客使用吗?

QRPH本身是面向菲律宾本地银行和钱包设计的标准,境外游客如果没有当地银行账户或钱包账户,通常无法直接生成或使用QRPH码支付,具体是否支持某些跨境场景,建议以各机构自身的公告为准。

扫码的时候商户信息显示不对,这张码安全吗?

正规的QRPH码在扫描后,App会展示出商户名称等信息,消费者应当养成付款前核对商户名称、核对金额的习惯。如果扫码后显示的信息和现场商户明显不符,建议先不要确认支付,当面向商户核实清楚再操作。

QRPH码需要专门的设备才能生成吗?

不一定。小商户可以通过银行或钱包App后台直接生成一张静态码打印出来长期使用;规模更大、需要对接收银系统或电商后台的商户,通常会通过持牌支付服务商的API动态生成每笔交易对应的码,便于自动对账。

我是商户,想在店里挂上QRPH码收款,要去哪里申请?

可以直接联系你已有账户的银行或钱包运营商申请开通商户收款码,也可以通过像SMARTPAY这样的持牌第三方支付服务商,一次性开通并聚合多个渠道的QRPH收款能力,统一在一个后台管理交易和对账。

如果你正在为门店或者电商业务规划QRPH收款方案,想进一步了解接入流程、费率结构或者API对接细节,欢迎通过Telegram联系我们的商务团队:t.me/LouisSMARTPAY,也可以加入我们的Telegram社群交流:t.me/smartpaymanila,或发邮件至[email protected],我们会根据你的实际业务场景给出具体建议。

相关推荐