Skip to main content
Skip table of contents

How to - Trigger Custom Disbursements for real-time transaction

For approved businesses, the “Disbursements” parameters of Payrix’s real-time transaction APIs POST Make a live card transaction, POST Make a live tokenised card transaction and via Hosted Payment Page Tokens it can be used to specify custom disbursements/fees on a transaction-by-transaction basis.

To do this, a JSON array with the format described below can be passed into the “Disbursements” parameter.

 

Examples:

JSON
"Disbursements":[
{
  "Id": "DISB-001",
  "BusinessId": 1003,
  "Type": "TXN_FEE",
  "Description": "DISBURSEMENT ONE",
  "Amount": 1.23,
  "Method": "SETTLEMENT"
  }
 ]
},

Make a live card transaction (both card-provided and via token versions)

JSON
{
    "ProcessType": "COMPLETE",
    "Reference": "REAL-TIME-TXN-TEST2023",
    "Description": "This is an example real-time transaction",
    "Amount": 100.00,
    "CardToken": null,
    "Card": {
      "CardNumber": "4111111111111111",
      "CardholderName": "TEST Card",
      "ExpiryYear": 2023,
      "ExpiryMonth": 10,
      "Ccv": "123"
    },
    "Disbursements":[
        {
            "BusinesssId":1003,
            "Type":"TXN_FEE",
            "Amount": 1.23
        }
    ]
},
    "Payer": null,
    "Audit": {
    "Username": "Example-User",
      "UserIP": "1.2.3.4"
    }
  }

 Creating a HPP token

JSON
{
    "ReturnUrl": "https://www.payrix.com.au?txn=123456789",
    "Template": "Basic",
    "Transaction": {
      "ProcessType": "COMPLETE",
      "Reference": "HPP Disbursement Test2022",
      "Description": "Test HPP Disbursement API Token",
      "Amount": 150.00,
      "Disbursements":[
          {
              "BusinessId":1003,
              "Type": "TXN_FEE",
              "Amount":2.25
          }
      ]
    },
    "Payer": {
      "UniqueReference": "HPP-TOKEN-PAYER-U-1",
      "GroupReference": "HPP-TOKEN-PAYER-GRP-1",
      "FamilyOrBusinessName": "Surname",
      "GivenName": "First Name",
      "Email": "customerintegration@payrix.com.au",
      "Phone": "0733332222",
      "Mobile": "0411228833",
      "Address": {
        "Line1": "1 Test St",
        "Line2": null,
        "Suburb": "Testville",
        "State": "QLD",
        "PostCode": "4001",
        "Country": null
      },
      "SavePayer": false
    },
    "Audit": {
      "Username": "Token Example",
      "UserIP": "1.2.3.4"
    }
  }

Data Table

Field

Required

Value Type

Description

BusinessID

Yes

Integer (5)

Payrix will provide you with a list of the IDs of the businesses associated with your account to which you are able to distribute funds.

Amount

Yes

Decimal (10,2)

The amount to be paid out. The total amount of all disbursements must not exceed the transaction amount.

ID

No

String (100)*

You have the option of including an ID from your system to identify each disbursement.

Please note: Payrix does not currently provide any reporting on this ID.

Description

No

String (100)*

You have the option of suppling a custom description for the fee/disbursement that can replace the standard type name displayed on reports such as the processing report and tax invoices that are sent to clients.

Type

No

String (100)*

The type of fee/disbursement that the payout is for. This type is displayed on reports such as the processing reports and tax invoices that are sent to clients.


At present only the types below are supported. You must pass in one of the following Enums:


•TXN_FEE


•MISC_FEE


If you don’t pass a type ID then MISC_FEE “Miscellaneous Fee” is used.

Method

No

String (100)*

Relevant only if the disbursement is for a fee, this specifies how the fees to collected from the business.


The following values are supported:


•“SETTLEMENT” – The fee will be collected by reducing the amount of the transaction that is settled to the client


JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.