以下是为个人网站开通支付宝当面付功能的详细教程,包括免费签约和集成到网站的步骤:
一、开通支付宝当面付功能
1. 申请条件
-
账户类型:支持经过实名认证的个人或企业支付宝账户。
-
营业执照:个人开发者无需提供营业执照,但需提供经营场所照片(如门店招牌或内景照)。
-
经营类目:选择“百货零售/其他零售/杂货店”,避免选择金融或计算机相关类目。
2. 申请步骤
-
登录支付宝开放平台(https://open.alipay.com)。
-
创建应用,填写应用名称和图标。
-
在应用中添加“当面付”能力,提交审核。
-
提交经营场所照片(如门店招牌或内景照),审核通常在几分钟内完成。
二、开发设置与集成
1. 配置密钥
-
下载支付宝开发助手工具,生成应用公钥和私钥。
-
将应用公钥上传到支付宝平台,保存应用私钥用于后续开发。
2. 开发环境
-
使用支付宝提供的SDK进行开发。例如,Java开发可以引入以下依赖:
xml复制
<dependency> <groupId>com.alipay.sdk</groupId> <artifactId>alipay-sdk-java</artifactId> <version>4.10.170.ALL</version> </dependency>
3. 接口调用
-
调用支付宝当面付接口(
alipay.trade.precreate
)生成支付二维码。 -
示例代码:
java复制
AlipayClient alipayClient = new DefaultAlipayClient( "https://openapi.alipay.com/gateway.do", "你的AppId", "你的应用私钥", "json", "UTF-8", "支付宝公钥", "RSA2"); AlipayTradePrecreateRequest request = new AlipayTradePrecreateRequest(); request.setBizContent("{" + "\"out_trade_no\":\"订单号\"," + "\"total_amount\":\"订单金额\"," + "\"subject\":\"商品名称\"," + "\"store_id\":\"门店ID\"" + "}"); request.setNotifyUrl("你的回调地址"); try { AlipayTradePrecreateResponse response = alipayClient.execute(request); if (response.isSuccess()) { System.out.println("支付二维码:" + response.getQrCode()); } } catch (AlipayApiException e) { e.printStackTrace(); }
4. 回调处理
-
设置异步通知地址(
notify_url
),处理支付结果。 -
示例代码:
java复制
@PostMapping("/notify") public String notify(HttpServletRequest request) { Map<String, String> params = request.getParameterMap().entrySet().stream() .collect(Collectors.toMap(Map.Entry::getKey, e -> e.getValue()[0])); boolean verifyResult = AlipaySignature.rsaCheckV1(params, "支付宝公钥", "UTF-8", "RSA2"); if (verifyResult) { String tradeStatus = params.get("trade_status"); if ("TRADE_SUCCESS".equals(tradeStatus)) { // 支付成功,处理业务逻辑 } } return "success"; }
三、注意事项
-
个人开发者限制:个人开发者开通当面付后,收款有限额(单笔收款≤1000元,单日收款≤5万元),但一般足够使用。
-
审核时间:审核通常在工作日30分钟内完成。
-
测试环境:建议在沙箱环境中测试支付流程,确保回调逻辑正确。
通过以上步骤,个人开发者可以为网站接入支付宝当面付功能,实现扫码支付和实时回调。
云服务器资源推荐