跳到主要内容
版本:next

支付方式

在正式运营商城之前,我们需要配置至少一个可用的支付方式,目前商城支持的支付方式包括:

  • 支付宝
  • 微信支付
  • 易支付
  • Stripe
  • 银行转账(手动)
  • 收款码支付(手动)

首先登录到 Halo 控制台,进入 商店 -> 设置 -> 支付方式 页面,点击右上角的新建按钮。

备注

在配置支付方式之前,建议先创建一个测试产品,方便在配置完成后进行测试。

支付宝

创建支付宝应用

支付宝支付使用官方接口,买家交易的资金将直接进入商家的支付宝账户,无第三方平台介入。

在创建支付宝支付方式之前,需要先在支付宝商家平台和支付宝开放平台完成注册。

注册完成后,进入支付宝 开放平台 -> 控制台,点击 创建网页/移动应用 按钮:

其中 应用类型 选择网页应用,其他参数按照实际情况填写即可。

获取支付宝配置信息

创建应用后,进入应用详情页面:

  • 1️⃣:应用 ID
  • 2️⃣:设置接口加签方式
    • 加签方式选择 密钥
    • 其他流程按照支付宝的指引进行操作
    • 最后下载 支付宝公钥证书 到本地,后续配置时需要
  • 3️⃣:接口内容加密方式,点击 生成加密方式 并复制密文

在 Halo 中配置

打开新建支付方式的界面,支付提供商选择 支付宝支付,并填写以下信息:

  • 启用:勾选
  • 名称:给用户展示的支付方式名称
  • 场景:选择 PC 网页支付
  • 网关地址:https://openapi.alipay.com
  • 支付宝账号 ID:进入支付宝开放平台的账户中心,复制 账号 ID
  • 应用 ID:上一步中获取的应用 ID
  • 商户私钥:上一步在工具中生成的密钥文件
  • 支付宝公钥:上一步中下载的 alipayCertPublicKey_RSA2.crt 文件内容
  • 加密密钥:上一步中生成的加密密钥

配置完成之后,还需要在 销售渠道 中绑定该支付方式。

支付预览:

沙箱环境

访问 沙箱应用 - 开放平台,按照页面上的信息在 Halo 中配置即可。

微信支付

申请微信支付商户号

微信支付使用官方接口,买家交易的资金将直接进入商家的微信支付商户账户,无第三方平台介入。

在配置微信支付之前,需要先在微信支付商户平台申请商户号。

注册并完成商户认证后,进入 微信支付商户平台,开通 Native 支付

获取微信支付配置信息

登录微信支付商户平台后,需要获取以下配置信息:

获取商户号

进入商户平台的 账户中心 -> 商户信息,查看您的微信支付商户号(Mch ID)。

设置 API 密钥

  1. 进入 账户中心 -> API 安全 -> API v3 密钥
  2. 点击 设置密钥 按钮,按照提示设置 API v3 密钥(32 位字符串)
  3. 请妥善保管该密钥,后续在 Halo 中配置时需要使用

申请 API 证书

  1. 进入 账户中心 -> API 安全 -> 验证商户身份 -> 商户 API 证书
  2. 点击 申请 API 证书管理证书
  3. 按照页面指引完成操作后,下载证书文件(包含 apiclient_cert.pemapiclient_key.pem
  4. 在证书管理页面可以查看到证书序列号,记录下来以便配置

获取微信 AppID

  1. 进入 产品中心 -> AppID 账号管理
  2. 关联您的微信公众号、小程序或企业微信
  3. 记录下对应的 AppID

在 Halo 中配置

打开新建支付方式的界面,支付提供商选择 微信支付,并填写以下信息:

  • 启用:勾选
  • 名称:给用户展示的支付方式名称
  • 场景:选择 PC 网页支付
  • 应用 ID:上一步获取的微信 AppID
  • 商户号:上一步获取的商户号(Mch ID)
  • 商户私钥:上一步下载的 apiclient_key.pem 文件内容
  • 商户证书序列号:上一步获取的证书序列号
  • API v3 密钥:上一步设置的 API v3 密钥

配置完成之后,还需要在 销售渠道 中绑定该支付方式。

支付预览:

易支付

注册易支付

访问 易支付官网,注册并登录账号。

开通支付渠道

访问 易支付 -> 我的支付渠道,新增支付宝或者微信渠道,根据平台的要求填写相关信息。

开通成功之后,需要记录 渠道 ID,后续在 Halo 中配置时可能需要使用。

获取 API 信息

访问 易支付 -> API 安全,记录 网关商户 ID(PID)商户密钥(KEY),后续在 Halo 中配置时需要使用。

在 Halo 中配置

打开新建支付方式的界面,支付提供商选择 易支付,并填写以下信息:

  • 启用:勾选
  • 名称:给用户展示的支付方式名称
  • 场景:选择 PC 网页支付
  • 自定义图标:由于易支付同时支持微信和支付宝,推荐自定义图标来区分
  • 网关地址:上一步中记录的 网关
  • 商户号:上一步中记录的 商户 ID(PID)
  • 商户私钥:上一步中记录的 商户密钥(KEY)
  • 支付方式:选择 微信支付宝,需要确保已经在易支付开通对应的渠道
  • 支付渠道 ID:上一步中记录的 渠道 ID,支持填写多个,使用英文逗号, 隔开,如果不填则随机调用

配置完成之后,还需要在 销售渠道 中绑定该支付方式。

支付预览:

Stripe

登录或者注册 Stripe

访问 Stripe 官网,登录或者注册账号,并且需要完成必要的信息填写,确保可以正常使用 Stripe 的支付功能。

获取 API 信息

登录到 Stripe 控制台,进入设置 -> 开发人员 -> 管理 API 密钥,复制 密钥 即可,后续在 Halo 中配置时需要使用。

创建 WebHook

  1. 打开工作台

  2. 切换到 WebHook 选项卡,并点击 添加接收端

  3. 在事件中选择 checkout.session.completed

  4. 接收端类型选择 Webhook 端点

  5. 填写端点 URL

    备注

    端点 URL 的格式为:

    https://your-domain.com/apis/api.ecommerce.halo.run/v1alpha1/payment-providers/stripe/callback

    其中 your-domain.com 需要替换为你的域名,并且需要确保该域名可以访问。

    最后点击 创建 按钮即可。

  6. 获取签名密钥

    创建完成之后可以在页面的 签名密钥 部分复制 签名密钥,后续在 Halo 中配置时需要使用。

在 Halo 中配置

打开新建支付方式的界面,支付提供商选择 Stripe,并填写以下信息:

  • 启用:勾选
  • 名称:给用户展示的支付方式名称
  • 场景:选择 PC 网页支付
  • API Key:上一步中获取的 密钥
  • WebHook Secret:上一步中获取的 签名密钥

配置完成之后,还需要在 销售渠道 中绑定该支付方式。

支付预览:

银行转账

银行转账支付方式不经过 Halo 的支付系统,仅仅是在支付的时候显示商家的银行收款信息,让买家转账到商家的银行账户,后续再通过人工审核的方式确认订单。

打开新建支付方式的界面,支付提供商选择 银行转账,并填写以下信息:

  • 启用:勾选
  • 名称:给用户展示的支付方式名称
  • 场景:选择 PC 网页支付
  • 收款银行:银行名称
  • 银行支行地址:开户行地址
  • 收款账户名:收款账户名称
  • 收款账号:收款银行账号
  • 付款说明:为用户说明转账时需要注意的事项

配置完成之后,还需要在 销售渠道 中绑定该支付方式。

支付预览:

收款码支付

收款码支付方式不经过 Halo 的支付系统,仅仅是在支付的时候显示商家的收款码,让买家扫码支付,后续再通过人工审核的方式确认订单。

打开新建支付方式的界面,支付提供商选择 收款码支付,并填写以下信息:

  • 启用:勾选
  • 名称:给用户展示的支付方式名称
  • 场景:选择 PC 网页支付
  • 收款码二维码图片链接
  • 付款说明:为用户说明扫码时需要注意的事项

配置完成之后,还需要在 销售渠道 中绑定该支付方式。

支付预览: