SMARTPAY

菲律宾支付行业PCI DSS合规要求解读:商户需要做什么

上个月一个新客户在接入前问了我一句:"你们这边支付链路符不符合PCI DSS?"我当时愣了一下。我们公司在马尼拉做跨境电商已经第五年,支付这块一直是找持牌网关对接,从没自己摸过卡号存储这摊事,所以对PCI DSS的概念停留在"听说过,没细看"的阶段。后来花了些时间把这件事理清楚,发现这其实是每个在菲律宾做收单生意的中国商户都该搞懂的一块拼图,写下来给同样在这边做技术或运营的同行一个参考。

为什么这件事突然摆到了桌面上

我们业务模式很简单:自己的独立站接银行卡支付,客户下单时在结账页输入卡号。过去我一直以为"卡号传给网关就完事了",直到对接风控团队时被问到持卡人数据的存储策略、日志里有没有明文卡号这类问题,才意识到这中间有一整套行业规则在约束,不是网关一家的事,商户自己的系统同样要对齐这套标准。这就是PCI DSS(Payment Card Industry Data Security Standard,支付卡行业数据安全标准)要管的范围。

PCI DSS到底是什么,它管的是哪些数据

PCI DSS不是菲律宾本地监管机构发的牌照,而是国际主要卡组织联合制定的一套行业安全标准,适用于所有存储、处理或传输持卡人数据的机构——银行、收单机构、支付网关,以及像我们这样接入银行卡支付的商户,理论上都在覆盖范围内。它管的核心是"持卡人数据":卡号、持卡人姓名、有效期、服务码,以及更敏感的验证码和磁道/芯片数据。标准的几个大方向翻译过来并不复杂:不随意存储不该存的数据、存储时要加密、传输时要加密、访问权限要分级、系统要留痕可追溯、要定期做安全测试和内部治理。这些要求本身是公开的框架性原则,具体落到每家机构头上的审核深度和方式,会因为交易规模、接入方式不同而有差异。

商户自己要不要直接扛这摊合规责任

这是我最初最想搞清楚的问题。答案分两种情况。如果商户自己搭建收银系统,卡号从前端一路落到自己的服务器甚至数据库里存着,那么几乎整条链路的合规责任都压在商户自己身上,审计范围、整改成本都不小。但现实中绝大多数商户——包括我们自己——走的是第三方持牌网关的托管支付页面或Token化方案,持卡人数据在到达商户服务器之前就已经被网关接管,商户自己的系统从始至终"看不到"完整卡号。这种架构下,商户自身需要承担的合规范围会明显收窄,但不是零责任:商户仍然要对自己后台怎么处理交易记录、客服和运营人员能看到哪些数据、第三方插件有没有机会截获输入框负责。

SMARTPAY 持有菲律宾央行(BSP)批复的 OPS(支付系统运营方)与 EMI(电子货币机构)双重资质,这类持牌机构本身要接受卡组织与监管方对数据安全体系的审查,商户接入后,直接接触持卡人数据的环节大部分收拢在网关一侧,这也是为什么判断持牌网关怎么选时,数据安全能力是绕不开的一条尺子。

换句话说,商户到底要扛多重的PCI DSS责任,很大程度上取决于接入架构本身是"自己摸卡号"还是"把卡号环节让渡给持牌方"。这也是我们后来在选型时反复确认BSP OPS 支付业务牌照这类资质是否齐备的原因——持牌与否、合规体系是否成熟,直接决定了我们自己要背多少。

自建系统 vs 走持牌网关:合规责任怎么分配

把两种架构摆在一起对比,差异会更直观。

维度自建收单系统(自己落地存储卡号)走持牌网关(Token化/托管页面)
持卡人数据是否落地商户服务器是,卡号、有效期等可能直接进商户数据库否,商户只拿到网关返回的token和脱敏信息
加密与密钥管理责任商户自己负责密钥生成、轮换与存储安全由网关统一管理,商户不接触密钥
自评估/审计范围覆盖商户自身全部系统与网络环境大幅收窄,通常只涉及商户如何调用网关接口
数据泄露时的直接责任商户是第一责任方,需自行排查与整改责任按合同与接触环节划分,网关承担主要数据安全责任
技术与人力投入需要专门的安全团队与持续投入商户接入成本低,安全能力复用网关已有体系

不同商户等级,合规要求的深度也不一样

PCI DSS框架下,商户通常会按年交易规模被划入不同等级,等级越高意味着交易量越大、审核方式也越深——从商户自己填写一份自评估问卷,到需要由具备资质的外部评估方实地审核,中间还有多档过渡方式。具体一家商户落在哪个等级、要走哪种审核路径,这件事不是商户自己拍脑袋判断的,而是由签约的收单机构或网关方在商户准入和定期复核时根据交易数据来认定,商户只需要配合提供真实的交易体量即可,不必自己去套用某个固定门槛数字。我自己的经验是,交易规模越小的商户,只要走的是持牌网关的标准接入方式,日常需要操心的合规动作就越轻,大部分精力可以放在业务本身而不是安全审计上。

技术设计思路:不落地存储卡号,只传递Token

