在印度支付平台(如Paytm、PhonePe、Razorpay等)进行API集成通常需要以下步骤。这里以通用流程为例,具体细节需参考各平台官方文档:
1. 选择支付网关
根据业务需求选择适合的支付平台:
- UPI类:PhonePe、Google Pay India、BHIM
- 聚合支付:Razorpay, PayU India, CCAvenue
- 钱包类:Paytm Wallet, MobiKwik
- 国际卡收单:Stripe India, 2Checkout
2. 注册商户账户
- 访问支付平台官网(如 Razorpay.com)
- 提交企业资料(GSTIN/PAN、银行账户、营业执照等)
- 完成KYC验证(通常需1-3个工作日)
3. 获取API密钥
在商户后台找到开发选项,获取:
API Key
(生产环境与测试环境不同)Merchant ID
- Webhook密钥(用于异步通知)
⚠️ 测试环境可使用沙箱(Sandbox)模式模拟交易
4. API集成方式
(A) 前端集成(Web/App)
// Razorpay示例 (Web)
var options = {
"key": "YOUR_API_KEY",
"amount": "50000", // ₹500 (单位: paise)
"currency": "INR",
"name": "Your Company",
"handler": function(response){
// UPI/卡支付成功回调
console.log(response.payment_id);
}
};
var rzp = new Razorpay(options);
rzp.open();
(B) 后端验证签名(PHP示例)
// Razorpay webhook验签
$webhookSecret = 'your_webhook_secret';
$receivedSignature = $_SERVER['HTTP_X_RAZORPAY_SIGNATURE'];
$payload = file_get_contents('php://input');
// Verify signature
$expectedSignature = hash_hmac('sha256', $payload, $webhookSecret);
if ($expectedSignature === $receivedSignature) {
http_response_code(200);
} else {
http_response_code(403); // Invalid signature
}
5. 支持的付款方式配置
根据需求启用:
| Payment Method | API参数示例 |
|—————-|——————|
| UPI | method=upi
|
| Net Banking | method=netbanking&bank=HDFC
|
| Wallets | method=wallet&wallet=paytm
|
| Cards | method=card&card[number]=4111...
|
6. Webhook设置
配置服务器端点接收异步通知:
POST https://yourdomain.com/payment/webhook
处理事件类型:
发表回复