# 支付宝小程序渠道配置 ## 概述 支付宝小程序是蚂蚁金服生态中的重要应用形态,依托支付宝庞大的用户基础和完善的支付体系,为开发者提供了优质的开发平台。本文档描述了支付宝小程序渠道的完整配置流程。 ## 基本信息 - **渠道标识**: `alipay_mini_program` - **渠道名称**: 支付宝小程序 - **渠道类型**: 小程序 - **所属分组**: 小程序 (mini_program) ## 配置要素 ### 1. 基本配置 ```php // 渠道基本信息 'channel' => 'alipay_mini_program', 'name' => '支付宝小程序', 'status' => true, // 开启/关闭 'description' => '支付宝小程序平台接入' ``` ### 2. 支付宝平台配置 #### 必填参数 - **AppId**: 小程序应用ID - **私钥**: 应用私钥 - **公钥**: 支付宝公钥 #### 配置示例 ```php 'alipay_config' => [ 'app_id' => '2021001234567890', 'private_key' => '应用私钥内容', 'public_key' => '支付宝公钥内容', 'sign_type' => 'RSA2', 'charset' => 'UTF-8', 'gateway_url' => 'https://openapi.alipay.com/gateway.do' ] ``` #### 获取方式 1. 登录支付宝开放平台 (open.alipay.com) 2. 创建小程序应用 3. 在「开发设置」中获取AppID 4. 配置应用公钥和获取支付宝公钥 ### 3. 支付配置 支付宝小程序支持以下支付方式: #### 3.1 支付宝支付 ✅ (推荐) - **状态**: 开启 - **优先级**: 1 - **配置要求**: - 需要开通支付宝商户号 - 配置小程序支付 - 设置支付证书 ```php 'payment_config' => [ 'alipay' => [ 'enabled' => true, 'app_id' => '支付宝应用ID', 'private_key' => '应用私钥', 'public_key' => '支付宝公钥', 'notify_url' => '支付回调地址' ] ] ``` #### 3.2 余额支付 ✅ - **状态**: 开启 - **优先级**: 2 - **说明**: 用户使用账户余额进行支付 ```php 'payment_config' => [ 'balance' => [ 'enabled' => true, 'min_amount' => 0.01, // 最小支付金额 'max_amount' => 10000, // 最大支付金额 ] ] ``` #### 3.3 不支持的支付方式 ❌ - 微信支付 - 线下支付 - 货到付款 ### 4. 登录配置 #### 4.1 自动登录 - **状态**: 开启/关闭 - **说明**: 进入应用后,用户将会自动授权登录,未注册用户将会自动注册 ```php 'login_config' => [ 'auto_login' => true, 'auto_register' => true, ] ``` #### 4.2 绑定手机号 - **状态**: 开启/关闭 - **说明**: 授权登录后,未绑定手机号的用户,将会立即提醒绑定手机号 ```php 'login_config' => [ 'force_mobile' => true, 'mobile_verify' => true, // 手机号验证 ] ``` ### 5. 功能特性 | 功能 | 支持状态 | 说明 | |------|---------|------| | 支付功能 | ✅ | 支持支付宝支付、余额支付 | | 分享功能 | ✅ | 支持分享到支付宝好友、朋友圈 | | 定位功能 | ✅ | 支持获取用户地理位置 | | 拍照功能 | ✅ | 支持调用摄像头拍照 | | 推送功能 | ✅ | 支持模板消息推送 | ## 配置流程 ### 1. 支付宝开放平台配置 1. **注册开发者账号** - 访问 https://open.alipay.com - 注册开发者账号 - 完成实名认证 2. **创建小程序** - 在开放平台创建小程序 - 填写小程序基本信息 - 完成小程序认证 3. **获取开发信息** - 在「开发设置」中获取AppID - 配置应用公钥 - 获取支付宝公钥 4. **配置服务器域名** - 在「开发设置」中配置 - HTTP请求域名:`https://your-domain.com` - 上传文件域名:`https://your-domain.com` ### 2. 系统后台配置 1. **基本信息配置** ``` 渠道状态: 开启 渠道名称: 支付宝小程序 渠道描述: 支付宝小程序平台 ``` 2. **平台参数配置** ``` AppId: 2021001234567890 私钥: 应用私钥内容 公钥: 支付宝公钥内容 ``` 3. **支付方式配置** ``` 微信支付: 关闭 支付宝支付: 开启 余额支付: 开启 货到付款: 关闭 ``` 4. **登录方式配置** ``` 自动登录: 开启 绑定手机号: 开启 ``` ### 3. 开发配置 1. **小程序代码配置** ```javascript // app.js App({ globalData: { apiUrl: 'https://your-domain.com/api', appId: '2021001234567890' } }) ``` 2. **登录授权** ```javascript // 获取用户信息 my.getAuthCode({ scopes: 'auth_user', success: (res) => { if (res.authCode) { // 发送 authCode 到服务器 } } }) ``` 3. **支付调用** ```javascript // 支付宝支付 my.tradePay({ orderStr: orderStr, // 订单信息 success: function(res) { // 支付成功 }, fail: function(res) { // 支付失败 } }) ``` ## 测试验证 ### 1. 开发者工具测试 - 使用支付宝小程序开发者工具 - 测试登录授权流程 - 测试支付功能(需要真机) ### 2. 真机测试 - 在支付宝中打开测试小程序 - 测试完整业务流程 - 验证支付功能 ### 3. 接口测试 ```bash # 测试登录接口 curl -X POST "https://your-domain.com/api/login" \ -H "Content-Type: application/json" \ -d '{"code":"支付宝登录code","channel":"alipay_mini_program"}' # 测试支付接口 curl -X POST "https://your-domain.com/api/payment/create" \ -H "Content-Type: application/json" \ -d '{"amount":100,"channel":"alipay_mini_program","payment_type":"alipay"}' ``` ## 注意事项 1. **域名配置** - 必须使用HTTPS协议 - 域名需要备案 - 需要在支付宝开放平台配置合法域名 2. **支付配置** - 支付宝小程序原生支持支付宝支付 - 需要开通支付宝商户号 - 配置支付回调地址 3. **用户授权** - 获取用户信息需要用户主动授权 - 不能强制用户授权 - 需要做好授权失败的处理 4. **版本发布** - 开发完成后需要提交审核 - 审核通过后才能发布 - 建议先发布体验版测试 ## 常见问题 ### Q1: AppId和密钥在哪里获取? A: 在支付宝开放平台的「开发设置」中获取AppID,配置应用公钥后获取支付宝公钥。 ### Q2: 为什么不支持微信支付? A: 支付宝小程序不支持微信支付,推荐使用支付宝支付。 ### Q3: 如何测试支付功能? A: 支付功能需要在真机支付宝中测试,开发者工具无法测试支付。 ### Q4: 登录授权失败怎么办? A: 检查域名配置、AppId配置,确保小程序已发布或设置为体验版。 ## 相关链接 - [支付宝小程序开发文档](https://opendocs.alipay.com/mini/) - [支付宝开放平台](https://open.alipay.com/) - [支付宝小程序开发者工具](https://opendocs.alipay.com/mini/ide/download)