> For the complete documentation index, see [llms.txt](https://docs.rafflex.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.rafflex.io/additional-settings/payouts.md).

# Payouts

How you pay customer withdrawals. Pay them by hand (the default), or connect FumoPay or TrueLayer to verify bank accounts and pay withdrawals automatically, then manage everything from your Withdrawal

{% hint style="warning" %}
Automatic payouts are currently in beta. If you would like to use them, or you do not see **Settings**, then **Payouts** in your admin panel, please contact Rafflex support.
{% endhint %}

When a customer withdraws credit from their wallet, that money has to reach their bank account. You have two ways to do this:

* **Manual payouts.** You send each payment from your own bank, then mark the request as paid. This is how every site works out of the box.
* **Automatic payouts.** You connect a payout provider (FumoPay or TrueLayer). Customers verify their bank account with the provider, and their withdrawals are paid straight into that account for you.

This page explains both, walks you through every option on the **Payouts** settings page, and shows you how to look after automatic payouts day to day.

***

## Manual payouts (the default)

By default, every withdrawal is paid **by hand**. When a customer requests a withdrawal, it appears on your **Withdrawals** page with the bank details you need. You send the money from your own bank, then click **Mark as Paid**.

There is nothing to set up on the Payouts page for this. The full process, from customers adding their bank details to you paying and rejecting requests, is covered in these guides:

{% content-ref url="/pages/BcZ3EpDxIjeZXRcgQ2ec" %}
[Wallet & Withdrawals](/essential-settings/wallet-and-withdrawals.md)
{% endcontent-ref %}

{% content-ref url="/pages/vZxnYoSVQU0o9GICuAWR" %}
[Processing Withdrawals](/essential-settings/wallet-and-withdrawals/processing-withdrawals.md)
{% endcontent-ref %}

***

## Automatic payouts

With automatic payouts switched on, two things change:

1. **Customers verify their bank account.** Instead of typing in a sort code and account number, customers click **Verify Bank Account** on their **Payouts** page and confirm their account through their own bank using Open Banking. (Open Banking is the secure, regulated way UK banks share account details with an approved provider, with the customer's permission.) This proves the account really belongs to them.
2. **Withdrawals can be paid for you.** When a verified customer requests a withdrawal at or below your chosen limit, it is sent straight to their bank, usually within seconds. Larger withdrawals wait for you to approve them with one click.

You still stay in control. Anything that cannot be paid automatically, or that goes wrong, comes back to your **Withdrawals** page for you to deal with.

### Before you start

* **Your site needs to trade in pounds (GBP).** Bank verification and automatic payouts work with UK bank accounts only. If your site uses euros (EUR), withdrawals continue to be paid by hand.
* **You need an account with one payout provider.** Rafflex works with **FumoPay** and **TrueLayer**. You only need one. Sign up with the provider first and complete any checks they ask for.
* **Allow some time for testing.** Every setup starts in test mode, so you can check your connection before any real money moves.

### Choose your provider

Pick the provider you have an account with, then follow its setup guide. Both guides cover where to find each detail and how to go live.

|                                  | FumoPay                                            | TrueLayer                                                                     |
| -------------------------------- | -------------------------------------------------- | ----------------------------------------------------------------------------- |
| **Details you enter**            | Profile key, secret key and a payout creator email | Client ID, client secret, signing key ID, signing key and merchant account ID |
| **Name Match Threshold setting** | Not shown                                          | Shown, so you can choose how closely the bank account name must match         |
| **Where payouts are paid from**  | Your FumoPay account                               | Your TrueLayer merchant account, which must hold enough funds                 |

{% content-ref url="/pages/Cg7L3gwPyErUeAtzK54u" %}
[FumoPay](/additional-settings/payouts/payouts-fumopay.md)
{% endcontent-ref %}

{% content-ref url="/pages/PRwNCS4judUz1elBwIIj" %}
[TrueLayer](/additional-settings/payouts/payouts-truelayer.md)
{% endcontent-ref %}

***

## The Payouts settings page

To open it, go to your admin panel, click **Settings** in the left menu, then open **Payouts**.

The page is split into three sections. When **Payout Provider** is set to **Manual / Bank Transfer**, only the first section is shown. Choose an automatic provider and the other two sections appear, showing only the fields for the provider you picked.

When you have finished, click **Save Settings** at the bottom of the page. You will see **Payout settings saved successfully**.

### Provider

| Setting                      | Default                    | What it does                                                                                                                                                                       |
| ---------------------------- | -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Payout Provider**          | **Manual / Bank Transfer** | Who pays your withdrawals. Choose **Manual / Bank Transfer** to pay by hand, **TrueLayer (Automatic)** or **FumoPay (Automatic)** to use a provider.                               |
| **Enable Automatic Payouts** | Off                        | The main on and off switch for your chosen provider. While it is off, the provider does nothing: customers are not offered bank verification and every withdrawal is paid by hand. |
| **Test Mode**                | On                         | Uses the provider's sandbox (a practice version of their system) so no real money moves. Switch it off only when you are ready to go live.                                         |

### Provider Credentials

These are the account details that connect Rafflex to your provider. The fields you see depend on the provider you chose. Each one is explained in its setup guide:

* [FumoPay credentials](/additional-settings/payouts/payouts-fumopay.md#step-2-enter-your-fumopay-details)
* [TrueLayer credentials](/additional-settings/payouts/payouts-truelayer.md#step-2-enter-your-truelayer-details)

Secret fields (such as the secret key or signing key) are hidden once saved. They show a green **Saved** label and a row of dots, with the note *"Saved and hidden. Leave blank to keep the current value, or enter a new one to replace it."* You do not need to paste them in again each time you save the page.

### Payout Rules

| Setting                                 | Default | What it does                                                                                                                                                                                                                                                                                          |
| --------------------------------------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Auto-Payout Max (GBP)**               | 0       | The largest withdrawal that is paid automatically. Withdrawals at or below this amount, from customers who have verified their bank, are sent to the provider as soon as the customer requests them. Anything above it waits for you to approve it. Set it to **0** to approve every payout yourself. |
| **Name Match Threshold (%)**            | 70      | **TrueLayer only.** How closely the name on the customer's bank account must match the name on their Rafflex account for verification to pass. Choose a number between 50 and 100. The note on the page recommends 70 to 85, depending on how cautious you want to be.                                |
| **Retry Max Attempts**                  | 3       | How many times a failed payout can be sent again before it needs settling another way. Choose a number between 0 and 10.                                                                                                                                                                              |
| **Enable Manual Bank Details Fallback** | On      | Lets customers type in their bank details by hand if they cannot verify their account (for example, if their bank is not supported). You then pay those customers the manual way. Switch it off if you only want to pay customers whose bank has been verified.                                       |

{% hint style="info" %}
**What does "approve" mean here?** A withdrawal above your **Auto-Payout Max (GBP)** still shows a **Process payout via FumoPay** (or **via TrueLayer**) button on your Withdrawals page. Approving it is simply clicking that button. Starting with the limit at **0**, or a small amount, is a sensible way to get comfortable before you let payouts run on their own.
{% endhint %}

### If the page will not save

Rafflex checks your details when you click **Save Settings**. If something is wrong, nothing is saved and a red message explains why:

* **Missing provider credentials.** The provider you chose needs details that are still empty. The message lists them, for example *"Client ID, Client Secret"*. Fill them in and save again. (On TrueLayer, the **Signing Key ID** field is listed as **Key ID** in this message.)
* **Invalid signing PEM key.** TrueLayer only. The signing key you pasted is not in the expected format, usually because part of it is missing. Paste it again in full, including the `-----BEGIN PRIVATE KEY-----` and `-----END PRIVATE KEY-----` lines.

### Test Provider Connection

Once your provider's details are saved, a **Test Provider Connection** button appears at the bottom of the page, next to **Save Settings**. Click it to check that Rafflex can talk to your provider.

The result appears in a box that stays on screen until you close it:

* The title reads **Connection OK** or **Connection Failed**.
* **Mode** shows **Sandbox** (test mode) or **Production** (live).
* Each check is listed with a tick or a cross and a short explanation.

{% hint style="warning" %}
**Seeing "is not fully configured"?** The test only runs when **Enable Automatic Payouts** is switched on and saved. If the first check fails with a message such as *"FumoPay is not fully configured."* or *"TrueLayer is not fully configured."*, and all your details are filled in, switch **Enable Automatic Payouts** on, click **Save Settings**, then test again.
{% endhint %}

{% hint style="info" %}
**Can't see the button?** It only appears once every required detail for your provider has been saved. If you have just changed **Payout Provider**, click **Save Settings** first. The test always checks the provider that is saved, not the one you have just picked.
{% endhint %}

***

## What your customers see

### Verifying their bank account

When automatic payouts are on, the customer's **Payouts** page (in their account area) shows a **Verify Your Bank Account** box instead of the usual bank details form.

1. The box tells them which name their bank account will be matched against. If it does not match the name on their bank account, they are asked to update their profile first.
2. They click **Verify Bank Account** and are taken to their bank to approve the check.
3. When they come back, their details show as **Verified**, with the message *"Securely verified via Open Banking."* They are also sent a **Bank Account Verified Successfully** email.

If you have left **Enable Manual Bank Details Fallback** on, the box also shows **Having trouble? Enter your bank details manually**. Customers who use this link appear with a **Manual** label, and their withdrawals are paid by you, by hand.

A customer can remove their saved bank account at any time with **Disconnect Bank**, unless they have a withdrawal waiting to be paid.

Once a verified customer has enough credit to withdraw, and your **Auto-Payout Max (GBP)** is above 0, their **Payouts** page also shows an **Available to withdraw** box with an **Instant payouts** label and a **Withdraw now** button.

### Requesting a withdrawal

When a verified customer opens the withdrawal window and your **Auto-Payout Max (GBP)** is above 0, they see an **Instant payout** note. It tells them the money will be sent to their verified account, usually in less than 60 seconds, and that manual bank transfers may take over 24 hours.

If they type an amount above your limit, the note changes to **Reviewed before payment**, explaining that withdrawals over that amount are checked by your team first.

{% hint style="info" %}
If you have **Photo ID is Required for Payouts** switched on, customers must upload their photo ID before they can request a withdrawal, whether or not their bank is verified.
{% endhint %}

### Emails your customers receive

| Email                                        | When it is sent                                                                                                                                   |
| -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Bank Account Verified Successfully**       | The customer has verified their bank account.                                                                                                     |
| **Your Withdrawal Is On Its Way**            | Their withdrawal has been sent to the provider and is being processed.                                                                            |
| **Your Requested Withdrawal Has Been Paid!** | The money has reached their bank. This is the same email customers get when you mark a withdrawal as paid by hand.                                |
| **We Could Not Complete Your Withdrawal**    | The payout failed. The email reassures them that your team is reviewing it and their balance is safe.                                             |
| **Your Withdrawal Was Returned**             | Their bank sent the payment back. The email confirms the full amount has been restored to their wallet and asks them to check their bank details. |

***

## Managing automatic payouts day to day

Everything happens on the same page you use for manual withdrawals. In the admin panel, open **Management**, then click **Withdrawals**.

### Extra columns

Once your provider is switched on and fully set up, three extra columns appear in the list:

| Column            | What it shows                                                                                                                                                                                                                                                                                   |
| ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Bank Details**  | **Verified** if the customer verified their bank with your provider, or **Manual** if they typed their details in.                                                                                                                                                                              |
| **Payout Status** | Where the automatic payment is up to: **Pending**, **Submitted**, **Authorized**, **Executed** (paid), **Failed** or **Refunded** (you rejected the request after a failed payout, so the money went back to the customer's wallet). The column is blank if no automatic payout has been tried. |
| **Manual Review** | A red warning sign when the withdrawal needs you to look at it.                                                                                                                                                                                                                                 |

The badge next to **Withdrawals** in the menu turns red when any request needs manual review.

### Extra filters

| Filter                       | What it does                                                                                                                                           |
| ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Requires Manual Review**   | Shows only the requests that need you.                                                                                                                 |
| **Hide In-Progress Payouts** | On by default. Hides withdrawals that are currently being paid automatically, so your list only shows work for you. Switch it off to see them.         |
| **Payout Status**            | Shows requests with one particular payout status. Choose **Stuck (in progress > 24h)** to find payouts that have been in progress for more than a day. |

{% hint style="info" %}
**Can't find a withdrawal you know exists?** It is probably being paid automatically and hidden by **Hide In-Progress Payouts**. Open the filters above the table and switch that filter off.
{% endhint %}

### Buttons on each request

| Button                                                | When it appears                                                                                                                          | What it does                                                                                         |
| ----------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| **Process payout via FumoPay** (or **via TrueLayer**) | The customer's bank is verified and the withdrawal has not been paid automatically yet, or a previous attempt failed and retries remain. | Sends the withdrawal to your provider. Click it, then confirm. You will see **Payout Queued**.       |
| **Mark as Paid**                                      | The withdrawal is not paid and no automatic payout is in progress.                                                                       | Records that you paid it by hand, exactly as on a manual site.                                       |
| **Resubmit payout**                                   | Rarely. Only when a payout was sent but your provider never confirmed receiving it, for example after a network problem.                 | Sends it again safely. The provider recognises the original, so the customer will not be paid twice. |

**Mark as Paid** and **Reject** are hidden while an automatic payout is in progress. This stops a customer being paid twice. They come back if the payout fails.

### The request details page

Click **View** on a request to see its details. With automatic payouts on, you will also see:

* **Bank Reference**, at the top. This is the reference shown on the customer's bank statement (for example **W-123**). Click it to copy it.
* **Requires Manual Processing**, a red badge when the request needs you.
* **Source**, in the **Banking Details** section, showing **Bank Verified** or **Manually Entered**.
* A **Payout** section with the payout's **Status**, **Amount** and who triggered it (**Triggered By**), plus a **Timeline** showing when it was **Initiated** and **Executed**. If the payout failed, you will also see a **Failure Reason**. The **Provider Payout ID** is useful if you need to contact your provider's support team about a payment.

The **Process payout**, **Resubmit payout** and **Mark as Paid** buttons also appear at the top of this page when they apply.

### Dashboard cards

When automatic payouts are on, your admin dashboard shows three cards. Click any card to jump straight to the matching withdrawals.

| Card               | What it counts                                                                     |
| ------------------ | ---------------------------------------------------------------------------------- |
| **Failed Payouts** | Payouts with a failed status.                                                      |
| **Stuck Payouts**  | Payouts that have been in progress for more than 24 hours, with their total value. |
| **Manual Review**  | Withdrawals waiting for you to review them.                                        |

All three show green when there is nothing to do.

***

## When a withdrawal comes to you

Some withdrawals are never sent automatically. These sit in your **Withdrawals** list as normal:

* **The amount is above your Auto-Payout Max (GBP).** If the customer is verified, click **Process payout via** your provider to approve it. Otherwise pay it by hand.
* **The customer entered their bank details manually.** Pay them by bank transfer, then click **Mark as Paid**, as described in [Processing Withdrawals](/essential-settings/wallet-and-withdrawals/processing-withdrawals.md).
* **Your Auto-Payout Max (GBP) is 0.** Every withdrawal waits for you to approve it.

### A payout failed

The withdrawal is flagged for **Manual Review** and the customer is emailed to say your team is looking into it. The money is still held, so their balance is safe. You can:

1. Open the request and read the **Failure Reason**.
2. Fix the cause if you can (for example, add funds to your provider account).
3. Choose one of these:
   * Click **Process payout via** your provider to try again. This button disappears once **Retry Max Attempts** is used up.
   * Pay the customer by hand, then click **Mark as Paid**.
   * **Reject** the request from the three dots menu on the list. The money goes back into the customer's wallet.

### The customer's bank returned the payment

Sometimes a bank sends a payment back. When that happens, Rafflex **automatically puts the full amount back in the customer's wallet**, emails them, and flags the request for **Manual Review**.

{% hint style="danger" %}
**Do not pay a returned withdrawal by hand.** The customer already has their money back in their wallet. To close the request, **Reject** it from the three dots menu on the list. Rafflex knows the wallet has already been refunded and will not credit it again. The customer receives the usual rejection email, so it helps to type a short reason, such as "Payment returned by your bank, please check your bank details". They can then request a new withdrawal.
{% endhint %}

### A payout looks stuck

Use the **Stuck Payouts** card, or the **Stuck (in progress > 24h)** filter, to find payouts that have not finished. Open the request and check its **Payout** section. If a **Resubmit payout** button is shown, click it. If not, contact your provider's support team with the **Provider Payout ID**, or contact Rafflex support.

### Get told when something needs you

Rafflex emails you when a payout fails or gets stuck. Choose where these alerts go:

1. In the admin panel, go to **Settings**, then **Email**.
2. Fill in **Payout Alert Email** with an address your team checks.
3. Click **Save Settings**.

If you leave it blank, alerts go to your **Admin Instant Win BCC Email** instead, or to your site admins if that is blank too. See [Email Setup](/essential-settings/email-setup.md#payout-alert-email) for more.

***

## Managing a customer's verified bank

To see how a customer's bank was verified, go to **Management**, then **Users**, and open the customer.

The **Bank Verification** panel shows:

* **Verification Status**: **Verified via FumoPay** or **Verified via TrueLayer**, **Verified (Manual)**, or **Unverified**.
* The **Bank Name**, a masked **Sort Code (Masked)** and **Account Number (Masked)**, plus **Verified At** and **Verification Method**.
* **Account Holder (Bank Returned)**, the name the bank gave for the account, and the **Name Match Score**.

Once a customer has verified their bank, the **Payout** section above it is locked with the message **Payout details are locked**. This stops verified details being changed by accident.

### Clearing a customer's bank verification

If a customer needs to change their verified bank account, or you are worried about it, you can clear it:

1. Open the customer under **Management**, then **Users**.
2. Click the **Actions** button at the top of the page.
3. Choose **Clear Bank Verification**.
4. Type a **Reason**. This is required and is recorded against your admin account.
5. Confirm. You will see **Bank Verification Cleared**.

The customer will then need to verify their bank again before their next automatic payout.

{% hint style="warning" %}
You cannot clear a bank verification while the customer has a withdrawal waiting. The option is greyed out until that withdrawal is paid or rejected.
{% endhint %}

***

## Switching provider or going back to manual

You can change your mind at any time:

* **To go back to paying by hand,** switch **Enable Automatic Payouts** off, or set **Payout Provider** to **Manual / Bank Transfer**, then click **Save Settings**.
* **To move to the other provider,** set up its details as described in its guide. Customers who verified with your previous provider may need to verify again before their withdrawals are paid automatically. Until they do, their requests come to you.

{% hint style="warning" %}
Try to switch when no automatic payouts are in progress. A withdrawal caught part way through a payment with your old provider is not sent to the new one. Instead it is flagged for **Manual Review** so you can check it and settle it yourself. Look at the **Requires Manual Review** filter after switching.
{% endhint %}

***

## FAQ

**Will every withdrawal be paid automatically?**

No. Only withdrawals from customers who verified their bank, at or below your **Auto-Payout Max (GBP)**. Everything else comes to you.

**Does automatic payout work for euro sites?**

No. Bank verification and automatic payouts are for sites that trade in pounds (GBP). Euro sites pay withdrawals by hand.

**What if a customer's bank is not supported?**

If **Enable Manual Bank Details Fallback** is on, they can enter their details by hand and you pay them the manual way. If it is off, they will need to verify with a supported bank.

**A customer says their name does not match. What should they do?**

Ask them to update the name on their Rafflex account so it matches the name on their bank account, then try **Verify Bank Account** again.

**Can I still pay someone by hand when automatic payouts are on?**

Yes. As long as no automatic payout is in progress for that withdrawal, **Mark as Paid** works exactly as it does on a manual site.

***

## Related pages

{% content-ref url="/pages/vZxnYoSVQU0o9GICuAWR" %}
[Processing Withdrawals](/essential-settings/wallet-and-withdrawals/processing-withdrawals.md)
{% endcontent-ref %}

{% content-ref url="/pages/1PZ5OR0pxiwhztmCRzRX" %}
[Email Setup](/essential-settings/email-setup.md)
{% endcontent-ref %}
