Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。
独立站支付系统概述
独立站的支付系统直接影响用户的购买转化率。一个配置完善的支付系统应支持多种支付方式,覆盖国内用户(支付宝、微信支付)和国际用户(信用卡、PayPal)。
支付方式选择:
- 国内用户:支付宝、微信支付占90%以上份额
- 跨境用户:PayPal(欧美主流)、Stripe(全球信用卡)、本地支付(iDEAL、Klarna等)
- 聚合支付:Ping++、收钱吧、连连支付,一个接口接入多渠道
支付宝接入
步骤1:开通支付宝商户
- 访问 antgroup.com 申请企业支付宝账号
- 完成企业认证(营业执照、法人信息)
- 创建应用,获取AppID
- 配置应用密钥(RSA2签名)
步骤2:接入支付
支付宝提供多种产品:
- 当面付:扫码支付,适合PC站
- 手机网站支付:H5页面调起支付宝App
- 电脑网站支付:PC端跳转支付宝页面
接入流程(当面付为例):
// 1. 后端创建支付订单,获取二维码URL
const params = new URLSearchParams({
out_trade_no: 'ORDER_20260401_001',
total_amount: '99.00',
subject: '商品名称',
method: 'alipay.trade.precreate' // 当面付
});
// 发送请求到支付宝API,获取qr_code
// 前端展示二维码,用户扫码完成支付
微信支付接入
步骤1:开通微信商户
- 访问 pay.weixin.qq.com 注册微信支付商户
- 完成企业认证,绑定微信公众账号
- 获取商户号(mch_id)和API密钥
- 设置支付回调地址(notify_url)
步骤2:JSAPI支付(公众号内支付)
// 后端创建预付单
const wxParams = {
appid: 'wx_appid',
mch_id: 'merchant_id',
nonce_str: generateNonce(),
body: '商品名称',
out_trade_no: 'ORDER_20260401_001',
total_fee: 9900, // 单位:分
spbill_create_ip: 'server_ip',
notify_url: 'https://yourdomain.com/pay/notify',
trade_type: 'JSAPI',
openid: 'user_openid' // 需要先获取用户openid
};
// 签名后请求统一下单接口
// 返回prepay_id,前端调起微信支付
跨境支付:PayPal与Stripe
PayPal接入
- 注册 PayPal Developer 账号(developer.paypal.com)
- 创建应用,获取 Client ID 和 Secret
- 前端集成 PayPal Buttons
<!-- 前端集成PayPal按钮 -->
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{ amount: { value: '19.99' } }]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(order) {
// 支付成功,提交到后端验证
fetch('/api/paypal/verify', {
method: 'POST',
body: JSON.stringify({ orderID: data.orderID })
});
});
}
}).render('#paypal-button-container');
</script>
Stripe接入
Stripe支持全球信用卡和借记卡支付,接入体验最佳:
// 后端(Node.js)
const stripe = require('stripe')('sk_live_your_secret_key');
app.post('/api/create-payment', async (req, res) => {
const session = await stripe.checkout.sessions.create({
payment_method_types: ['card'],
line_items: [{
price_data: { currency: 'usd', product_data: { name: '商品名' }, unit_amount: 1999 },
quantity: 1
}],
mode: 'payment',
success_url: 'https://yourdomain.com/success',
cancel_url: 'https://yourdomain.com/cancel'
});
res.json({ url: session.url });
});
支付安全要点
- HTTPS:支付页面必须使用HTTPS加密
- 回调验证:支付成功回调必须验证签名,防止伪造
- 幂等处理:同一订单不能重复支付,用订单号去重
- 金额校验:后端校验金额与前端提交一致
- 日志记录:记录每笔支付的完整日志便于排查
总结
国内独立站优先接入支付宝和微信支付,覆盖绝大多数用户。做跨境业务则需接入PayPal或Stripe。关键安全要点:HTTPS、回调签名验证、订单幂等处理。如果不想分别对接,聚合支付平台(Ping++、收钱吧)是一个简化方案。