---
title: BPAY
slug: HofQ-bpay
docTags: 
createdAt: 2025-01-01T23:22:56.554Z
---

::Image[]{src="https://api.archbee.com/api/optimize/2YV_jPVRvgDF5hYZgYUKg-l4uISEeIQlXmYU_WqE5y0-20250107-050901.png" size="32" width="567" height="263" position="center" darkWidth="567" darkHeight="263" showCaption="false"}

Payments can be made via BPAY from your mAccount or a Ledger Account to a valid Customer Reference Number (CRN) and Biller Code.&#x20;

A prerequesite to sending payments via BPAY is the creation of an mWallet using the [Create a mWallet](docId\:cpMy3qLwwLUgLsZI_z-ab) endpoint. This is a virtual account, similar to a ledger account, that is used to store payer information required by BPAY for compliance purposes. A unique mWallet should be created for each unique payer, with the payers date of birth (or other significant date) and a unique PIN, which are used for authentication purposes.

When making a payment using the [Execute a Transaction](docId\:NMknOvkiPahGVaeV5znxp) endpoint, you must set the paymentSource as "Mwallet", and pass the mwallet token in the request body.&#x20;

:::CodeblockTabs
JSON

```json
"paymentSource": "Mwallet",
"Mwallet": {
  "token": "123456789"
}
```
:::

Ledger accounts can be used for BPAY transactions in place of an mWallet. If a ledger account is used, funds are taken from the ledger account balance.

Prior to initiating a transaction you will need to ensure the mWallet has sufficient funds for the transaction. Funds can be added to the mWallet using an [Internal Transfer](docId\:WwxZ1tUALOiIfpcGAOKn2).

### Sample BPAY Payment

::::CodeDrawer{title="Sample BPAY Payment" isResponseExpanded="true" autoGeneratedAnchorSlug="sample-bpay-payment-1" legacyHash="vaoiAQbOfDGir7K-pnCWU"}
:::CodeblockTabsExamples
```json
{
  "paymentSource": "mWallet",
  "mWallet": {
    "token": "6279059784226976"
  },
  "disbursements": [
    {
      "disbursementMethod": "bpay",
      "toBPayDetails": {
        "billerCode": "857763",
        "referenceNumber": "6279059700010918"
      },
      "amount": 100,
      "description": "Payment for utilities"
    }
  ],
  "uniqueReference": "f484ec18-6e1f-481b-a4bf-bea515d8lk34"
}
```
:::

:::CodeblockTabsResponses
```javascript
{
  "durationMs": 25,
  "status": "Ok",
  "statusDescription": "Operation completed successfully",
  "transactionId": 1022,
  "feeAmountExcludingGst": 0,
  "feeAmountGstComponent": 0,
  "feeAmountIncludingGst": 0,
  "callerUniqueReference": "bpay12345",
  "feeBreakdown": {
    "disbursementFees": [
      {
        "disbursementArrayIndex": 0,
        "disbursementFee": {
          "feeAmountExcludingGst": 0.1,
          "feeAmountGstComponent": 0.01,
          "feeAmountIncludingGst": 0.11
        }
      }
    ]
  }
}
```
:::
::::

## BPAY Tools

Monoova also offers endpoints to [Search for BPAY billers](docId\:MiUsytjXezAG5U5Cn4bCj)**&#x20;&#x20;**&#x69;f the details are unknown, and [Get BPAY biller code details](docId:01FpZlphv9ks4g332Hwid), which returns the biller name, CRN rules, and transaction limits.



