2C2P作为一站式支付服务提供商,为商家提供了多种支付方式,包括流行的菲律宾电子钱包GCash。本指南将详细介绍如何使用2C2P的PGW SDK来集成GCash支付,以便商家能够接受来自菲律宾用户的电子钱包支付。
二、准备工作
在开始集成之前,请确保您已经注册了2C2P账户,并且获得了必要的API密钥和商户ID。同时,您需要了解GCash在菲律宾的支付流程和相关限制。
三、集成步骤
1. 生成支付令牌
首先,您需要生成一个支付令牌,这是发起支付请求的必要步骤。
请求参数示例:
json复制代码{ "merchantID": "您的商户ID", "invoiceNo": "1595219400", "description": "商品或服务描述", "amount": 10.0, "currencyCode": "PHP", // 注意:使用GCash时应指定为PHP "nonceStr": "一个随机字符串", "paymentChannel": ["DPAY"] }
merchantID
:您的2C2P商户ID。invoiceNo
:订单号,需唯一。description
:商品或服务的描述。amount
:支付金额。currencyCode
:货币代码,GCash应使用PHP。nonceStr
:一个随机字符串,用于防止重放攻击。paymentChannel
:支付渠道,对于GCash,使用"DPAY"并指定"EWALLET"和"GCASH"。响应:支付令牌ID将被返回,用于后续步骤。
2. 接收支付令牌响应
处理从2C2P服务器返回的支付令牌ID,并将其保存在您的系统中,以便后续使用。
3. 准备电子钱包支付请求
使用上一步获取的支付令牌ID和GCash的支付参数构建支付请求。
支付参数示例:
java复制代码PaymentCode paymentCode = new PaymentCode("GCASH");PaymentRequest paymentRequest = new DigitalPaymentBuilder(paymentCode).setName("用户姓名").setEmail("用户邮箱").setAccountNo("用户GCash账号,可选").build();
PaymentCode
:指定支付方式为GCASH。setName
、setEmail
:用户的基本信息,可能用于支付验证。setAccountNo
:在某些情况下,可能需要用户提供其GCash账号,但通常不是必需的。
4. 准备交易请求
将支付令牌和支付请求合并成交易请求,并提交给2C2P服务器。
请求参数:
结合支付令牌和支付请求参数构建交易请求对象。
5. 接收交易请求响应
处理2C2P服务器返回的交易响应。根据响应码,您可能需要重定向用户到GCash应用或网页进行支付授权。
响应处理示例:
java复制代码PGWSDK.getInstance().proceedTransaction(transactionResultRequest, new APIResponseCallback<TransactionResultResponse>() { @Override public void onResponse(TransactionResultResponse response) { if (需要重定向) { String redirectUrl = response.getData(); // 打开WebView或重定向到GCash应用 } else { // 处理支付结果或错误 } } @Override public void onFailure(Throwable error) { // 处理错误 } });
6. 发起支付查询
支付完成后,您可能需要查询支付详情和状态。使用支付查询API获取最新信息。
查询参数:
提供订单号或支付ID作为查询参数。
响应处理:
解析查询响应,获取支付状态和详情。
四、总结
通过以上步骤,您可以成功地将GCash支付集成到您的系统中,从而接受来自菲律宾用户的电子钱包支付。确保测试所有支付流程,以确保系统的稳定性和安全性。如果遇到任何问题,请查阅2C2P的官方文档或联系技术支持获取帮助。
发表评论
发表评论: