# 把Fluent Forms连接到Bayarcash

> 安装Bayarcash for Fluent Forms，在Fluent Forms Pro付款表单上收取FPX、DuitNow、卡和跨境付款。
>
> Source: https://docs.bayarcash.com/zh/fluent-forms/

**Bayarcash for Fluent Forms**把Bayarcash加入你的Fluent Forms Pro付款表单，成为一种付款方式。你的顾客填写表单，在Bayarcash页面付款，然后回到你的网站。

安装之前想先看看插件怎样运作，可以试试[在线演示](https://form.bayarcash-demo.com/fluentform/)。

## 支持的渠道

插件为每个渠道添加一种付款方式。你可以为每个表单选择想要的付款方式：

| 付款方式 | 你的顾客用什么付款 |
|---|---|
| FPX Online Banking | FPX网上银行 |
| Credit Card | 通过FPX使用信用卡账户 |
| DuitNow Online Banking | DuitNow Online Banking/Wallets |
| DuitNow QR | 任何支持DuitNow QR的银行或电子钱包App |
| SPayLater | Shopee的SPayLater |
| Boost PayFlex | Boost PayFlex |
| Indonesia Online Banking | 印尼网上银行（QRIS） |
| Indonesia e-Wallet | 印尼电子钱包（QRIS） |
| NETS Singapore | NETS（新加坡） |

付款只限一次性付款，而且只接受MYR。不支持订阅和Direct Debit。一个渠道必须同时在你的Bayarcash portal开启，才能使用。请参阅[付款渠道](/zh/payment-channels/)。

## 开始之前

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

- 一个已获批准的Bayarcash商家账号。
- 你的**Personal Access Token (PAT)**、**API Secret Key**和**Portal Key**。请参阅[找到你的API key](/zh/api-keys/)。
- 已安装并启用的Fluent Forms Pro，付款货币设为马来西亚令吉（MYR）。

## 安装插件

这个插件在WordPress.org免费提供，名称是[Bayarcash for Fluent Forms](https://wordpress.org/plugins/bayarcash-for-fluent-forms/)。安装步骤：

1. 在WordPress里，前往**Plugins** → **Add New**。
2. 搜索**Bayarcash for Fluent Forms**，然后点击**Install**。
3. 点击**Activate**。

## 输入你的key

为所有表单输入一次key就可以：

1. 前往**Fluent Forms** → **Bayarcash Settings**。页面会打开**Global Configuration**标签页。
   
2. 要收取真实付款，请让**Enable Sandbox Mode**保持关闭。
3. 把你的token粘贴到**Personal Access Token**，然后点击**Verify Token**。token有效时，会显示“Token verified successfully”。
4. 在**Portal Key**选择你的portal。
5. 把你的key粘贴到**API Secret Key**。
6. 可选：在**Miscellaneous**下，更改**Payment Title**。默认是**Bayarcash**。
7. 保存你的设置。

## 把Bayarcash加入表单

保存key之后，在每个表单开启付款方式：

1. 在Fluent Forms打开表单，前往它的付款设置。
2. 开启你想要的Bayarcash付款方式，例如**FPX Online Banking**和**DuitNow QR**。
3. 可选：更改每种付款方式的**Method Label**。默认是“Pay with”加上付款方式名称。
4. 保存表单。

## 在一个表单使用不同的key

一个表单可以使用自己的Bayarcash账号或portal，而不是全局设置：

1. 在**Fluent Forms** → **Bayarcash Settings**，打开**Form Configuration**，然后选择表单。
2. 开启**Customization**。
3. 为这个表单输入**Personal Access Token**、**Portal Key**和**API Secret Key**。这里的**Portal Key**是一个文字框，所以请从商家后台（merchant dashboard）复制key并粘贴进去。
4. 保存你的设置。

## 添加手续费

在**Bayarcash Gateway Fee**标签页，你可以在顾客支付的金额上加一笔手续费。你可以为**FPX Online Banking**、**Credit Card**、**DuitNow Online Banking**和**DuitNow QR**设置手续费，方式可以是固定金额、百分比或两者都用，并加上一段顾客会看到的说明。其他渠道使用**DuitNow QR**的手续费。手续费适用于所有表单。

## 在sandbox测试

收取真实付款之前，先在Bayarcash sandbox测试：

1. 从[sandbox商家后台](https://console.bayarcash-sandbox.com)获取token、secret key和portal key。正式key不能在sandbox使用。
2. 开启**Enable Sandbox Mode**。页面会显示“Sandbox mode is enabled. Make sure to use sandbox credentials for testing.”
3. 输入sandbox key，验证token，然后保存。
4. 在你的表单提交一笔测试付款。
5. 测试成功后，关闭**Enable Sandbox Mode**，输入你的正式key，然后再保存一次。

开启了**Customization**的表单有自己的**Enable Sandbox Mode**开关，也请检查它。

## 付款结果怎样传到你的网站

你不需要把callback URL粘贴到商家后台。插件会在每笔付款中附上它自己的地址，也就是你网站上的`/index.php?fluentform_payment_api_notify=1`，Bayarcash会把结果发送到那里。然后插件会把提交记录标为已付款或失败。

如果付款成功后提交记录仍然是pending，请确认你的网站是公开的、使用HTTPS，而且没有防火墙或安全插件拦截那个地址。请参阅[Callback和checksum](/zh/callbacks-and-checksum/)。

## 小贴士

两个好习惯，让你更顺利使用Fluent Forms：

- **每个付款表单都要有姓名和电邮栏位**。Bayarcash需要顾客的姓名和电邮才能创建付款。
- **做大改动之前，先用Backup and Restore**。你可以在**Backup and Restore**标签页导出你的Bayarcash设置，方便之后恢复。

## 常见问题

### 我的表单显示“Error! Currency not supported. The only supported currency is MYR”，怎样解决？

Bayarcash只接受MYR付款。在Fluent Forms的付款设置里，把货币设为马来西亚令吉。改好之前，Bayarcash设置页面会显示一则红色通知，说明货币不兼容。

### 我的表单显示“Error: Bayarcash does not support subscriptions right now.”

Bayarcash for Fluent Forms只接受一次性付款。请从表单移除订阅项目，或为它使用另一种付款方式。

### Portal Key列表是空的，或显示“Please verify Personal Access Token first”。

token验证之后，列表才会出现选项。把你的token粘贴到Personal Access Token，然后点击Verify Token。如果显示“Verification failed”，请检查token是否和Enable Sandbox Mode一致：sandbox用sandbox的token，正式环境用正式环境的token。

### 我看到“Bayarcash for Fluent Forms requires Fluent Forms Pro to be installed and activated.”

这个插件需要Fluent Forms Pro，只有免费版Fluent Forms是不够的。请安装并启用Fluent Forms Pro，然后重新加载页面。
