最近,我参与了一个外币虚拟信用卡项目,该项目即将上线。借此机会,我将对整个项目进行总结,并分享一些关键步骤和经验,希望能与读者进行深入交流。
一、项目准备
1. 选择卡片类型
在项目初期,明确卡片的使用场景至关重要。是用于特定行业的商户,还是需要覆盖尽可能多的海外商户?这将决定我们选择预付卡、借记卡还是信用卡。海外商户对信用卡的支持程度最高,其次是借记卡,最后是预付卡。鉴于我的项目面向B端客户,覆盖跨境出口电商和海外线上消费,因此选择了企业借记卡。
2. 选择发卡通道
确定使用场景后,我们需要选择接入的卡组织。通常,我们会选择Visa或Mastercard。实力较强的企业可以直接与Visa或Mastercard对接发卡,而大多数企业则通过对接发卡通道来完成发卡。我的项目选择了一家非银行的发卡机构。
3. 选择持卡人账户模型
根据我对发卡通道的了解,发卡通道通常提供两种持卡人账户模型:鉴权模式和懒人模式。两种模式下,通道都会提供一个资金池账户。
- 鉴权模式:交易发生时,发卡通道会询问是否继续完成交易。如果确认继续,通道会实时从资金池账户扣除交易金额。
- 懒人模式:发卡通道记录持卡人卡内余额,交易实时从卡内余额扣除,交易完成前我们无法获知交易详情。
鉴权模式更灵活,适合需要扩展性的场景,例如营销活动。懒人模式则更适合简化流程,减少资金压力。我的项目选择了懒人模式。
二、项目建设
1. 查看卡片详情
包括卡片余额、完整卡号、CVV、有效期和交易明细。这些信息可以直接从发卡通道的接口获取。为了提高用户体验,我们采用了主动和被动缓存更新机制。
2. 卡片充值
由于项目涉及外币卡,充值必须以外币资产进行。最初的方案是用户将外币资产转账到公司海外母公司的对公账户,再手工转账到资金池账户。为了降低成本,我们优化了充值方案,对接了一款收款产品,并通过接口发起转账到资金池账户。
3. 卡内余额转出
在与发卡通道沟通时,突然发现不支持卡内余额转出,因此该功能被搁置。
4. 虚拟信用卡申请
根据发卡通道的要求,结合业务需求,设计了卡片申请流程。
5. 充值方案优化
通过对接收款产品,优化了充值流程。用户可以直接将款项转入收款账户,再通过接口发起转账到资金池账户,降低了运营成本。
6. 钱包账户
引入了用户钱包账户的概念,提供钱包余额和交易明细查询功能。这些信息由我们独立维护,避免了接口响应慢的问题。
7. 对账
对账主要涉及资金池账户和持卡人交易。我们采用了简单的匹配机制,将收款账户的转出交易与资金池账户的转入交易进行匹配。
三、项目后续
1. 收款账户优化
计划为每个B端客户提供独立的海外当地收款账户,用于接收电商平台和收单渠道的款项。
2. 换汇
提供用户钱包账户资产换汇功能,方便用户进行币种转换。
3. 钱包账户转出
虽然卡账户余额无法转出,但我们将通过钱包账户实现资产转出功能,避免用户因无法转出资金而产生抵触情绪。