For AI agents: the complete documentation index is available at https://docs.halo.run/llms.txt, the full documentation bundle is available at https://docs.halo.run/llms-full.txt, and this page is available as Markdown at https://docs.halo.run/guide/use/shop/payments.md.

支付方式

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

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

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

1️⃣ 进入支付方式页面
2️⃣ 新建支付方式

先创建测试产品

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

支付宝

创建支付宝应用

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

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

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

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

获取支付宝配置信息

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

  • 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 格式

    端点 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 网页支付
  • 收款码二维码图片链接
  • 付款说明:为用户说明扫码时需要注意的事项

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

支付预览: