# Connect FluentCart to Bayarcash

> Install Bayarcash for FluentCart, enter your keys and choose which Bayarcash payment channels your customers can pick at checkout.
>
> Source: https://docs.bayarcash.com/fluentcart/

**Bayarcash for FluentCart** adds Bayarcash to your FluentCart checkout. Your customer picks a payment channel, pays on the Bayarcash page and comes back to your receipt page.

To see the plugin at work before you install it, try the [live demo](https://fluentcart.bayarcash-demo.com/).

## What it supports

You choose which channels your customers see at checkout. The options in **Payment Channels** are:

| Channel | What your customer pays with |
|---|---|
| **FPX (Online Banking)** | FPX online banking |
| **FPX Line of Credit** | A credit card account through FPX |
| **DuitNow Online Banking/Wallets** | DuitNow online banking or e-wallet |
| **DuitNow QR** | Any DuitNow QR banking or e-wallet app |
| **Credit Card** | Visa or Mastercard |
| **Boost PayFlex** | Boost PayFlex |
| **QRIS (Online Banking)** | Indonesian online banking |
| **QRIS (E-Wallet)** | Indonesian e-wallets |
| **NETS** | NETS (Singapore) |
| **Alipay** | Alipay |
| **WeChat Pay** | WeChat Pay |
| **PromptPay** | PromptPay (Thailand) |

The list also shows **FPX Direct Debit**. A channel only works if it is also turned on for your Bayarcash portal. See [Payment channels](/payment-channels/).

## Before you start

You need these before you set up the plugin:

- An approved Bayarcash merchant account.
- Your **Personal Access Token (PAT)**, **API Secret Key** and **Portal Key**. See [Find your API keys](/api-keys/).
- FluentCart installed and active, with the store currency set to Malaysian ringgit (MYR).

## Install the plugin

The plugin is free on WordPress.org as [Bayarcash for FluentCart](https://wordpress.org/plugins/bayarcash-for-fluentcart/). To install it:

1. In WordPress, go to **Plugins** → **Add New**.
2. Search for **Bayarcash for FluentCart** and click **Install**.
3. Click **Activate**.

## Set up Bayarcash

All the settings are on one page:

1. Go to **FluentCart** → **Settings** → **Payments** and open **Bayarcash**.
   
2. Paste your token into **Personal Access Token (PAT)**.
3. Paste your key into **API Secret Key**.
4. Paste your portal key into **Portal Key**.
5. In **Payment Channels**, tick the channels your customers can choose. **FPX (Online Banking)** and **DuitNow QR** are ticked to start with.
6. Turn Bayarcash on and save.

When your store is live, saving shows "Bayarcash gateway credentials verified successfully!". This only confirms the fields are filled in, so make a small test payment to be sure the keys work.

## Change the checkout look

The same page sets how the Bayarcash button looks at checkout:

| Setting | What it changes |
|---|---|
| **Bayarcash Checkout Theme** | **Light** or **Dark** |
| **Bayarcash Checkout Button Text** | The button text. It is "Pay with Bayarcash" by default. |
| **Bayarcash Checkout Button Color** and **Bayarcash Checkout Button Hover Color** | The button colours |
| **Bayarcash Checkout Button Text Color** | The colour of the button text |
| **Bayarcash Checkout Button Font Size** | The text size, for example `16px` |

## Test in sandbox

The plugin has no sandbox switch of its own. It follows your FluentCart store mode:

- **Test mode:** payments go to the Bayarcash sandbox, using test keys built into the plugin. The keys you entered are not used, and saving shows "Bayarcash test mode is enabled with your credentials."
- **Live mode:** payments go to Bayarcash using the keys you entered.

Put your store in test mode, place an order and pay it on the sandbox page. When it works, put your store back in live mode and make one small real payment to check your own keys.

## How payment results reach your store

You do not paste a callback URL into the merchant dashboard. The plugin sends its own addresses with each payment: Bayarcash reports the result to your site at `/?fluent-cart=fct_payment_listener_ipn&method=bayarcash`, and your customer returns to your FluentCart receipt page. The plugin then marks the order paid or failed. It never changes an order that is already paid or refunded.

If orders stay pending after a successful payment, make sure your site is public, uses HTTPS, and that no firewall or security plugin blocks that address. See [Callbacks and checksum](/callbacks-and-checksum/).

## Tips

Two habits help with FluentCart:

- **Tick only the channels your portal can take.** Customers who pick a channel that is off for your portal cannot pay.
- **Always test once with your live keys.** Test mode uses the plugin's own keys, so it does not prove your keys are right.

## Common issues

### Saving shows "Portal Key is required to activate the gateway."

FluentCart needs all three keys before it turns Bayarcash on: Personal Access Token (PAT), API Secret Key and Portal Key. The messages for the other two say the same. See Find your API keys (/api-keys/).

### Checkout shows "Bayarcash payment gateway is not properly configured".

Your store is in live mode but one of the three keys is missing. Open FluentCart → Settings → Payments, open Bayarcash, fill in every key and save.

### Saving said "Bayarcash gateway credentials verified successfully!" but payments still fail. Why?

That message only means the three fields are filled in. It does not check the keys with Bayarcash. Copy each key again from the merchant dashboard, and make sure the portal can take the channels you ticked. See Why a payment failed (/payment-failed/).

### Checkout shows "Failed to create payment intent".

Bayarcash refused the payment request, usually because of a wrong key or a channel that is not turned on for your portal. Check your keys and your ticked Payment Channels.
