# 从WooCommerce订单发送BCL付款链接

> 安装BCL Payment Link，为未付款的WooCommerce订单生成BCL付款链接发给顾客，顾客付款后订单自动更新。
>
> Source: https://docs.bayarcash.com/zh/bcl-payment-link/

**BCL Payment Link**会在你的WooCommerce订单列表中添加一个**BCL Payment Link**列。对于未付款的订单，你点击一下就能生成BCL付款链接。然后把链接发给顾客，例如通过WhatsApp或电邮。顾客付款后，插件会把订单标为已付。你可以用它挽回顾客没有完成的订单。

这个插件使用[BCL](https://bcl.my)，BCL通过Bayarcash收款。请参阅[什么是Bayarcash](/zh/what-is-bayarcash/)。

## 支持的付款方式

你网站的所有链接都使用同一种付款方式。你在**Payment Method**中选择：

| 选项 | 顾客用什么付款 |
|---|---|
| **FPX (Current & Saving Account)** | FPX网上银行 |
| **Line of Credit** | 通过FPX使用信用卡账户 |
| **DuitNow OBW** | DuitNow网上银行或电子钱包 |

## 开始之前

设置插件之前，你需要准备：

- 已安装并启用的WooCommerce。这个插件需要它。
- 一个已连接到Bayarcash的BCL账号。如需注册，请前往[bcl.my/register](https://bcl.my/register)。
- 一个有**API Read**和**API Write**的BCL API token。请参阅BCL帮助中心的[创建API token](https://docs.bcl.my/zh/api-tokens/)。
- 你的Bayarcash **Portal Key**。请参阅[找到你的API key](/zh/api-keys/)。

## 安装插件

这个插件在WordPress.org上免费提供，名为[BCL Payment Link](https://wordpress.org/plugins/bcl-payment-link/)。安装步骤如下：

1. 在WordPress中，前往**Plugins** → **Add New**。
2. 搜索**BCL Payment Link**，然后点击**Install**。
3. 点击**Activate**。

## 设置插件

设置位于WooCommerce设置中的一个标签页：

1. 前往**WooCommerce** → **Settings**，然后打开**BCL Payment Link**标签页。**Plugins**页面中插件下方的**Settings**链接也会打开同一个标签页。
2. 填写以下栏位：

   | 栏位 | 要填写什么 |
   |---|---|
   | **API Token** | 你的BCL API token。必填。 |
   | **Portal Key** | 你的Bayarcash portal key。必填。 |
   | **Order Prefix** | 这个网站的简短代码，例如`SITEA`。必填。BCL收到的订单号码是前缀、连字符加订单号码，例如`SITEA-116`。 |
   | **Payment Method** | 所有链接使用的付款方式。在你更改之前，它默认是**FPX (Current & Saving Account)**。 |

3. 保存更改。

## 发送付款链接

为每个未付款的订单执行以下步骤：

1. 前往**WooCommerce** → **Orders**。
2. 在订单的**BCL Payment Link**列中，点击**Generate Payment Link**。插件会显示“Payment link generated successfully. Refreshing page...”，然后重新载入页面。
3. 点击**Copy Link**。按钮会显示“Copied!”。
4. 把链接发给顾客。

插件也会添加一条附有链接的私人订单备注：“BCL payment link generated: ...”。链接使用订单的金额、姓名、电邮和电话号码。

## 订单如何更新

插件大约每分钟检查一次每个链接的状态。它检查最新的50个有链接、并且状态为Pending payment、On hold、Cancelled或Failed的订单。然后它会更改订单：

| BCL中的付款结果 | 订单状态 | 订单备注 |
|---|---|---|
| Paid | Processing | “Payment received via BCL Payment Link” |
| Cancelled | Cancelled | “Payment cancelled” |
| Failed | Failed | “Payment failed” |

付款仍是新建或待处理状态时，订单保持不变。

## 小贴士

- **每个网站使用不同的Order Prefix。** 插件按订单号码查找每笔付款。两个网站使用同一个前缀，付款可能会混在一起。
- **从服务器运行WP-Cron。** 如果网站访客很少，请在服务器上为WP-Cron设置cron job。这样，已付款订单的状态就会准时更新。

## 常见问题

### 点击Generate Payment Link后显示“Error: Failed to generate payment link”。我应该检查什么？

检查WooCommerce → Settings → BCL Payment Link中的API Token和Portal Key。token必须有API Write。WooCommerce日志（来源bcl-payment-link）会显示BCL的回复。

### 顾客已经付款，但订单仍显示Pending payment。为什么？

插件通过WP-Cron大约每分钟检查一次付款，而WP-Cron只在有人打开你的网站时才运行。如果网站访客很少，检查可能会延迟。另外，发送链接后不要更改Order Prefix：检查时是用当前的前缀查找订单号码。

### 为什么有些订单没有Generate Payment Link按钮？

插件只为未付款的订单显示这个按钮。已付款的订单会显示“Order Paid”；如果是通过BCL付款链接付款，则显示“Order Paid via BCL”。
