开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第3天,点击查看活动详情
1. 介绍
简介
电脑网站支付是指商户在电脑网页展示商品或服务,用户在商户页面确认使用支付宝支付时,浏览器自动跳转支付宝电脑网页完成付款的支付产品。
使用方式
电脑网站支付的方式一共有三种。
- 在支付宝页面扫码支付
- 在支付宝页面登录账户支付
- 在商家页面扫码支付
2. 接入准备
在接入支付宝支付之前,需要做一系列的准备工作。
商户接入
【接入要求】
- 个人支付宝
- 经营内容和价格信息
- 营业执照,支付宝主体信息需和执照保持一致
- 企业支付宝
- 经营内容和价格信息
【接入流程】
- 创建应用
- 基本应用信息
- 开发相关信息
- 绑定应用
- 绑定商家与应用通过APPID
- 配置密钥
- 根据支付宝密钥工具生成密钥并配置到应用
- 上线应用
- 提交审核上线应用
- 开通产品
- 应用上线后,商家需要开通方可使用
沙箱接入
【接入要求】
- 支付宝账号
【接入流程】
基本框架
pom
<dependency>
<groupId>com.alipay.sdk</groupId>
<artifactId>alipay-sdk-java</artifactId>
<version>4.34.52.ALL</version>
</dependency>
yml
参数来源,沙箱控制台地址,需要登录支付宝账户。
ali-pay:
#接下来两个用来标识用户
#商户id
pid: xxxxxxxxxxxxxxxxxxxxxxx
#应用appid(和商户id绑定过)
app-id: xxxxxxxxxxxxxxxxxxxxxxx
#接下来三个用来确保SSL
#商户私钥
merchant-private-key: xxxxxxxxxxxxxxxxxxxxxxx
#支付宝公钥
ali-pay-public-key: xxxxxxxxxxxxxxxxxxxxxxx
#接下来三个是相关地址
#支付宝网关
gateway-url: https://openapi.alipaydev.com/gateway.do
#接收结果通知地址
notify-url: xxxxxxxxxxxxxxxxxxxxxxx
#页面跳转同步通知页面路径
return-url: xxxxxxxxxxxxxxxxxxxxxxx
AlipayConfig
@Data
@Slf4j
@Configuration
@ConfigurationProperties(prefix = "ali-pay")
public class AlipayConfig {
private String appId;
private String merchantPrivateKey;
private String aliPayPublicKey;
private String gatewayUrl;
private String notifyUrl;
private String returnUrl;
@Bean
public AlipayClient alipayClient() throws AlipayApiException {
com.alipay.api.AlipayConfig alipayConfig=new com.alipay.api.AlipayConfig();
//设置appId
alipayConfig.setAppId(appId);
//设置商户私钥
alipayConfig.setPrivateKey(merchantPrivateKey);
//设置支付宝公钥
alipayConfig.setAlipayPublicKey(aliPayPublicKey);
//设置支付宝网关
alipayConfig.setServerUrl(gatewayUrl);
//设置请求格式,固定值json.
alipayConfig.setFormat(AlipayConstants.FORMAT_JSON);
//设置字符集
alipayConfig.setCharset(AlipayConstants.CHARSET_UTF8);
//设置签名类型
alipayConfig.setSignType(AlipayConstants.SIGN_TYPE_RSA2);
//构造client
AlipayClient alipayClient=new DefaultAlipayClient(alipayConfig);
log.info("##AliPay -> AppId : {};ServerUrl : {}",appId,gatewayUrl);
return alipayClient;
}
}
3. 结束
好的,我们已经准备好所有所需的资料,现在开始开发把!