从技术角度讲,"不落地存储完整卡号"是最容易落地、也最立竿见影的一条原则。我们现在的接口设计思路是:支付页面的卡号输入框直接由网关提供的前端组件接管,商户服务器全程不接触、不记录原始卡号,自己的订单系统里只保存网关返回的交易号和脱敏后的卡号后四位,用于客服核对和对账。大致的后端逻辑是这样的:

// 商户服务器只处理网关返回的 token 与交易号,从不接触原始卡号
async function createOrder(req, res) {
  const { token, orderNo, itemId } = req.body;
  // token 由持牌网关的前端 SDK 在用户浏览器端生成,
  // 商户服务器收到的是一次性引用,不是真实卡号
  const charge = await gatewayClient.charge({
    token,
    orderNo,
    merchantRef: buildMerchantRef(orderNo),
  });

  // 本地数据库只落脱敏信息,不保存完整卡号/有效期/验证码
  await db.orders.insert({
    orderNo,
    cardLast4: charge.cardLast4,
    gatewayTxnId: charge.id,
    status: charge.status,
    createdAt: new Date(),
  });

  res.json({ status: charge.status, txnId: charge.id });
}

这套思路的好处很直接:就算商户自己的数据库或日志系统某天被人拿到,攻击者能看到的也只是脱敏后的末四位和一个指向网关系统的交易号,真正的持卡人数据从未经过商户服务器,风险面被大幅压缩。日志打印、工单系统、客服聊天记录里是否会不小心出现完整卡号,是我们现在做代码审查时专门会过一遍的点。

商户自查清单:接入前后要盯住哪几件事

把这段时间摸出来的经验整理成一份自查清单,接入前和接入后都可以拿出来对一遍:

  • 核实对接的网关或收单方是否持有BSP认可的支付类牌照,能不能说清楚自己的数据安全合规状态,而不是含糊其辞;
  • 检查自己系统里有没有任何角落在落地存储完整卡号、有效期或卡背面验证码,包括测试环境和备份文件;
  • 确认支付相关的传输链路全程走加密协议,日志、监控、客服工单里不应出现明文卡号;
  • 内部数据访问做分级,谁能看到脱敏交易记录、谁完全不接触支付数据,权限要能说清楚边界;
  • 审视接入支付页面的第三方SDK、埋点和插件,确认它们没有机会截获输入框内容;
  • 提前理清一旦怀疑数据异常该走的内部上报流程,别等真出事了才现场现想;
  • 把网关在合同里对数据安全的责任边界读清楚,别假设"反正是网关的事"就不看条款。

这几条很多也和日常的商户 KYC 义务与合规架构是同一套思路的延伸——合规从来不是单点动作,而是准入、交易、风控、数据安全几个环节一起拉齐的结果。我们自己也会把这份清单和商户风控触发原因放在一起看,很多数据安全隐患和风控异常其实是同一类系统问题的两面。遇到需要排查资金和数据到底经过了哪些环节时,我们也会回头翻一遍资金路径与商户自查清单,把技术侧和资金侧的自查对齐。

常见问题

PCI DSS是菲律宾政府发的牌照吗?

不是。它是国际卡组织层面制定的行业数据安全标准,不属于菲律宾央行或任何单一国家监管机构发放的牌照,但银行、网关等受监管机构在运营中通常也需要满足这类行业标准的要求。

我们交易量不大,是不是可以不用管PCI DSS?

交易规模确实会影响审核的深度和方式,规模小的商户通常对应更轻量的自评估流程,但"不用管"和"审核方式更轻"是两个概念——不落地存储卡号、让传输链路全程加密这些基本原则,不论交易量大小都适用。

用了持牌网关是不是就完全不用管数据安全了?

不是。网关承接了直接接触持卡人数据的主要环节,但商户自己后台怎么处理交易记录、谁能看到哪些数据、有没有第三方代码截获输入框,这些仍然是商户自己要把关的部分。

哪些行为算是"落地存储"持卡人数据?

把完整卡号、有效期或验证码写进自己的数据库、日志文件、Excel表格、聊天记录甚至纸质单据,都算落地存储。只保留脱敏后的末四位和网关返回的交易号用于核对,一般不在这个范畴内。

自己的App或网站要不要专门去做PCI DSS认证?

这取决于接入架构。如果支付环节完全交给持牌网关的托管页面或前端组件,商户自身通常只需要配合填写轻量级的自评估材料;如果商户自己处理原始卡号,就需要按对应等级走更完整的评估流程,这部分建议直接和签约的网关或收单方确认具体要求。

怎么判断一家网关的PCI DSS合规是不是真实的?

可以要求对方说明持牌情况、数据存储架构是否采用Token化、能否提供第三方评估相关的说明文件,含糊其辞或拿不出任何佐证的,就要打一个问号。

这篇算是把我自己这段时间搞明白的东西理了一遍,没有哪条是我自己凭空判断的,都是接入和尽调过程里实际用得上的角度。如果你也在菲律宾这边做收单接入,想具体核对一下自己现在的架构在PCI DSS这条线上处于什么位置,可以直接找我们聊:Telegram @LouisSMARTPAY,或者邮件 [email protected]。

相关推荐