openapi: 3.0.0
servers:
- url: https://api.mpay.com.au
description: Production URL
- url: https://api.m-pay.com.au
description: Sandbox URL
info:
description: |
# Introduction
Monoova has developed a powerful payments engine which allows you to receive, manage and pay funds in AUD in Australia automatically.
This service is made available to Monoova’s clients through a set of easy-to-use RESTful APIs with JSON payloads described in this document.
The central idea is to reduce the cost, risk and effort normally associated with managing complex money movements so that you can focus on growing your business.
Our clients can receive and reconcile funds via Realtime transfers (NPP), direct credits/debits, BPAY and cards.
They can then manage those funds by building virtual account/wallet hierarchies to get bespoke reporting, reconciliation and much more.
And finally, our clients can pay funds via Realtime transfers (NPP) direct credits and BPAY.
As new technologies become available (e.g. NPP Mandated payments) we will make additional methods of receiving, managing and paying available.
All information flows are real-time.
Moving money between various Monoova accounts is also real time.
All money flows in and out of the Engine are as fast as the banking system allows.
The sandbox environment is open to everyone who signs up on our Sandbox Portal at no cost.
The sandbox environment allows you to test out the functionality of our API in a consequence free development environment.
Access to the live environment is granted once you have (1) gone through our compliance process and (2) had formal sign-off on your sandbox integration.
Monoova regularly releases additive changes to our API, as well as new versions of the API when a breaking change would occur.
To ensure your integration does not break due to these additive changes, we recommend not validating the entire schema, or the position of a parameter within the schema.
Note: Please note we do not accept TLS 1.0 or 1.1 connections
# Getting started
>
- Sign on to our Sandbox Portal
- Get your sandbox API key under **MANAGE > ACCOUNTS** in the Sandbox Portal
- [Authenticate](#section/Authentication)
- Browse this document to find the functions you need
- Begin experimenting with your first API calls by sending HTTP requests to the endpoints described in this document
- Use the provided examples in the document as guidance
# Authentication
All RESTful APIs in this document use BASIC Authentication (except those in public/v1) in two scenarios either
- API KEY
- OneShotSecurityToken
> **Sandbox Authentication Credentials**
| Field |
Value |
| Username |
API Key (obtained from the Sandbox Portal) |
| Password |
leave blank when using API key; Monoova will provide password for OneShotSecurityToken |
| Base URL |
https://api.m-pay.com.au/ |
> **Live Authentication Credentials**
This will be provided by Monoova after a technical review.
| Field |
Value |
| Username |
API Key (obtained from the Production Portal; Production credentials will be supplied by Monoova) |
| Password |
leave blank when using API key; Monoova will provide password for OneShotSecurityToken |
| Base URL |
https://api.mpay.com.au/ |
When using the LIVE Engine, your Sign-In Account is given five (5) attempts to authenticate your credentials.
On the fifth failure your Sign-In Account is locked for one (1) hour.
The returned data will indicate that your account is locked and the time in UTC that the account will be unlocked.
If you require the account to be unlocked on the LIVE system you may contact your Monoova representative and at his or her discretion they will unlock the account.
See the API routes in Security to manage Passwords and Tokens.
UserName/Password
Using this scenario, you can configure BASIC Authentication with the following
UserName - API Key (obtained from the Sandbox Portal) Production credentials will be supplied by Monoova when you have demonstrated successful implementation of the API on our Sandbox environment.
Password - When using your API Key, no password is required.
If the key is compromised, it can be re-rolled via the Sandbox Portal.
# Feedback
We value your feedback on our API. Please fill out the form here to share your feedback.
version: v5.29
title: Monoova Payments API
contact:
name: Monoova Support
email: support@monoova.com
url: https://www.monoova.com
x-logo:
url: 'https://movdpwebsiteprodae.blob.core.windows.net/images/Monoova-Primary-Logo-Black-RGB.png'
altText: Monoova logo
tags:
- name: Receive and Pay
description:
With our API, you receive funds from both outside and inside the Monoova Payments Engine.
From outside the Engine, e.g. from your customers or your own bank account, you can receive and reconcile funds via
- Direct credits
- Direct debits
- BPAY
- NPP
From inside the engine, you can receive funds from either your own virtual accounts and wallets or those belonging to others.
These are real-time transactions.
Once you have cleared funds in our Engine you can decide to pay recipients both outside and inside the Monoova Payments Engine.
To recipients outside, you can send money via
Recipients in the Engine receive your funds in real time straight into their own virtual accounts and wallets.
As always, we provide you with comprehensive reports on all your money moves. You will find more information on reporting,
balance queries and many other management tools in the Manage section.
- name: Financial
x-displayName: Financial / Payments
description: |
Overview
The Financial APIs enable you to process credits and debits, including transferring funds within Monoova to a Ledger Account, an mWallet (for BPAY transactions), or an mAccount (our virtual account). You can send payments to external Australian bank accounts using a BSB and account number, token, or PayID, and make BPAY payments using a biller code and CRN.
The APIs also allow you to debit Australian bank accounts using Direct Debit, and retrieve the status of transactions.
- name: BPAY
description: Overview
The BPAY APIs do not perform any financial transactions and are used to validate BPAY information that is used in the /financial/v2/transaction/execute API.
The /financial/v2/transaction/validate APIs also validates BPAY information using the same sub-system as documented in this section before performing any financial transactions.
Important Notes
By design, BPAY validation can be time sensitive. If you cache valid BPAY information for later use, it may become invalid due to time expiry.
By design, BPAY validation can be amount sensitive. If you cache valid BPAY information for later use and change the amount to pay then this could be invalid.
BPAY validation should be performed immediately before calling the /financial/v2/transaction/execute API to perform the bill payment.
You have the option of calling /financial/v2/transaction/validate (The first validation error will be returned which may not be a BPAY error)
- name: Verify
description: Overview
Bank Account Ownership Verification
The purpose of this API is to verify access to a bank account or PayID details, which has several compliance and risk-mitigation applications.
If the NppCreditPayID method is used, the API response will include the PayID name. In scenarios where the PayID is either unidentified or not configured, you can verify if the payer/payee has access to the account using a secret code.
By passing the BSB and account number, the account verification API will credit a target bank account with a secret code in the remitter name and lodgement reference. This code can only be viewed by someone who has access to the target bank account by accessing and viewing their bank statement. The code can then be submitted against our records, and if it matches, Monoova will persist a verification token against that specific account.
How it works
- Initiate a verification transaction on the target bank account.
- Monoova will credit the target bank account with a 1c amount and a secret remitter code (may take up to 48 hours for the code to show on the target bank account).
Below image is how a sample verification code appears on a bank statement. In YELLOW is the code your client will need to return, in BLUE is your remitter name. For NPP verification transactions, the secret code can also be found in the lodgement reference.
- Owner of the target bank account views the statement to obtain the secret code.
- Submit the secret code to Monoova via POST verify/v1/aba/validate. In the sandbox, use code "555555" to test successful validation of an account verification.
- If the submitted code and amount are correct, the target bank account is designated as verified.
- name: Automatcher (Bank Account Receivables)
description: Overview
Having customers paying you by bank transfer might be easy for your customers but contains a reconciliation risk for you.
If your customer mistypes or forgets the reference to go with the payment, you might not know whom the payment is from.
Orphaned transactions can be challenging and costly to handle. The solution is our receivables API.
We allow you to assign a specific account number to each payer so you know for a fact where the received funds originated, regardless of whether they remembered to type the reference.
Specifically, the bank-account receivables APIs allow the creation and maintenance of bank account numbers for the purpose of receiving and reconciling funds via direct credit. Once an account number is created, payments may be made via any banking institution in Australia to the BSB and account number provided by us to you.
These account numbers can be toggled active/inactive and linked to a client provided unique ID.
Once a transaction is received, Monoova provides reporting on the details of each item, and makes the funds available for disbursement in your Sign-in mAccount.
Authentication is the same as for the rest of Monoova’s APIs.
- name: Whitelisting for Automatcher (Bank Account Receivables)
description: Overview
This feature enables whitelisting of bank accounts when receiving funds in automatcher accounts. Funds received from a non-whitelisted account will be automatically returned. Using this feature, funds received can be limited to pre-approved bank accounts only.
There are 2 criteria that can be set when whitelisting bank account numbers.
Inbound transaction will only be accepted from:
1. An account that matches a whitelisted account name; AND/OR
2. An account that matches a whitelisted BSB and account number
If pre-defined criteria are not met, the transaction will be returned to the sender automatically. If enabled, each automatcher account has its own separate whitelist.
You have the option to establish a webhook subscription to receive a notification when a payment is declined as a result of whitelist restrictions.
To subscribe to a webhook use the Subscriptions APIs. Event name: InboundDirectCreditRejections
- name: PayID
description: Overview
A PayID is an alias for a bank account number that makes paying into account easier.
A PayID can be an email address, phone number or ABN.
PayIDs are issued and associated with our /receivables bank accounts to allow your users a simpler way of sending you money.
Once a PayID has been registered against a bank account, when a payment is made to that ID, the funds will arrive in your receivables account number.
Currently we only support email PayIDs via the API.
- name: Reconciliation Rules
description: Overview
This feature enables customers to specify the criteria for accepting incoming NPP and DE payments in real time. The customer will be able to advise Monoova about the exact amount they expect to receive in their ABA/PayId in an agreed timeframe. This information would be used to determine whether to accept or reject a payment.
There are 2 criteria that can be set when specifying the reconciliation rules. Inbound transactions will only be accepted if
- Bsb - Account Number and amount matches an active reconciliation rule. OR
- PayId and amount match an active reconciliation rule
If pre-defined criteria are not met, the transaction will automatically be returned to the sender.
These rules will not be applied to NPP PayTo Receivables.
- name: Tools
description: Overview
The APIs in the tools/v1/ section represent utilities that you may find useful while consuming the other APIs offered as part of the Engine other APIs.
- name: Manage
description:
To maximise the benefits of payments automation, you may choose to make use of our kit of management tools.
Here, you will find information on APIs related to reporting, security features and the management of our virtual account, the so-called mAccount.
We have a number of new features coming and will keep you updated as they appear.
Our aim is to allow you to automate fully the management of your funds.
- name: Subscriptions
description: The endpoints in this section allow subscription and management of webhooks for the purpose of receiving transaction notifications.
- name: Webhooks
description: The examples of webhooks for the purpose of receiving transaction notifications.
| Event name | Notification sent when |
| NPPReceivePayment | Payment received via NPP rail. |
| PayToReceivePayment | Payment received as initiated through PayTo. |
| InboundDirectCredit | Payment received via direct entry rail. Note funds settled in batch via BECS settlement windows. |
| InboundDirectDebit | Received 3rd party request to direct debit automatcher account. |
| DirectEntryDishonour | A direct debit request / direct credit payout has been dishonoured. |
| PendingInboundRtgsImt | RTGS/IMT transactions are received. |
| InboundRtgsImtStatus | The status of an RTGS/IMT transaction changes. |
| NppReturn | An NPP payment is returned. |
| NppPaymentStatus | The status of a pending NPP payment is updated. |
| InboundDirectCreditRejections | An inbound direct credit is rejected. |
| NPPCreditRejections | NPP payment intended for an ABA/PayId is rejected. |
| DirectDebitClearance | Daily when direct debit transactions are cleared. |
- name: Reports
description: Overview
The APIs in the reports/v1 section help you keep track of balances and transactions.
Payments automation is only helping you relax if you know where exactly your money is at any one point in time.
- name: Token
description: Overview
Using tokens is a way of increasing the security around sensitive information. A token can be used to obfuscate debit and credit details.
The details of a token (its payload) are stored encrypted on the Engine servers.
The tokening system has been designed such the generated token has no mathematical or algorithmic connection to the secret data held as the payload.
The token is a random number that is manifested as a GUID.
Currently two types of payloads can be held within the tokening system
- Australian Bank Account
- BPAY details
Other payload types can be added if required.
For example, if you have asked the user to enter their bank-account details on your website you can use the security/v1/createOneShotSecurityToken API to embed an OneShotSecurityToken in your page.
Using this OneShotSecurityToken you can call the appropriate token/v1/create API passing the details.
This way, the customer’s payload details are never passed through your server.
- name: Security
description: Overview
The security/v1 APIs allows you to manage security tokens.
This gives you an alternative to using signIn API KEY for BASIC authentication for each API call.
Security tokens come in two forms
- OneShotSecurityToken
- SecurityToken
The two security tokens operate in exactly the same way.
The token is used to replace your UserName when configuring BASIC Authentication.
Should you provide a password anyway, it will be ignored. Each token type has an expiry time between 1 and 15 minutes. The expiry time cannot be extended.
As the name implies, a OneShotSecurityToken can only be used once. The token is deleted on its first use or when it expires, whatever is sooner.
A SecurityToken can be used multiple times until it expires. The expiry time of a SecurityToken can be extended.
Please note that security tokens discussed in this section have nothing in common with the token/v1 APIs described elsewhere in this document.
Security tokens provide secure sign-in from a web page; token/v1 APIs tokenize sensitive information.
- name: mAccount
description: Overview
The mAccount is the name we have given our virtual account.
It is at the centre of anything you do with our Payments Engine.
In many ways, your mAccount(s) is you in the Engine,
this is where you get authenticated, where your funds flow in and out, and where you get your reports.
It is also the building block for a bespoke ecosystem of virtual accounts which you can build in the Engine.
And though we call it an account, it can just as easily be used as a wallet.
The APIs in this section do not perform financial transactions. Instead, they are used to manage mAccount information in the Engine.
The /financial/v2/transaction API verifies mAccount information using this subsystem before performing a transaction.
- name: mWallet
description: Overview
mWallet is the name we have given to the digital wallet required for our BPAY payments. For any other digital-wallet uses, we recommend our mAccount.
The APIs in this section do not perform any financial transactions.
They are used to manage mWallet information used by the Engine.
The /financial/v2/transaction API verifies mWallet information using this subsystem before performing the transaction.
- name: Public Endpoints
description: ''
- name: Ledger Account
description:
'Monoova allows virtual ledgers to be created and linked to an Automatcher account number and optional PayID that can be used to track funds received and paid.
Moving funds in and out of ledgers is accomplished by utilising the Monoova PayTo and financial APIs. In the financial/execute call, populate “ledgerAccountNumber” in the mwallet fields, either in the disbursement object to transfer funds, or in the source object to withdraw.'
x-tagGroups:
- name: 'Receive and Pay'
tags:
- Financial
- Verify
- Automatcher (Bank Account Receivables)
- Whitelisting for Automatcher (Bank Account Receivables)
- Ledger Account
- Reconciliation Rules
- PayID
- Tools
- name: 'BPAY'
tags:
- BPAY
- mWallet
- name: 'Manage'
tags:
- Subscriptions
- Webhooks
- mAccount
- Reports
- Security
- Token
- name: 'Public Endpoints'
tags:
- Public Endpoints
security:
- BasicAuth: []
paths:
# bpay
'/bpay/v1/validate/{billerCode}':
get:
tags:
- BPAY
summary: Validate a BPAY transaction
description:
This API validates the BPAY Biller Code and optionally the BPAY Customer Reference Number and Amount. For a complete BPAY validation the BPAY Biller Code, BPAY Customer Reference Number and Amount must be supplied.
When fully validated a BPAY financial transaction should be made as soon as practicable as some BPAY combinations are date sensitive. BPAY validation uses the BPAY subsystem error codes.
Sample URL: https://api.mpay.com.au/bpay/v1/validate/{billerCode}?custRef={CRN}&amount={amount}
operationId: BPAYValidate
parameters:
- name: billerCode
in: path
required: true
description: This is the BPAY biller code that was requested. billerCode must be numeric
schema:
type: string
example: '857763'
maxLength: 10
- name: custRef
in: query
required: false
description: BPAY Customer Reference Number. If this field is empty this denotes that the customerReferenceNumber is variable for each bill and should not be reused.
schema:
type: string
example: '6279059700000505'
maxLength: 20
- name: amount
in: query
required: false
description: Bill amount to be validated. Note if CustRef is not provided, amount will not validate as it is dependent on both the CRN and Biller. The maximum value of the field is $9999999999.99.
schema:
type: number
example: '100'
maxLength: 13
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.ValidateBPAYResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/bpay/v1/biller/{billerCode}':
get:
tags:
- BPAY
summary: 'Get BPAY biller code details'
description: This API returns extended information for the BPAY biller. Status will be “UnknownBillerCode” if Biller Code is invalid.
operationId: BPAYGetBiller
parameters:
- name: billerCode
in: path
required: true
description: This is the BPAY biller code that was requested. billerCode must be numeric
schema:
type: string
example: '857763'
maxLength: 10
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.BPAYBillerResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/bpay/v1/receipts':
post:
tags:
- BPAY
summary: 'Get BPAY receipts'
description: This API returns the list of BPAY receipts.
Note: Filters - One of the below options should be provided by customer.
1) uniqueReferenceNumber
2) billerCode + referenceNumber + date
operationId: BPAYGetReceipts
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/bpay.receipts'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.BPAYReceiptResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/bpay/v1/billers':
get:
tags:
- BPAY
summary: Search for BPAY billers
description:
This API returns an array of BPAY billers matched to the case insensitive search string. The system matches on the billerLongName and billerShortName.
Use skip and take to page through result set. Skip and take will be changed back to their defaults if they are over-range. Status will be “UnknownBillerCode” if there are no matches.
operationId: BPAYGetBillers
parameters:
- name: search
in: query
required: false
description: The search string
schema:
type: string
example: 'pty%20ltd'
- name: skip
in: query
required: false
description: The actual number of records skipped.
schema:
type: number
example: '0'
- name: take
in: query
required: false
description: The number of records that were requested.
schema:
type: number
example: '50'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.BPAYBillersResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/bpay/v1/history/{accountNumber}':
get:
tags:
- BPAY
summary: Get a wallet's BPAY History
description: This API returns the mWallets history of BPAY payments.
The returned history list is sorted by the count property of the BPAYHistoryItem descending.
operationId: BPAYGetHistory
parameters:
- name: accountNumber
in: path
required: true
description: associated 'mWallet' 16 digit number
schema:
type: integer
example: 6279059700022400
maxLength: 16
minLength: 16
- name: take
in: query
required: false
description: The number of records that were requested.
schema:
type: integer
example: '50'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.BPAYHistoryResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/bpay/v1/bpayInReport/{date}':
get:
tags:
- BPAY
summary: BPAY Receivables Report
description:
Returns a report of all received BPAY transactions for the day with associated details.
If requested multiple times on the current date (calendar day, AEDT), the report is cumulative.
E.g. if, on the same day, a report is requested at 10am and another one at 1pm,
the report at 1pm will contain all the transactions already contained in the 10am report, in addition to any new transactions.
The report is an application/octet-stream, columns are comma separated.
Where a comma(,) or double quote(") is present in any of the below fields,
the field will be encased in double quotes and/or escaped as per RFC4180
Columns are as follows:
| Transaction Id |
Batch Id |
BPAY Settlement Date |
Payment Accepted DateTime |
Payment Type |
Payer Institution Code |
Payer State |
Biller Code |
Customer Reference Number |
Payment Method |
Amount |
Transaction Reference Number |
Monoova generated Unique ID.
Integer.
|
Payment Batch ID.
Payments come in batches
throughout the day.
Integer.
|
AEDT, Sydney.
Max 27 chars.
|
AEDT, Sydney.
Max 27 chars.
|
Possible values:
'Payment', 'Error Correction', 'Reversal'.
|
PayerInstitutionCode.
Max 3 chars.
|
PayerState
Max 3 chars.
|
BillerCode
Max 10 chars.
|
CustomerReferenceNumber
Max 20 chars.
|
PaymentMethod
Max 3 chars.
|
Amount,
2 decimal places
for cents. Max 12 chars.
|
TransactionReferenceNumber.
Max 21 chars.
|
operationId: BPAYReceivablesReport
parameters:
- name: date
in: path
required: true
description: Format: 'yyyy-MM-dd'. The date for which Monoova received the BPAY Receivable transactions.
schema:
type: string
example: '2020-11-01'
- name: skip
in: query
required: false
description: Number of records to skip. 1 is the first record.
schema:
type: integer
example: 1
- name: take
in: query
required: false
description: Number of records to take.
schema:
type: integer
example: 100
responses:
'200':
description: OK
content:
text/plain:
examples:
response:
value: |
Transaction Id,Batch Id,BPAY Settlement Date,Payment Accepted DateTime,Payment Type,Payer Institution Code,Payer State,Biller Code,Customer Reference Number,Payment Method,Amount,Transaction Reference Number,Receipt Number
10557123,57,2020-11-02T00:00:00,2020-11-02T19:58:06,Payment,CBA,NSW,857763,100014080495384,DebitAccount,20000.00,CBA202011020140276714,5678120
'400':
description: Bad request
'500':
description: Internal Server Error
# financial
/financial/v2/transaction/execute:
post:
tags:
- Financial
summary: Process a transaction
description:
The purpose of the execute API is to debit a source for funds then distribute those funds to one or more supplied disbursement accounts.
You can use the /financial/v2/transaction/validate endpoint to determine if the parameters are correct.
NPP Payment Pending Status
If you are returned a status of ‘Pending’ for an NPP payout, this means that we are waiting for confirmation that the payment has been processed by the processor.
operationId: TransactionExecute
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/financial.transaction'
examples:
Pay Bpay:
$ref: '#/components/examples/PayBpayRequest'
Debit Child mAccount:
$ref: '#/components/examples/DebitChildMAccountRequest'
Pay Child mAccount:
$ref: '#/components/examples/PayChildMAccountRequest'
Direct Debit:
$ref: '#/components/examples/DirectDebitRequest'
Bulk Direct Debit:
$ref: '#/components/examples/BulkDirectDebitRequest'
Direct Credit:
$ref: '#/components/examples/DirectCreditRequest'
Direct Debit (Token):
$ref: '#/components/examples/DirectDebitTokenRequest'
Direct Credit (Token):
$ref: '#/components/examples/DirectCreditTokenRequest'
Npp Pay (BankAccount):
$ref: '#/components/examples/NppPayBankAccountRequest'
Npp Pay (PayId):
$ref: '#/components/examples/NppPayIdRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.GenericPayment.GenericFinanceResponse_V2'
examples:
Pay Bpay:
$ref: '#/components/examples/PayBpayExecuteResponse'
Debit Child mAccount:
$ref: '#/components/examples/DebitChildMAccountExecuteResponse'
Pay Child mAccount:
$ref: '#/components/examples/PayMAccountExecuteResponse'
Direct Debit:
$ref: '#/components/examples/DirectDebitExecuteResponse'
Bulk Direct Debit:
$ref: '#/components/examples/BulkDirectDebitExecuteResponse'
Direct Credit:
$ref: '#/components/examples/DirectCreditExecuteResponse'
Direct Debit (Token):
$ref: '#/components/examples/DirectDebitTokenExecuteResponse'
Direct Credit (Token):
$ref: '#/components/examples/DirectCreditTokenExecuteResponse'
Npp Pay (BankAccount):
$ref: '#/components/examples/NppPayBankAccountExecuteResponse'
Npp Pay (PayId):
$ref: '#/components/examples/NppPayIdExecuteResponse'
'400':
description: Bad request
'500':
description: Internal Server Error
/financial/v2/transaction/validate:
post:
tags:
- Financial
summary: Validate a transaction
description: You can use this API to determine if the parameters are correct.
The body is the same as /financial/v2/transaction/execute endpoint.
The callerUniqueReference will be reusable after the validate call is complete.
Note: You don't need to call this endpoint before an execute as all transactions will be validated before they execute. This is useful if you are using a new rail and want to check your parameters.
operationId: TransactionValidate
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/financial.transaction'
examples:
Pay Bpay:
$ref: '#/components/examples/PayBpayRequest'
Debit Child mAccount:
$ref: '#/components/examples/DebitChildMAccountRequest'
Pay Child mAccount:
$ref: '#/components/examples/PayChildMAccountRequest'
Direct Debit:
$ref: '#/components/examples/DirectDebitRequest'
Bulk Direct Debit:
$ref: '#/components/examples/BulkDirectDebitRequest'
Direct Credit:
$ref: '#/components/examples/DirectCreditRequest'
Direct Debit (Token):
$ref: '#/components/examples/DirectDebitTokenRequest'
Direct Credit (Token):
$ref: '#/components/examples/DirectCreditTokenRequest'
Npp Pay (BankAccount):
$ref: '#/components/examples/NppPayBankAccountRequest'
Npp Pay (PayId):
$ref: '#/components/examples/NppPayIdRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.GenericPayment.GatewayTransactionValidate_V2'
examples:
Pay Bpay:
$ref: '#/components/examples/PayBpayValidateResponse'
Debit Child mAccount:
$ref: '#/components/examples/DebitChildMAccountValidateResponse'
Pay Child mAccount:
$ref: '#/components/examples/PayMAccountValidateResponse'
Direct Debit:
$ref: '#/components/examples/DirectDebitValidateResponse'
Bulk Direct Debit:
$ref: '#/components/examples/BulkDirectDebitValidateResponse'
Direct Credit:
$ref: '#/components/examples/DirectCreditValidateResponse'
Direct Debit (Token):
$ref: '#/components/examples/DirectDebitTokenValidateResponse'
Direct Credit (Token):
$ref: '#/components/examples/DirectCreditTokenValidateResponse'
Npp Pay (BankAccount):
$ref: '#/components/examples/NppPayBankAccountValidateResponse'
Npp Pay (PayId):
$ref: '#/components/examples/NppPayIdValidateResponse'
'400':
description: Bad request
'500':
description: Internal Server Error
'/financial/v2/status/{uniqueReference}':
get:
tags:
- Financial
summary: Get transaction status by UID
description: This API returns the status of a previous transaction.
This is important because a directDebit transaction could be dishonoured up to 3 days after the transaction was executed.
We recommend subscribing to a webhook to notify you when an dishonour transaction is made.
operationId: TransactionStatusByUid
parameters:
- name: uniqueReference
in: path
required: true
description: This is your uniqueReference that was passed in when the transaction was executed
schema:
type: string
example: 'f484ec18-6e1f-481b-a4bf-bea515d8lk34'
maxLength: 200
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.GenericPayment.GatewayTransactionStatusResponse_v2'
examples:
Pending:
$ref: '#/components/examples/TransactionStatusResponsePending'
WaitingOnClearedFunds:
$ref: '#/components/examples/TransactionStatusResponseWaitingOnClearedFunds'
Rejected:
$ref: '#/components/examples/TransactionStatusResponseRejected'
Dishonoured:
$ref: '#/components/examples/TransactionStatusResponseDishonoured'
ClearedFunds:
$ref: '#/components/examples/TransactionStatusResponseClearedFunds'
Complete:
$ref: '#/components/examples/TransactionStatusResponseComplete'
'400':
description: Bad request
'500':
description: Internal Server Error
'/financial/v2/status/{startDate}/{endDate}':
get:
tags:
- Financial
summary: Get transaction status by Date
description: This API returns the status of the specific date of the transactions.
This is important because a directDebit transaction could be dishonoured up to 3 days after the transaction was executed.
operationId: TransactionStatusByDate
parameters:
- name: startDate
in: path
required: true
description: This is the startDate. date format should be 'yyyy-MM-dd'
schema:
type: string
format: date-time
example: '2019-01-01'
- name: endDate
in: path
required: true
description: This is the endDate. date format should be 'yyyy-MM-dd'
schema:
type: string
format: date-time
example: '2019-01-31'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.GenericPayment.GatewayTransactionStatus2Response_v2'
'400':
description: Bad request
'500':
description: Internal Server Error
'/reports/v1/unclearedFunds/{startDate}':
get:
tags:
- Financial
summary: Get Uncleared Transactions by Date
description: |
This API endpoint can be used to get details of uncleared direct debit transactions.
operationId: GetUnclearedFundsByDate
parameters:
- in: path
name: startDate
required: true
schema:
type: string
format: date-time
description: Start Date in ISO8601 date-time format.
- in: query
name: endDate
schema:
type: string
format: date-time
description: End Date in ISO8601 date-time format. Defaults to startDate + 24 hours if not provided.
- in: query
name: pageNumber
schema:
type: integer
format: int32
description: Page number to be returned. Defaults to 1 if not provided.
- in: query
name: pageSize
schema:
type: integer
format: int32
description: Number of records per page. Defaults to 50, maximum allowed value is 200.
responses:
'200':
description: A list of uncleared transactions.
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.UnclearedFundResult_v1'
'400':
description: Bad request
'500':
description: Internal Server Error
# mAccount
/mAccount/v1/create:
post:
tags:
- mAccount
summary: Create an mAccount
description: This API creates an mAccount.
operationId: MAccountCreate
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/mAccount.create'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.mAccountCreateResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/mAccount/v1/close/{accountNumber}':
get:
tags:
- mAccount
summary: 'Close an mAccount'
description: This API closes an mAccount.
operationId: MAccountClose
parameters:
- name: accountNumber
in: path
required: true
description: 16-Digit account number that uniquely identifies the mAccount
schema:
type: string
example: '6279059700023123'
maxLength: 16
minLength: 16
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.mAccountCloseResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/mAccount/v1/financials/{accountNumber}':
get:
tags:
- mAccount
summary: Get mAccount Balance
description: This API will return the current financials for an mAccount.
operationId: MAccountGetFinancials
parameters:
- name: accountNumber
in: path
required: true
description: 16-Digit account number that uniquely identifies the mAccount
schema:
type: string
example: '6279059778044302'
maxLength: 16
minLength: 16
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.mAccountGetFinancialsResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/mAccount/v1/get/{accountNumber}':
get:
tags:
- mAccount
summary: Get mAccount details
description: This API gets details of an mAccount. Property details.options will contain ALL options and their current values.
operationId: MAccountGet
parameters:
- name: accountNumber
in: path
required: true
description: 16-Digit account number that uniquely identifies the mAccount
schema:
type: string
example: '6279059700023123'
maxLength: 16
minLength: 16
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.mAccountGetResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/mAccount/v1/listAsIssuer:
get:
tags:
- mAccount
summary: List as issuer
description: Returns a list of 16-Digit mAccounts that you own.
operationId: MAccountList
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.mAccountListResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/mAccount/v1/sendStatement:
post:
tags:
- mAccount
summary: Send a statement
description: This API generates a detailed pdf statement for delivery via email.
operationId: MAccountSendStatement
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/mAccount.sendStatement'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.mAccountSendStatementResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/mAccount/v1/transactions:
post:
tags:
- mAccount
summary: Get transactions by mAccount
description: This API generates a transaction details.
operationId: MAccountTransactions
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/mAccount.transactions'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.mAccountTransactionsResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/mAccount/v1/update:
post:
tags:
- mAccount
summary: Update mAccount details
description: This API updates a mAccount.
operationId: MAccountUpdate
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/mAccount.update'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.mAccountUpdateResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
# mWallet
/mWallet/v1/create:
post:
tags:
- mWallet
summary: Create an mWallet
description:
'This API creates a new mWallet. This creation process has been mandated by BPAY Pty Ltd as part of the license to use BPAY as a payment method.
Ideally client software should mask the pin from the merchant and get the customer to key in the pin number twice to ensure accuracy and to maintain privacy.
The pin and the Date of Birth Fields are the ultimate authentication fields that a customer has to allow the payment.
If the customer forgets their pin then it can be reset using the ResetPin function.
The customer must supply a birth date (or any other significant date) that matches the one that is registered.
If a customer queries why a birth date is needed as part of the registration process then it is for this reason.
Note: Though specified as a birth date any date of significance would be appropriate. There is no date range checking to check for age etc.
The date is used to allow changes to the pin only.'
operationId: MWalletCreate
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/mWallet.create'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.mWalletCreateResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/mWallet/v1/close/{accountNumber}/{pin}':
get:
tags:
- mWallet
summary: 'Close an mWallet'
description: This API will set an account to be closed and no further financial transactions can be performed in the Engine.
operationId: MWalletClose_V1
parameters:
- name: accountNumber
in: path
required: true
description: 16-Digit account number that uniquely identifies the mWallet
schema:
type: integer
example: 6279059700011434
maxLength: 16
minLength: 16
- name: pin
in: path
required: true
description: 4 digit numerical pin.
schema:
type: integer
example: 6666
maxLength: 4
minLength: 4
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.mWalletCloseResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/mWallet/v1/financials/{accountNumber}/{pin}':
get:
tags:
- mWallet
summary: Get mWallet Balance
description: This API will return the current financials for an mWallet.
operationId: MWalletGetFinancials
parameters:
- name: accountNumber
in: path
required: true
description: 16-Digit account number that uniquely identifies the mWallet
schema:
type: integer
example: 6279059700011434
maxLength: 16
minLength: 16
- name: pin
in: path
required: true
description: 4 digit numerical pin.
schema:
type: integer
example: 6666
maxLength: 4
minLength: 4
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.mWalletGetFinancialsResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/mWallet/v1/reopen/{accountNumber}/{pin}':
get:
tags:
- mWallet
summary: Reopen a closed mWallet
description: This API will reopen an mWallet that was closed.
operationId: MWalletReopen
parameters:
- name: accountNumber
in: path
required: true
description: 16-Digit account number that uniquely identifies the mWallet
schema:
type: string
example: 6279059700011434
maxLength: 16
minLength: 16
- name: pin
in: path
required: true
description: 4 digit numerical pin.
schema:
type: integer
example: 6666
maxLength: 4
minLength: 4
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.mWalletReopenResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/mWallet/v1/resetPin:
post:
tags:
- mWallet
summary: Reset an mWallet PIN
description: This API resets a customer's mWallet PIN.
The Date of Birth is used to authenticate the user.
This API should be used when a customer has forgotten their pin.
operationId: MWalletResetPin
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/mWallet.resetPin'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.mWalletResetPinResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/mWallet/v1/search':
get:
tags:
- mWallet
summary: mWallet search
description:
This API returns an array of mWallets whose authentication fields match the search criteria specified by the identifier.
Mobile phone, land line and 16 - Digit mWallet account numbers have all non - numbers stripped and email address is converted to lower case.
This is the first function to call when trying to identify a customer with an mWallet.
The key piece of information returned for each mWallet is the unique accountNumber that is used in later calls and in the payment gateway.
operationId: MWalletSearch
parameters:
- name: identifier
in: query
required: false
description: Mobile phone number, email address, landline number or the 16-Digit mWallet account number
schema:
type: string
example: '0414811109'
maxLength: 300
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.mWalletSearchResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/mWallet/v1/transactions:
post:
tags:
- mWallet
summary: Get transactions by mWallet
description: This API will return an array of transactions for an mWallet between two dates.
Paging is supported by using the skip and take properties of the mWalletTransactionRequestDetails class.
The information retrieved is in real - time and represents the same details as displayed on an mAccounts financial statement.
operationId: MWalletTransactions
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/mWallet.transactions'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.mWalletTransactionsResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/mWallet/v1/update:
post:
tags:
- mWallet
summary: Update mWallet details
description: This API updates an mWallet.
This update process has been mandated by BPAY Pty Ltd as part of the license to use BPAY as a payment method. The pin or dateOfBirth Dates are not updatable.
operationId: MWalletUpdate
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/mWallet.update'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.mWalletUpdateResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
#Ledger Account
/ledger/v1/create:
post:
tags:
- Ledger Account
summary: Create a new ledger account
description: >
Create a new, active ledger with a linked automatcher. This endpoint also allows you to link an existing automatcher to the ledger by passing an existing bankAccountNumber. Optionally, you can also specify a BSB. If no existing automatcher is linked, a new one will be created.
If you wish to link a PayID to the automatcher you will need to use the PayID endpoints.
The API response will vary based on whether a new automatcher is being created, or an existing automatcher is being linked to the ledger account. Automatcher activation is an asynchronous process that can take a few minutes to complete. If a new or inactive automatcher is linked, the API will respond with isActive: false, and the statusDescription: "Account is being setup for Npp. Please allow a few minutes for the account to become active".
operationId: LedgerCreate
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/LedgerCreate'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.LedgerCreateResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/ledger/v1/close:
post:
tags:
- Ledger Account
summary: Close a ledger account
description: >
Close a ledger when it’s no longer required. For this endpoint to be used the ledger account balance must be $0, otherwise an error will be returned.
operationId: LedgerClose
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/LedgerClose'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.LedgerCloseResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/ledger/v1/balance/{ledgerAccountNumber}:
get:
tags:
- Ledger Account
summary: Retrieve the current balance of a ledger
description: >
Query the current balance of a single ledger. This endpoint also returns a lightweight set of fields related to the ledger account, such as the status and creation date.
operationId: LedgerBalance
parameters:
- name: ledgerAccountNumber
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.LedgerBalanceResponse_V1'
'400':
description: Bad request
'404':
description: Ledger not found
/ledger/v1/transactions:
post:
tags:
- Ledger Account
summary: Retrieve transactions for a ledger
description: >
Return the transactions for a ledger account between two dates. This endpoint returns an array of transaction line items along with a running balance.
The query can be customised to order, skip and fetch as many records as required. Paging is controlled using the skip and take attributes. By default, the query will return the last months records in descending order.
operationId: LedgerTransactions
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/LedgerTransactionsRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.LedgerTransactionsResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/ledger/v1/financials:
post:
tags:
- Ledger Account
summary: Retrieve financial details of a ledger
description: >
This endpoint returns the automatcher details and financials for a ledger. The financials include the available balance, allowed spend & and allowed load, and the maximum balance that can be held within the ledger account.
operationId: LedgerFinancials
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/LedgerFinancialsRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.LedgerFinancialsResponse_V1'
'400':
description: Bad request
'404':
description: Ledger not found
'500':
description: Internal Server Error
/ledger/v1/allAccounts:
get:
tags:
- Ledger Account
summary: Retrieve all ledger accounts
description: >
Returns a list of all ledgers attached to the requestors mAccount, with options to include closed accounts in the query. If no ledger accounts exist, an empty array will be returned.
operationId: LedgerAllAccounts
parameters:
- name: includeClosed
in: query
required: false
schema:
type: boolean
default: false
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.AllLedgersResponse_V1'
'400':
description: Bad request
'404':
description: No ledgers found
# public
/public/v1/ping:
get:
tags:
- Public Endpoints
summary: Ping
description: The primary purpose of the ping API is to validate that the system is up and running. No Authentication is required.
operationId: PublicPing
security: []
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.PublicPingResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/public/v1/certificate':
get:
tags:
- Public Endpoints
summary: Webhook Signing Certificate
description: |
This endpoint returns the current X.509 certificate, which contains the public key that you can use to verify messages sent by Monoova.
The certificate returned is short-lived (1-year validity) and should be updated accordingly.
operationId: PublicCertificate
security: []
responses:
'200':
description: OK
'400':
description: Bad request
'500':
description: Internal Server Error
'/public/v1/certificate/public-key':
get:
tags:
- Public Endpoints
summary: Retrieve Public Key
description:
This endpoint returns the public key used by Monoova to sign messages.The public key is encoded as a hexadecimal string.
This public key should be expected to change every 1 year and should be updated accordingly.
operationId: PublicCertificatePublicKey
security: []
responses:
'200':
description: OK
content:
application/octet-stream:
examples:
response:
value: '3082010A0282010100D1F5EF12A7C71A12478280DCD7D9C8D62E70A7252A02C88D0F768B9860FB773F3C45E33944DF7824AEDAD990B53F5E58719D39790013375E5895FC05FFE7130FA9003C8072850D8499A9C8A676F7D0F719F8BC8CEA0BD0697D1D5B4856A0A0FAB4F297CB53FD00D62091748E8949ED9395887A1D965DCDD8B648709A3EF3E7F83546015AE8154896391973CF4217D859C4D81C81514A38416BD7E7B2CD75BA643B4F07CE2DF6DFA142AF140E0A1C9E3FA708FEA2BDFA4A8B574CC7C757AD8A7B22801356C45AC338DCF8CFA8DFF662A9D4C81EB120D657F8531977B3178B5365E1FCF87E4A9A30A1D351644D6D62F4CE4346C65C5307BB7840493EFDE175516F0203010001'
'400':
description: Bad request
'500':
description: Internal Server Error
# reports
'/reports/v1/settlement/{date}':
get:
tags:
- Reports
summary: Get all transactions in a daily settlement
description: 'You may choose to set your mAccounts to settle automatically every day.
If so, the mAccount balance will be brought to zero at 4pm (Sydney time) each business day.
Any positive balance will be disbursed to the bank account you have linked;
any negative balance will be direct debited from the bank account you have linked.
Transactions on weekends, public holidays and after 4pm won’t appear in the settlement report until after 4pm the next business day.
This report returns an array of actual disbursements for each transaction that was settled on the given date.
Date is represented by ISO8601 – ‘2016-03-01’ for 1st March 2016.'
operationId: ReportSettlement
parameters:
- name: date
in: path
required: true
description: Date is represented by ISO8601 – ‘2016-03-01’ for 1st March 2016.
schema:
type: string
example: '2016-03-01'
maxLength: 13
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.GenericPayment.GenericPaymentSettlementResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/reports/v1/statement/{date}':
get:
tags:
- Reports
summary: Get all successful transactions for a date
description: This API returns all successful transactions on the given date. Date is represented by ISO8601 – ‘2016-03-01’ for 1st March 2016.
operationId: ReportStatement
parameters:
- name: date
in: path
required: true
description: Date is represented by ISO8601 – ‘2016-03-01’ for 1st March 2016.
schema:
type: string
example: '2016-03-01'
maxLength: 13
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.GenericPayment.GenericPaymentStatementResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
# security
'/security/v1/createOneShotSecurityToken/{timeOutMin}':
get:
tags:
- Security
summary: Create OneShot security Token
description: |
This API returns a security token that can be used only once or until it expires.
The purpose of this token is that it can be embedded in a web form to enable you to make a single call to the Engine without exposing your Sign-In Account credentials.
When setting your security credentials to call any of the APIs in this document (except for security/v1/createOneShotSecurityToken),
set the Username to the returned OneShotSecurityToken and set the password to anything as it will be ignored.
operationId: SecurityCreateOneShotSecurityToken
parameters:
- name: timeOutMin
in: path
required: true
description: Each token has an expiry time between 1 and 15 minutes
schema:
type: number
example: 5
- name: Claims
in: query
required: false
description:
This is Optional. Passing a 'Token' in parameter to generate restricted Token which only allows user to create Token.
Currently Available parameters are 'Admin', 'Reporting' and 'Token'
schema:
type: string
example: 'Token'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.GenericPayment.CreateOneShotSecurityTokenResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/security/v1/signInAccountSettings:
get:
tags:
- Security
summary: Get Sign-in account fees & permissions
description: This API returns the fees and permissions that have been given to the Sign-In Account.
operationId: SecuritySignInAccountSettings
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.GenericPayment.SettingsResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
# token
/token/v1/createAustralianBankAccount:
post:
tags:
- Token
summary: Create bank account token
description: This API creates a token representing an Australian Bank Account by passing a TokenAustralianBankAccountPayload class in the body.
operationId: TokenCreateAustralianBankAccount
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/token.createAustralianBankAccount'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.TokenCreateResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/token/v1/createBPAY:
post:
tags:
- Token
summary: Create BPAY token
description: This API creates a token representing BPAY details by passing a TokenBPAYPayload class in the body.
operationId: TokenCreateBPAY
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/token.createBPAY'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.TokenCreateResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/token/v1/delete/{token}':
delete:
tags:
- Token
summary: Delete token
description: This API will delete the payload attached to the specified token.
operationId: TokenDelete
parameters:
- name: token
in: path
required: true
description: The text (GUID) that identifies the token.
schema:
type: string
example: '8c4df16a-78f1-4a1a-9500-357deb3310aa'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.TokenDeleteResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/token/v1/get/{token}':
get:
tags:
- Token
summary: Get token details
description: This API will return the payload attached to the specified token.
operationId: TokenGet
parameters:
- name: token
in: path
required: true
description: The text (GUID) that identifies the token.
schema:
type: string
example: '8c4df16a-78f1-4a1a-9500-357deb3310aa'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.TokenGetResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/token/v1/list/{accountNumber}':
get:
tags:
- Token
summary: List tokens by mAccount
description: This API will return a list of all tokens associated with the provided mWallet or mAccount.
operationId: TokenList
parameters:
- name: accountNumber
in: path
required: true
description: 16-Digit account number that uniquely identifies the mAccount
schema:
type: string
example: '6279059700023123'
maxLength: 16
minLength: 16
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.TokenListResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/token/v1/updateAustralianBankAccount:
post:
tags:
- Token
summary: Update bank account token
description: 'This API provides the ability to update the payload associated with an existing token. For this API, the payload to update is a TokenAustralianBankAccount class.'
operationId: TokenUpdateAustralianBankAccount
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/token.updateAustralianBankAccount'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.TokenUpdateResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/token/v1/updateBPAY:
post:
tags:
- Token
summary: Update BPAY token
description: 'This API provides the ability to update the payload associated with an existing token. For this API, the payload to update is a TokenBPAY class.'
operationId: TokenUpdateBPAY
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/token.updateBPAY'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.TokenUpdateResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/token/v1/validate/{token}':
get:
tags:
- Token
summary: Validate token
description: This API validates a token by passing a Token in the body.
operationId: TokenValidate
parameters:
- name: token
in: path
required: true
description: The text (GUID) that identifies the token.
schema:
type: string
example: '8c4df16a-78f1-4a1a-9500-357deb3310aa'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.TokenValidateResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
# tools
/tools/v1/ping:
get:
tags:
- Tools
summary: Ping (test authentication)
description: The primary purpose of the ping API is to validate your credentials as well validate that the Engine servers are up and running.
operationId: ToolsPing
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.ToolsPingResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/tools/v1/bsbValidate/{bsbNumber}':
get:
tags:
- Tools
summary: Validate a BSB
description: The purpose of this API is to return details about a BSB (Bank-State-Branch) number. The format is a string in the following format: ‘999-999’.
operationId: ToolsBsbValidate
parameters:
- name: bsbNumber
in: path
required: true
description: BSB (Bank-State-Branch) number. The format is a string in the following format: ‘999-999’.
schema:
type: string
example: '012-433'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.ToolsBsbValidateResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/tools/v1/abnValidate/{abnNumber}':
get:
tags:
- Tools
summary: Validate an ABN
description:
'The purpose of this API is to validate that an ABN (Australian Business Number) is correct and determine if it’s valid.
This API makes a call to the Australian Business Registry returning current details about the company.
An ABN is defined as a string of eleven numeric digits.Spaces are allowed but no other characters.
If the resulting status property contains ‘Ok’ then examine the property isAbnValid.
The property isCharity will be true if the entity is an active registered charity.
A list of codes and more information is available at http://abr.business.gov.au/Documentation/ReferenceData'
operationId: ToolsAbnValidate
parameters:
- name: abnNumber
in: path
required: true
description: ABN (Australian Business Number)
schema:
type: string
example: '24611393554'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.ToolsAbnValidateResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/tools/v1/sendEmailToIssuer:
post:
tags:
- Tools
summary: Email an issuer
description: The purpose of this API is to provide email functionality for your application to send emails to the Sign-In Accounts Issuer.
operationId: ToolsSendEmailToIssuer
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/tools.sendEmailToIssuer'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.ToolsSendEmailResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
# verify
/verify/v2/aba/initiate:
post:
tags:
- Verify
summary: Initiate a NPP verification transaction
description: Initiates a verification transaction against a designated bank account or PayID via NPP rail using the v2 endpoint.
operationId: VerifyNPPAccountPayIdInitiate
x-codeSamples:
- lang: 'Npp To BankAccount '
source: |
{
"creditMethod": "NppCreditBankAccount",
"bsb": "802-985",
"bankAccountNumber": "718414234",
"accountName": "Monoova",
"remitter": "RemitterName",
"verificationIdentifier": "NPP Bank Account Verification Identifier"
}
- lang: 'Npp To PayId'
source: |
{
"creditMethod": "NppCreditPayId",
"payId": "MW9GM4@monoova.me",
"payIdType": "Email",
"accountName": "Monoova",
"remitter": "RemitterName",
"verificationIdentifier": "NPP PayId Verification Identifier"
}
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/verify.initiate2'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.VerifyAccountInitiateResponse_V2'
'400':
description: Bad request
'500':
description: Internal Server Error
/verify/v1/aba/initiate:
post:
tags:
- Verify
summary: Initiate a DE Verification Transaction
description: Inititiates a verification transaction against a designated bank account.
operationId: VerifyAccountInitiate
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/verify.initiate'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.VerifyAccountInitiateResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/verify/v1/aba/validate:
post:
tags:
- Verify
summary: Complete an account verification
description: Validates a code against a token generated via the initiate call. After 3 failed attempts the token will get locked for 1 hour. Users can retry with same token after 1 hour or initiate a new verification anytime.
operationId: VerifyAccountValidate
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/verify.validate'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.VerifyAccountValidateResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/verify/v1/aba/get/{token}':
get:
tags:
- Verify
summary: Get a verification token's details
description: Return details for a specific verification token.
operationId: VerifyAccountGet
parameters:
- name: token
in: path
required: true
description: Generated Token from verify/v1/aba/initiate (Initiates a verification transaction)
schema:
type: string
example: 'f45d1c83-1533-4cbb-ae05-4381e181cb18'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.VerifyAccountGetResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/verify/v1/aba/list:
get:
tags:
- Verify
summary: List verified bank accounts
description: Get a list of all verified bank accounts.
operationId: VerifyAccountList
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.VerifyAccountListResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/verify/v1/aba/update:
post:
tags:
- Verify
summary: Update a verified bank account
description: 'Update the following fields for a verified account's without reverifying the bank account. Bank Account Title, Has DDR authority'
operationId: VerifyAccountUpdate
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/verify.update'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DTO.VerifyAccountUpdateResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
# Bank Account Receivables
/receivables/v1/create:
post:
tags:
- Automatcher (Bank Account Receivables)
summary: Create an Automatcher (Receivables) Account
description:
Creates a new bank-account number. For the creation of batches of account numbers, please see /receivables/v1/batchCreate
These account numbers can be used along with the returned BSB to receive payments from any bank in Australia.
Payments to an invalid bank-account number, i.e. one that has not been created, will be returned by Monoova to the remitting institution.
Each account number has a check digit to minimize common payer errors such as adjacent transposition errors or single-digit typos.
An optional unique ID can be linked to each account number for your reference.
If a unique ID is not provided, Monoova will generate and return one automatically.
If isActive is omitted, it will default to false.
This can be changed to true via the /receivables/v1/status endpoint.
operationId: ReceivablesCreate
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/receivables.create'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/receivablesCreateResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/receivables/v1/status:
post:
tags:
- Automatcher (Bank Account Receivables)
summary: Set Account Status
description:
Bank accounts can be active or inactive. Inactive accounts will have all payments rejected and returned to the payer.
Status can be called using either bank account number or clientuniqueId.
operationId: ReceivablesStatus
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/receivables.status'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/receivablesStatusSetResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/receivables/v1/statusByBankAccount/{bankAccountNumber}':
get:
tags:
- Automatcher (Bank Account Receivables)
summary: Get Account Status By BankAccount
description:
Returns the status of a bank account number. Without changing the status, this API is used for checking the status of a bank account.
Status can be called using either bankaccount number or clientUniqueId.
operationId: ReceivablesStatusByBank
parameters:
- name: bankAccountNumber
in: path
required: true
description: The bank account number generated.
schema:
example: '153884104'
type: string
- name: bsb
in: query
required: false
description: Optional BSB parameter specifying the branch identifier for Australian banks. Accepts either 6 digits or with a hyphen as "XXX-XXX". If not specified, the service will use the MAccount’s configured ‘Default BSB’. If a ‘Default BSB’ has not been configured, then the Monoova ‘Default BSB’ will be used.
schema:
type: string
maxLength: 7
example: '802-985'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/receivablesStatusGetResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/receivables/v1/statusByClientID/{clientUniqueId}':
get:
tags:
- Automatcher (Bank Account Receivables)
summary: Get Account Status By ClientUniqueId
description: |
Returns the status of a bank account number. Without changing the status, this API is used for checking the status of a bank account.
Status can be called using either bankAccount number or clientUniqueId.
operationId: ReceivablesStatusByClientID
parameters:
- name: clientUniqueId
in: path
required: true
description: 'An identifier assigned to the account.'
schema:
example: 862944d057FC408B9B04541C2BA12
type: string
- name: bsb
in: query
required: false
description: Optional BSB parameter specifying the branch identifier for Australian banks. Accepts either 6 digits or with a hyphen as "XXX-XXX". If not specified, the service will use the MAccount’s configured ‘Default BSB’. If a ‘Default BSB’ has not been configured, then the Monoova ‘Default BSB’ will be used.
schema:
type: string
maxLength: 7
example: '802-985'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/receivablesStatusGetResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/receivables/v6/report/{date}':
get:
tags:
- Automatcher (Bank Account Receivables)
summary: Report
description:
Returns a report of all received transactions for the day with associated details, this includes Direct Entry and NPP Receivables.
If requested multiple times on the current date (calendar day, AEDT), the report is cumulative.
E.g. if, on the same day, a report is requested at 10am and another one at 1pm, the report at 1pm will contain all the transactions already contained in the 10am report,
in addition to any new transactions.
Direct Entry transactions arrive in batches 7 times throughout the day,
8.30am, 11.30am, 14.30pm, 17.30pm, 19.45pm, 21.45pm and 22.50pm (emergency), business days only.
NPP Transactions may arrive at anytime, we recommend subscribing to a webhook to receive new transaction notifications.
The report is an application/octet-stream, columns are comma separated. Where a comma(,) or double quote(") is present in any of the below fields,
the field will be encased in double quotes and/or escaped as per RFC4180
Columns are as follows:
| Transaction ID |
Batch ID |
Datetime |
BSB |
AccountNumber |
AccountName |
PayId |
PayId Name |
TransactionCode |
TransactionType |
Amount |
LodgementRef |
RemitterName |
Indicator |
WithholdingTaxAmount (if applicable) |
EndToEndId |
RespondBeforeDateTime |
NameOfUserSupplyingFile |
NumberOfUserSupplyingFile |
DescriptionOfEntriesOnFile |
SourceBsb |
SourceAccountNumber |
SourceAccountName |
CategoryPurposeCode |
CreditorReferenceInformation |
USINumber |
USIScheme |
UltimateCreditorName |
ReconciliationRuleReference |
Monoova generated
Unique ID.
Max 12 chars.
|
Payment Batch ID.
Payments come in batches
throughout the day.
Max 12 chars. Blank if NPP.
|
AEDT, Sydney.
Max 27 chars.
|
Payee BSB.
Max 7 Chars.
|
Payee Bank Account
Number. Max 34 chars.
|
Payer submitted Account
Name. Max 32 chars.
|
Email address for the PayID.
Max 256 chars.
|
Name displayed to the payers
Max 140 chars.
|
Industry standard transaction
code. “50” for credit.
Refer to Direct entry standard
for definitions 51-57.
Max 5 chars.
|
Possible Values:
'DE' or 'NPP'
|
Payment amount,
2 decimal places
for cents. Max 11 chars.
|
Payer submitted reference.
Max 280 chars.
|
Remitting Entity.
Max 140 chars.
|
Blank; OR 'W' dividend paid to a
resident of a country where a double
tax agreement is in force. 'X' dividend
paid to a resident of any other country.
'Y' interest paid to all non-resident.
Max 1 chars.
|
Blank OR Payment amount,
2 decimal places for cents.
Max 9 chars.
|
Osko End to End identifier
submitted by Payer.
Max 35 chars.
|
Time by when you have to
respond to the Inbound
Direct Debit request.
|
Preferred name of the
User supplying
the Direct Entry file.
|
This is the User Identification
Number which is assigned by
APCA and User Financial Institutions.
|
Direct Entry file description.
|
Payer BSB.
Max 7 Chars.
|
Payer Bank Account Number.
Max 34 chars.
|
This field appears for NPP transactions
only and is the payers bank account name.
For DE transactions please refer to the
RemitterName Field. Max 140 Chars.
|
NPP payment purpose code, max 4 chars.
Possible values:
Blank,
SALA = Salary,
PENS = SuperAnnuation,
SUPP = E-Invoice,
TAXS = Tax
|
Used for SALA, PENS, SUPP and TAXS
transactions only.
Reference related to payment type.
Max 35 chars.
|
Used for PENS code payments only.
Unique Superannuation ID (USI)
Max 35 chars.
|
Used for PENS code payments only.
USI scheme.
Max 35 chars.
|
Used for PENS code payments only.
Name of the Ultimate Creditor.
Max 140 chars.
|
If Allow Reconciliation Rules is turned on for merchant.
Example RR22348
string <= 35 characters ^[A-Za-z0-9-_]{1,35}$
|
Note: Source account details do not appear by default, please contact Monoova for further information. Also note, we will only retrieve 1 month transaction at a time
Possible transaction codes
| Code |
Transaction Description |
| 13 |
Externally initiated debit items |
| 50 |
Externally initiated credit items with the exception of those bearing Transaction Codes
|
| 51 |
Australian Government Security Interest |
| 52 |
Family Allowance |
| 53 |
Pay |
| 54 |
Pension |
| 55 |
Allotment |
| 56 |
Dividend |
| 57 |
Debenture/Note Interest |
operationId: ReceivablesReportDate
parameters:
- name: date
in: path
required: true
description: Format: 'yyyyMMddHHmmss'. This becomes the start date of the report if report is being fetched for a date range.
schema:
type: string
example: '20200401000001'
- name: endDate
in: query
required: false
description: Format: yyyyMMddHHmmss. Use this to fetch the report for a date range.
schema:
type: string
example: '20200408235959'
- name: skip
in: query
required: false
description: Number of records to skip. 0 is the first record.
schema:
type: integer
example: 0
- name: take
in: query
required: false
description: Number of records to take. If endDate is provided maximum take is 10000.
schema:
type: integer
example: 1000
- name: accountNumber
in: query
required: false
description: Payee bank account number.
schema:
type: string
example: '123456789'
- name: clientUniqueId
in: query
required: false
description: The unique identifier for the account.
schema:
type: string
example: '862944d057FC408B9B04541C2BA12'
- name: transactionType
in: query
required: false
description: Possible Values: 'DE' or 'NPP'.
schema:
type: string
example: 'DE'
enum:
- 'DE'
- 'NPP'
- name: transactionCode
in: query
required: false
description: Industry standard transaction code. only applicable for DE. Possible values: “13” for Debit, “50” for credit.Refer to Direct entry standard for definitions 51-57.
schema:
type: integer
example: 13
enum:
- 13
- 50
- name: payId
in: query
required: false
description: Email address for the PayID.
schema:
type: string
example: 'xxx@xxx.xx'
- name: payIdName
in: query
required: false
description: Name displayed to the payers.
schema:
type: string
example: 'abcdefgh'
responses:
'200':
description: OK
content:
text/plain:
examples:
response:
value: |
Transaction ID, Batch Id, DateTime, BSB, AccountNumber, AccountName, PayId, PayId Name, TransactionCode, TransactionType, Amount, LodgementRef, RemitterName, Indicator, WithholdingTaxAmount, EndToEndId, RespondBeforeDateTime, NameOfUserSupplyingFile, NumberOfUserSupplyingFile, DescriptionOfEntriesOnFile, SourceBsb, SourceAccountNumber, SourceAccountName, CategoryPurposeCode, CreditorReferenceInformation, USINumber, USIScheme, UltimateCreditorName, ReconciliationRuleReference
D00100544414,000000214309,2020-04-20T13:58:48,802-985,744019924,CRMT,,,50,DE,5.00,Ref1,MONOOVA,,0.00,,,M PAYMENTS PTY LIMIT,483449,PAYMNT TRSFR,012-366,123456789,,,,,,RR22348
N00400000507,,2020-04-20T13:55:50,802-985,123456789,Ashwini Radcliffe,4op1q4@monoova.me,Test01,,NPP,201.00,This description,Twhite Pharma,,0.00,NOTPROVIDED,,,,,123-123,12026204,Twhite Pharma,,,,,,RR22349
N00400000494,,2020-04-20T13:55:17,802-985,123456789,Ashwini Radcliffe,4op1q4@monoova.me,Test01,,NPP,201.00,This description,Omega,,0.00,NOTPROVIDED,,,,,123-123,12026204,Omega Group,,,,,,RR22350
N00400000481,,2020-04-20T13:53:37,802-985,123456789,Ashwini Radcliffe,4op1q4@monoova.me,Test01,,NPP,201.00,This description,S Group,,0.00,NOTPROVIDED,,,,,123-123,12026204,S Group,,,,,,RR22351
'400':
description: Bad request
'500':
description: Internal Server Error
'/paytoreceivables/v1/report/{date}':
get:
tags:
- Automatcher (Bank Account Receivables)
summary: PayTo Receivables Report
description: Returns a report of PayTo transactions for the day with associated details.
If requested multiple times on the current date (calendar day, AEDT), the report is cumulative.
E.g. if, on the same day, a report is requested at 10am and another one at 1pm, the report at 1pm will contain all the transactions already contained in the 10am report,
in addition to any new transactions.
PayTo Transactions may arrive at anytime, we recommend subscribing to a webhook to receive new transaction notifications.
The report is an application/octet-stream, columns are comma separated. Where a comma(,) or double quote(") is present in any of the below fields,
the field will be encased in double quotes and/or escaped as per RFC4180
Columns are as follows:
| Transaction ID |
Batch ID |
Datetime |
BSB |
AccountNumber |
AccountName |
PayId |
PayId Name |
TransactionCode |
TransactionType |
Amount |
LodgementRef |
RemitterName |
Indicator |
WithholdingTaxAmount (if applicable) |
EndToEndId |
RespondBeforeDateTime |
NameOfUserSupplyingFile |
NumberOfUserSupplyingFile |
DescriptionOfEntriesOnFile |
SourceBsb |
SourceAccountNumber |
SourceAccountName |
CategoryPurposeCode |
CreditorReferenceInformation |
USINumber |
USIScheme |
UltimateCreditorName |
MMSId |
InitiatingPartyName |
NPPInstructionId |
ReceiptNumber |
Monoova generated
Unique ID.
Max 12 chars.
|
Payment Batch ID.
Payments come in batches
throughout the day.
Max 12 chars. Blank if NPP.
|
AEDT, Sydney.
Max 27 chars.
|
Payee BSB.
Max 7 Chars.
|
Payee Bank Account
Number. Max 34 chars.
|
Payer submitted Account
Name. Max 32 chars.
|
Email address for the PayID.
Max 256 chars.
|
Name displayed to the payers
Max 140 chars.
|
Industry standard transaction
code. “50” for credit.
Refer to Direct entry standard
for definitions 51-57.
Max 5 chars.
|
Possible Values:
'DE' or 'NPP'
|
Payment amount,
2 decimal places
for cents. Max 11 chars.
|
Payer submitted reference.
Max 500 chars.
|
Remitting Entity.
Max 140 chars.
|
Blank; OR 'W' dividend paid to a
resident of a country where a double
tax agreement is in force. 'X' dividend
paid to a resident of any other country.
'Y' interest paid to all non-resident.
Max 1 chars.
|
Blank OR Payment amount,
2 decimal places for cents.
Max 9 chars.
|
Osko End to End identifier
submitted by Payer.
|
Time by when you have to
respond to the Inbound
Direct Debit request.
|
Preferred name of the
User supplying
the Direct Entry file.
|
This is the User Identification
Number which is assigned by
APCA and User Financial Institutions.
|
Direct Entry file description.
|
Payer BSB.
Max 7 Chars.
|
Payer Bank Account Number.
Max 34 chars.
|
This field appears for NPP transactions
only and is the payers bank account name.
For DE transactions please refer to the
RemitterName Field. Max 140 Chars.
|
NPP payment purpose code, max 4 chars.
Possible values:
Blank,
SALA = Salary,
PENS = SuperAnnuation,
SUPP = E-Invoice,
TAXS = Tax
|
Used for SALA, PENS, SUPP and TAXS
transactions only.
Reference related to payment type.
Max 35 chars.
|
Used for PENS code payments only.
Unique Superannuation ID (USI)
Max 35 chars.
|
Used for PENS code payments only.
USI scheme.
Max 35 chars.
|
Used for PENS code payments only.
Name of the Ultimate Creditor.
Max 140 chars.
|
Id assigned by NPPA for payment agreement
|
Iniation Party name.
|
Unique identifier for the NPP instruction.
Max 35 chars.
|
Unique identifier for the transaction log.
Max 12 chars.
|
Note: Source account details do not appear by default, please contact Monoova for further information. Also note, we will only retrieve 1 month transaction at a time
Possible transaction codes
| Code |
Transaction Description |
| 13 |
Externally initiated debit items |
| 50 |
Externally initiated credit items with the exception of those bearing Transaction Codes
|
| 51 |
Australian Government Security Interest |
| 52 |
Family Allowance |
| 53 |
Pay |
| 54 |
Pension |
| 55 |
Allotment |
| 56 |
Dividend |
| 57 |
Debenture/Note Interest |
operationId: PayToReceivablesReportDate
parameters:
- name: date
in: path
required: true
description: Format: 'yyyyMMddHHmmss'. This becomes the start date of the report if report is being fetched for a date range.
schema:
type: string
example: '20200401000001'
- name: endDate
in: query
required: false
description: Format: yyyyMMddHHmmss. Use this to fetch the report for a date range.
schema:
type: string
example: '20200408235959'
- name: skip
in: query
required: false
description: Number of records to skip. 0 is the first record.
schema:
type: integer
example: 0
- name: take
in: query
required: false
description: Number of records to take. If endDate is provided maximum take is 10000.
schema:
type: integer
example: 1000
- name: accountNumber
in: query
required: false
description: Payee bank account number.
schema:
type: string
example: '123456789'
- name: clientUniqueId
in: query
required: false
description: The unique identifier for the account.
schema:
type: string
example: '862944d057FC408B9B04541C2BA12'
- name: transactionType
in: query
required: false
description: Possible Values: 'DE' or 'NPP'.
schema:
type: string
example: 'DE'
enum:
- 'DE'
- 'NPP'
- name: transactionCode
in: query
required: false
description: Industry standard transaction code. only applicable for DE. Possible values: “13” for Debit, “50” for credit.Refer to Direct entry standard for definitions 51-57.
schema:
type: integer
example: 13
enum:
- 13
- 50
- name: payId
in: query
required: false
description: Email address for the PayID.
schema:
type: string
example: 'xxx@xxx.xx'
- name: payIdName
in: query
required: false
description: Name displayed to the payers.
schema:
type: string
example: 'abcdefgh'
responses:
'200':
description: OK
content:
text/plain:
examples:
response:
value: |
Transaction ID,Batch Id,DateTime,BSB,AccountNumber,AccountName,PayId,PayId Name,TransactionCode,TransactionType,Amount,LodgementRef,RemitterName,Indicator,WithholdingTaxAmount,EndToEndId,RespondBeforeDateTime,NameOfUserSupplyingFile,NumberOfUserSupplyingFile,DescriptionOfEntriesOnFile,SourceBsb,SourceAccountNumber,SourceAccountName,CategoryPurposeCode,CreditorReferenceInformation,USINumber,USIScheme,UltimateCreditorName,MMSId,InitiatingPartyName,NPPInstructionId,ReceiptNumber
N00400000507,,2020-04-20T13:55:50,802-985,123456789,Ashwini Radcliffe,4op1q4@monoova.me,Test01,,NPP,201.00,This description,Twhite Pharma,,0.00,NOTPROVIDED,,,,,123-123,12026204,Twhite Pharma,,,,,,,PI123456789,5678120
N00400000494,,2020-04-20T13:55:17,802-985,123456789,Ashwini Radcliffe,4op1q4@monoova.me,Test01,,NPP,201.00,This description,Omega,,0.00,NOTPROVIDED,,,,,123-123,12026204,Omega Group,,,,,,,PI123456790,5678121
N00400000481,,2020-04-20T13:53:37,802-985,123456789,Ashwini Radcliffe,4op1q4@monoova.me,Test01,,NPP,201.00,This description,S Group,,0.00,NOTPROVIDED,,,,,123-123,12026204,S Group,,,,,,,PI123456791,5678122
'400':
description: Bad request
'500':
description: Internal Server Error
/receivables/v1/reportLastSettlement:
get:
tags:
- Automatcher (Bank Account Receivables)
summary: Last Settlement
description: Returns the latest settlement for received funds. We suggest using this as a lightweight polling endpoint to establish when new transactions have been received. Transactions arrive in batches.
operationId: ReceivablesReportLastSettlement
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/receivablesReportLastSettlement_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/receivables/v1/listAccounts:
get:
tags:
- Automatcher (Bank Account Receivables)
summary: List Accounts
description: List Accounts will return a list of all account numbers you have linked to your Sign in.
operationId: ReceivablesListAccounts
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/receivablesListAccounts_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/receivables/v1/batchCreate:
post:
tags:
- Automatcher (Bank Account Receivables)
summary: Batch Create
description:
The batch create API has the same functionality as the /receivables/v1/create endpoint
however it allows you to create up to 50,000 accounts in a single call by submitting a file.
We recommend this for circumstances where > 100 accounts need to be created within a short time period.
Creation of accounts with isActive=true is restricted to 1000.
Multiple batches cannot be requested at the same time, you have to wait for the completion of a batch before requesting a new one.
The Batch Create API also supports a lightweight option whereby many accounts can be created by submitting a single line.
This option automatically sets isActive = true, hence you can only request the creation of 1000 accounts in one request.
For this method, all accounts will be created with the same specified name, and clientuniqueid’s cannot be specified will be automatically generated.
operationId: ReceivablesBatchCreate
x-codeSamples:
- lang: 'Detail example'
source: |
[bankAccountName,clientUniqueId,isActive,bsb]
[Bank14399997,S45D927DA07094859A5E5B1E532A12CA,true,802-985]
[Bank14399997,K275D304BE0B947829224BE7BC8A6AEF,true,802-985]
[Bank14399997,T13686BC4B7364A13AE092A2CA1DFCF6,true,802-985]
[Bank12399997,SHU13LJ6Z0356ZWAZPTFTQ0K6VZQG2NO,false,802-985]
- lang: 'Lightweight example'
source: |
[bankAccountName,count,bsb]
[My company pty ltd,4,802-985]
requestBody:
content:
application/octet-stream:
schema:
type: string
description: |
Batch create requires parameters to be submitted as a file, with headers. The header and each new record are enclosed in square brackets.
The columns are comma separated with the following format:
Detail example
| bankAccountName |
clientUniqueId |
isActive |
bsb |
The name of the account to be paid into.
This will be defaulted to your registered Trading Name.
|
An identifier assigned to the account.
Must be unique.
If not provided Monoova will generate and
return a value automatically.
|
Used to open and close account numbers.
Closed account numbers will return all payments
made to that account number.
If not provided this value defaults to false.
|
Optional. If this column is added, please provide a valid value.
|
Lightweight example
| bankAccountName |
count |
bsb |
The name of the account to be paid into.
This will be defaulted to your registered Trading Name.
|
Numeric, number of accounts you wish to create with this name.
|
Optional. If this column is added, please provide a valid value.
|
Optional BSB parameter. If not specified, default BSB logic applies.
|
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/receivablesBatchCreate_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/receivables/v1/batchStatus:
post:
tags:
- Automatcher (Bank Account Receivables)
summary: Batch Status
description: |
The batch Status API functions similarly to the /receivables/v1/Status API,
however it allows you to update accounts in batch.
You can only update 1000 records per request. Multiple batches cannot be requested at the same time,
you have to wait for the completion of a batch before requesting a new one.
operationId: ReceivablesbatchStatus
x-codeSamples:
- lang: 'Payload'
source: |
[clientUniqueId,bankAccountNumber,isActive,bsb]
[A55117D53057E449D83CB49CE3D3FCC87,21316015,true,802-985]
[E0DF9007BF4064F0D819EA0663AB11107,52463879,true,]
[F1608858214894DD9BE5565A10A28053F,32597641,false,]
[F2B512D8FE7F4AEFB82EA97141B710CFE,15402587,true,]
[TR1268FA85FCED4E9793B57E71F985AD2,81225401,true,]
[D308A7F0B8CD4C909CCEAC2CEDD624917,41900918,true,]
[KO22043D20EEF847209A9E50D86F915E0,67953481,true,]
[MP578B76FC71574A4BAF848D94268970F,71828803,true,]
requestBody:
content:
application/octet-stream:
schema:
type: string
description: |
Batch status requires parameters to be submitted as a file, the header and each new record are enclosed in square brackets.
The columns are comma separated with the following format:
| clientUniqueId |
bankAccountNumber |
isActive |
bsb |
The unique identifier for the account to open or close.
`at least one of clientUniqueId or bankAccountNumber`
`required`
|
The bank account number for the account to open or close.
`at least one of clientUniqueId or bankAccountNumber`
`required`
|
Used to open and close account numbers.
Closed account numbers will return all payments
made to that account number.
|
Optional BSB parameter. If not specified, default BSB logic applies.
|
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/receivablesBatchStatus_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/receivables/v2/refund:
post:
tags:
- Automatcher (Bank Account Receivables)
summary: Receivables Refund
description:
The refund API allows the transfer funds back to the payer for transactions received via EFT.
The funds are sent to details as supplied by the payer institution.
Please note that not all institutions provide valid payer details, in some cases the refund will not be successful.
NPP payments can only be refunded 5 minutes after receiving the original payment.
operationId: ReceivablesRefund
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/receivables.refund'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/receivablesRefundResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/receivables/v1/processdirectdebit:
post:
tags:
- Automatcher (Bank Account Receivables)
summary: Process Direct Debit
description:
Automatcher accounts can also process direct debits from external organisations against them. By default this behaviour is disabled.
If configured to allow direct debits, a notification will be sent when an external party attempts to debit one of your accounts, and if accepted, the funds will be deducted from your sign in mAccount.
Notification of a pending direct debit are sent via a callback
or a report API can be called to list all pending debits.
After receiving a notification, you have until 4:00pm next business day (from the time the initial debit is received) to instruct us on what action to take; either approve or reject.
If no action is taken the transaction will be placed into a pending status until expiry next business day at 4pm.
For expiring transactions, the direct debit request will automatically be actioned based on your account default configuration.
Configuration options are:
a) Accept direct debit request for all requests
b) Reject direct debit for all requests
Note if you do not have sufficient balance in your sign in mAccount you cannot accept direct debits and expiring direct debits will be automatically returned regardless of configuration.
operationId: ReceivablesProcessDirectDebit
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/receivables.processdirectdebit'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/receivablesProcessDirectDebitResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/receivables/v2/inbounddirectdebitreport/{date}':
get:
tags:
- Automatcher (Bank Account Receivables)
summary: Inbound Direct Debit Report
description:
The report is an application/octet-stream, columns are comma separated. Where a comma(,) or double quote(") is present in any of the below fields, the field will be encased in double quotes and/or escaped as per RFC4180
.
| Transaction ID |
Batch ID |
DateTime |
Status |
RejectionReason |
BSB |
AccountNumber |
AccountName |
Amount |
LodgementRef |
RemitterName |
RespondBeforeDateTime |
NameOfUserSupplyingFile |
NumberOfUserSupplyingFile |
DescriptionOfEntriesOnFile |
Indicator |
WithholdingTaxAmount (if applicable) |
SourceBsb (if applicable) |
SourceAccountNumber (if applicable) |
Monoova generated
Unique ID.
Max 12 chars.
|
Payment Batch ID.
Payments come in batches
throughout the day.
Max 12 chars. Blank if NPP.
|
AEDT, Sydney.
Max 27 chars.
|
Transaction status,
possible values:
Pending, Accept, Reject
|
Text supplied when rejecting
a direct debit.
Max 250 Chars
|
Payee BSB.
Max 7 Chars.
|
Payee Bank Account
Number. Max 34 chars.
|
Payer submitted Account
Name. Max 32 chars.
|
Payment amount,
2 decimal places
for cents. Max 11 chars.
|
Payer submitted reference.
Max 280 chars.
|
Remitting Entity.
Max 140 chars.
|
Time by when you have to
respond to the Inbound
Direct Debit request.
|
Preferred name of the
User supplying
the Direct Entry file.
|
This is the User Identification
Number which is assigned by
APCA and User Financial Institutions.
|
Direct Entry file description.
|
Blank; OR 'W' dividend paid to a
resident of a country where a double
tax agreement is in force. 'X' dividend
paid to a resident of any other country.
'Y' interest paid to all non-resident.
Max 1 chars.
|
Blank OR Payment amount,
2 decimal places for cents.
Max 9 chars.
|
Payee BSB.
Max 7 Chars.
|
Payee Bank Account
Number. Max 34 chars.
|
Note: Source account details do not appear by default, please contact Monoova for further information
operationId: ReceivablesInboundDirectDebitReportDate
parameters:
- name: date
in: path
required: true
description: date format should be 'yyyy-MM-dd' format.
schema:
type: string
example: '2020-03-15'
responses:
'200':
description: OK
content:
text/plain:
examples:
response:
value: |
Transaction ID, Batch Id, DateTime, Status, RejectionReason, BSB, AccountNumber, AccountName, Amount, LodgementRef, RemitterName, RespondBeforeDateTime, NameOfUserSupplyingFile, NumberOfUserSupplyingFile, DescriptionOfEntriesOnFile, Indicator, WithholdingTaxAmount, SourceBsb, SourceAccountNumber
D00100541320,000000213529,2020-03-03T09:31:08,Pending,,802-985,987654321,DRMT,5.00,Ref1,MONOOVA,2020-03-04T16:30:00,M PAYMENTS PTY LIMIT,483449,PAYMNT TRSFR,,0.00,123-123,12026204
D00100541268,000000213516,2020-03-03T09:29:34,Pending,,802-985,987654321,DRMT,5.00,Ref1,MONOOVA,2020-03-04T16:30:00,M PAYMENTS PTY LIMIT,483449,PAYMNT TRSFR,,0.00,123-123,12026204
D00100541203,000000213503,2020-03-03T08:53:49,Reject,,802-985,123456789,DR,4.00,Ref1,MONOOVA,2020-02-26T16:00:00,M PAYMENTS PTY LIMIT,483449,PAYMNT TRSFR,,0.00,123-123,12026204
D00100541216,000000213503,2020-03-03T08:53:49,Reject,,802-985,987654321,DRMT,5.00,Ref1,MONOOVA,2020-02-26T16:00:00,M PAYMENTS PTY LIMIT,483449,PAYMNT TRSFR,,0.00,123-123,12026204
D00100541138,000000213490,2020-03-03T08:27:55,Accept,,802-985,123456789,DR,4.00,Ref1,MONOOVA,2020-03-04T16:30:00,M PAYMENTS PTY LIMIT,483449,PAYMNT TRSFR,,0.00,123-123,12026204
D00100541151,000000213490,2020-03-03T08:27:55,Reject,Out of money,802-985,987654321,DRMT,5.00,Ref1,MONOOVA,2020-03-04T16:30:00,M PAYMENTS PTY LIMIT,483449,PAYMNT TRSFR,,0.00,123-123,12026204
D00100541073,000000213477,2020-03-03T08:16:22,Reject,,802-985,123456789,DR,4.00,Ref1,MONOOVA,2020-02-26T16:00:00,M PAYMENTS PTY LIMIT,483449,PAYMNT TRSFR,,0.00,123-123,12026204
D00100541086,000000213477,2020-03-03T08:16:22,Reject,,802-985,987654321,DRMT,5.00,Ref1,MONOOVA,2020-02-26T16:00:00,M PAYMENTS PTY LIMIT,483449,PAYMNT TRSFR,,0.00,123-123,12026204
D00100541008,000000213464,2020-03-03T08:09:18,Accept,,802-985,123456789,DR,4.00,Ref1,MONOOVA,2020-02-26T16:00:00,M PAYMENTS PTY LIMIT,483449,PAYMNT TRSFR,,0.00,123-123,12026204
D00100541021,000000213464,2020-03-03T08:09:18,Accept,,802-985,987654321,DRMT,5.00,Ref1,MONOOVA,2020-02-26T16:00:00,M PAYMENTS PTY LIMIT,483449,PAYMNT TRSFR,,0.00,123-123,12026204
D00100540943,000000213451,2020-03-03T07:20:55,Accept,,802-985,123456789,DR,4.00,Ref1,MONOOVA,2020-02-26T16:00:00,M PAYMENTS PTY LIMIT,483449,PAYMNT TRSFR,,0.00,123-123,12026204
D00100540956,000000213451,2020-03-03T07:20:55,Accept,,802-985,987654321,DRMT,5.00,Ref1,MONOOVA,2020-02-26T16:00:00,M PAYMENTS PTY LIMIT,483449,PAYMNT TRSFR,,0.00,123-123,12026204
D00100540878,000000213438,2020-03-03T07:20:48,Accept,,802-985,123456789,DR,4.00,Ref1,MONOOVA,2020-02-26T16:00:00,M PAYMENTS PTY LIMIT,483449,PAYMNT TRSFR,,0.00,123-123,12026204
D00100540891,000000213438,2020-03-03T07:20:48,Accept,,802-985,987654321,DRMT,5.00,Ref1,MONOOVA,2020-02-26T16:00:00,M PAYMENTS PTY LIMIT,483449,PAYMNT TRSFR,,0.00,123-123,12026204
'400':
description: Bad request
'500':
description: Internal Server Error
/receivables/v1/processRtgsImt:
post:
tags:
- Automatcher (Bank Account Receivables)
summary: Receive Swift Transfers (RTGS/IMT transactions)
description:
Automatcher accounts can be configurated to receive Swift Transfers. This includes both RTGS (Real Time Gross Settlement) and IMT (International Money Transfers).
If the account is not configured to receive Swift Transfers, the transaction will be automatically rejected on our end. If configured to allow RTGS/IMT transactions, a notification will be sent when an external party attempts to credit to one of your accounts, and if accepted, the funds will be credited to your sign in mAccount or nominated mAccount. Please contact Monoova for configuration of account.
Notification of a RTGS/IMT are sent via a callback
or a report API can be called to list all pending transactions.
After receiving a notification, you have 2 business days to either confirm or reject. If no action is taken the transaction will be placed into a pending status until expiry.
For expiring transactions, the RTGS/IMT transactions will automatically be actioned based on your account default configuration.
Configuration options are:
a) Confirm - Accept all incoming RTGS/IMT Transactions
b) Reject - Reject all incoming RTGS/IMT Transactions
operationId: ReceivablesProcessRtgsImt
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/receivables.processrtgsimt'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/receivablesProcessDirectDebitResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/receivables/v2/rtgsimtReport/{date}':
get:
tags:
- Automatcher (Bank Account Receivables)
summary: RTGS/IMT Report
description:
Returns a report of all received transactions for the day with associated details, this includes RTGS (real-time gross settlement) and International Money Transfer.
If requested multiple times on the current date (calendar day, AEDT), the report is cumulative. E.g. if, on the same day,
a report is requested at 10am and another one at 1pm, the report at 1pm will contain all the transactions already contained in the 10am report, in addition to any new transactions.
The report is an application/octet-stream, columns are comma separated. Where a comma(,) or double quote(") is present in any of the below fields,
the field will be encased in double quotes and/or escaped as per RFC4180
Columns are as follows:
| Transaction ID |
AccountNumber |
BSB |
AccountName |
TransactionReferenceNumber |
Amount |
Status |
LodgementRef |
Date |
SourceAccountDetails |
RespondBeforeDateTime |
RejectReasonDescription |
ProcessedDate |
SendingOrganisation |
ReceivingOrganisation |
OrderingInstitution |
OriginatingAddress |
Monoova generated
Unique ID.
Max 12 chars.
|
Payee Bank Account
Number. Max 34 chars.
|
Payee BSB.
Max 7 Chars.
|
Payer submitted Account
Name. Max 32 chars.
|
TransactionReferenceNumber.
Max 21 chars.
|
Payment amount,
2 decimal places
for cents. Max 11 chars.
|
Transaction status,
possible values:
Pending, Confirmed and Rejected.
|
Payer submitted reference.
Max 280 chars.
|
AEDT, Sydney.
Max 27 chars.
|
Source Account Name address and account number
|
The time user has to Confirm/Reject a transaction.
AEDT, Sydney.
Max 27 chars.
|
Reason why transaction was rejected.
Max 500 chars.
|
The time when transaction was Confirmed/Rejected.
AEDT, Sydney.
Max 27 chars.
|
Sending Organisation.
Max 100 chars.
|
Receiving Organisation.
Max 100 chars.
|
Ordering Institution.
Max 100 chars.
|
Originating Address.
Max 100 chars.
|
operationId: ReceivablesRTGSIMTReportDate
parameters:
- name: date
in: path
required: true
description: This becomes the start date of the report if report is being fetched for a date range. Date format should be 'yyyy-MM-dd' format.
schema:
type: string
example: '2020-03-15'
- name: endDate
in: query
required: false
description: Use this to fetch the report for a date range. Date format should be 'yyyy-MM-dd' format
schema:
type: string
example: '2020-04-08'
- name: skip
in: query
required: false
description: Number of records to skip. 1 is the first record.Value should be greater than 0
schema:
type: integer
example: 1
- name: take
in: query
required: false
description: Number of records to take. If endDate is provided maximum take is 10000.
schema:
type: integer
example: 1000
responses:
'200':
description: OK
content:
text/plain:
examples:
response:
value: |
Transaction Id,Account Number,BSB,AccountName,Transaction Reference Number,Amount,Status,Lodgement Reference,Date,Source Account Details,Respond Before Date Time,Reject Reason Description,Processed Date,Sending Organisation,Receiving Organisation,Ordering Institution,Originating Address,ledgerAccountNumber,ledgerUniqueReference
R10000001,317578496,802-985,Monoova,AU1201026014379,122.94,Confirmed,/INS/TESTAU2SXXX,2020-10-26T00:00:00,"0123456789 Building 1, 2 SAMPLE ST SYDNEY 2000 AU",,,2022-01-13T11:00:01,,MONOOVA PAYMENTS P/L,,METWAU4BAXXX,,
R10000002,416467294,802-985,Monoova,AU12010260400584,130000,Confirmed,,2020-10-26T00:00:00,"0123456789 Building 1, 1 SAMPLE ST SYDNEY 2000 AU",,,2022-01-13T11:00:06,,AU,,NATAAU33A03M,,
'400':
description: Bad request
'500':
description: Internal Server Error
# WhiteListing Bank Account Receivables
/receivables/v1/whitelisting/create:
post:
tags:
- Whitelisting for Automatcher (Bank Account Receivables)
summary: Create Whitelist Source Account
description: Use this API to create a new whitelist entry for an automatcher account.
Multiple source bank account numbers or bank account names can be whitelisted against each Automatcher number.
The system will automatically return payments if the payment details do not match one of the entries.
Make sure to set the account status to “Enabled” to accept payments for the set of rules defined,
the status can always be updated if the rule no longer applies using the update endpoint.
operationId: ReceivablesCreateWhitelistSourceAccount
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/receivables.createWhiteListingAccount'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/receivablesCreateWhiteListingAccountResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/receivables/v1/whitelisting/update:
post:
tags:
- Whitelisting for Automatcher (Bank Account Receivables)
summary: Update Whitelist Source Account
description: Use this endpoint to change the status of a whitelisted source account.
operationId: ReceivablesUpdateWhitelistSourceAccount
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/receivables.updateWhiteListingAccount'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/receivablesUpdateWhiteListingAccountResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/receivables/v1/whitelisting/list/{automatcherBankAccountNumber}':
get:
tags:
- Whitelisting for Automatcher (Bank Account Receivables)
summary: List Whitelist Source Accounts
description: This endpoint will list all whitelisted source account details linked to the queried Automatcher account number.
operationId: ReceivablesListWhitelistSourceAccounts
parameters:
- name: automatcherBankAccountNumber
in: path
required: true
description: Valid receivables bank account number belonging to the Sign-in mAccount.
schema:
type: string
example: '311673871'
- name: bsb
in: query
required: false
description: Optional BSB parameter specifying the branch identifier for Australian banks. Accepts either 6 digits or with a hyphen as "XXX-XXX". If not specified, the service will use the MAccount’s configured ‘Default BSB’. If a ‘Default BSB’ has not been configured, then the Monoova ‘Default BSB’ will be used.
schema:
type: string
maxLength: 7
example: '802-985'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/receivablesGetWhiteListingAccountsResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/receivables/v2/rejectedTransactions/{startDate}':
get:
tags:
- Whitelisting for Automatcher (Bank Account Receivables)
summary: Rejected Transactions Report
description:
Returns a report of all rejected transactions for the day with associated details, this includes Direct Entry and NPP Receivables. If requested multiple times on the current date (calendar day, AEDT), the report is cumulative.
| ID |
Batch ID |
Datetime |
BSB |
AccountNumber |
AccountName |
PayId |
PayId Name |
TransactionCode |
TransactionType |
Amount |
LodgementRef |
RemitterName |
Indicator |
WithholdingTaxAmount (if applicable) |
EndToEndId |
NameOfUserSupplyingFile |
NumberOfUserSupplyingFile |
DescriptionOfEntriesOnFile |
Reason |
Status |
SourceBsb |
SourceAccountNumber |
SourceAccountName |
ReconciliationRuleReference |
Monoova generated
Unique ID.
Max 12 chars.
|
Payment Batch ID.
Payments come in batches
throughout the day.
Max 12 chars. Blank if NPP.
|
AEDT, Sydney.
Max 27 chars.
|
Payee BSB.
Max 7 Chars.
|
Payee Bank Account
Number. Max 34 chars.
|
Payer submitted Account
Name. Max 32 chars.
|
Email address for the PayID.
Max 256 chars.
|
Name displayed to the payers
Max 140 chars.
|
Industry standard transaction
code. “50” for credit.
Refer to Direct entry standard
for definitions 51-57.
Max 5 chars.
|
Possible Values:
'DE' or 'NPP'
|
Payment amount,
2 decimal places
for cents. Max 11 chars.
|
Payer submitted reference.
Max 280 chars.
|
Remitting Entity.
Max 140 chars.
|
Blank; OR 'W' dividend paid to a
resident of a country where a double
tax agreement is in force. 'X' dividend
paid to a resident of any other country.
'Y' interest paid to all non-resident.
Max 1 chars.
|
Blank OR Payment amount,
2 decimal places for cents.
Max 9 chars.
|
Osko End to End identifier
submitted by Payer.
|
Preferred name of the
User supplying
the Direct Entry file.
|
This is the User Identification
Number which is assigned by
APCA and User Financial Institutions.
|
Direct Entry file description.
|
Reason for the rejection.
|
Transaction Status.
|
Payer BSB.
Max 7 Chars.
|
Payer Bank Account Number.
Max 34 chars.
|
This field appears for NPP transactions
only and is the payers bank account name.
For DE transactions please refer to the
RemitterName Field. Max 140 Chars.
|
A unique reference used to identify the reconciliation rule.
Unique to your mAccount.
string <= 35 characters ^[A-Za-z0-9-_]{1,35}$
Example. RR22348
|
Note: Source account details do not appear by default, please contact Monoova for further information
Possible transaction codes
| Code |
Transaction Description |
| 13 |
Externally initiated debit items |
| 50 |
Externally initiated credit items with the exception of those bearing Transaction Codes
|
| 51 |
Australian Government Security Interest |
| 52 |
Family Allowance |
| 53 |
Pay |
| 54 |
Pension |
| 55 |
Allotment |
| 56 |
Dividend |
| 57 |
Debenture/Note Interest |
operationId: ReceivablesRejectedTransactionsReport
parameters:
- name: startDate
in: path
required: true
description: date format should be 'yyyy-MM-dd' format.
schema:
type: string
example: '2020-03-15'
- name: endDate
in: query
required: false
description: End date of the range for the report, format 'yyyy-MM-dd'. If not provided, data for the day specified in Start Date will be returned.
schema:
type: string
example: '2020-03-31'
- name: transactionType
in: query
required: false
description: Filter for the transaction type. Possible values are 'DE' or 'NPP'.
schema:
type: string
example: 'DE'
- name: pageNumber
in: query
required: false
description: Page number for pagination. Defaults to 1 if not provided.
schema:
type: integer
example: 1
- name: pageSize
in: query
required: false
description: The number of items to return per page. Defaults to 50 if not provided. Maximum allowed is 200.
schema:
type: integer
minimum: 1
maximum: 200
example: 50
responses:
'200':
description: OK
content:
text/plain:
examples:
response:
value: |
Id, Batch Id, DateTime, BSB, AccountNumber, AccountName, PayId, PayId Name, TransactionCode, TransactionType, Amount, LodgementRef, RemitterName, Indicator, WithholdingTaxAmount, EndToEndId, NameOfUserSupplyingFile, NumberOfUserSupplyingFile, DescriptionOfEntriesOnFile, Reason, Status, SourceBsb, SourceAccountNumber, SourceAccountName,ReconciliationRuleReference
1,448715,2020-09-18T14:28:07,802-985,212409870,test,,,50,NPP,9.9900,test,test,,0,TEST_NPP_RAP_MTP,,,,Non Whitelisted Source Account,Pending Return,802-985,817371467,test,RR22348
'400':
description: Bad request
'500':
description: Internal Server Error
#Recon Rules
/receivables/v1/reconciliationrules/create:
post:
tags:
- Reconciliation Rules
summary: Create Reconciliation Rule
description:
Use this API to create new reconciliation rules. Multiple entries can be created for an ABA or PayId for the same or different amount. The system will automatically return payments if the payment details do not match one of the entries. In case there are duplicate entries, payment will be matched with the oldest active rule.
An optional Expiry Date Time can be specified for each rule. If expiry date is not provided, this will be defaulted as per pre-decided setup.
operationId: ReconciliationRulesCreate
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/receivables.reconRulesCreate'
x-codeSamples:
- lang: 'PayID'
source: |
{
"reconciliationRuleReference": "RR22348",
"expiryDateTime": "2023-08-05T12:34:56",
"payId": "abc@xyz.com.au",
"amount": 0.5
}
- lang: 'Bank Account'
source: |
{
"reconciliationRuleReference": "RR22348",
"expiryDateTime": "2023-08-05T12:34:56",
"bsb": "802-985",
"accountNumber": "819877339",
"amount": 0.5
}
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
'400':
description: Invalid ReconciliationRuleReference
content:
application/json:
example:
{
'durationMs': 7,
'status': 'InvalidReconciliationRuleReference',
'statusDescription': 'Invalid Reconciliation Rule Reference. Please ensure that the value provided is not empty and unique.'
}
'/receivables/v1/reconciliationrules/{ReconciliationRuleReference}':
patch:
tags:
- Reconciliation Rules
summary: Cancel Reconciliation Rule
description:
This API can be used to cancel an active Reconciliation Rule. The system will automatically return payments if the payment details match a cancelled reconciliation rule.
- This API will mark the status of Reconciliation Rules as Cancelled.
- Only Reconciliation Rules in Received status can be Cancelled.
operationId: ReconciliationRulesCancel
parameters:
- name: ReconciliationRuleReference
in: path
required: true
schema:
type: string
description: A unique reference used to identify the reconciliation rule. Unique to your mAccount
maxLength: 35
example: RR22348
pattern: '^[A-Za-z0-9-_]{1,35}$'
nullable: false
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
'400':
description: Invalid ReconciliationRule Status
content:
application/json:
example:
{
'durationMs': 7,
'status': 'InvalidReconciliationRuleStatus',
'statusDescription': 'The specified Reconciliation Rule cannot be cancelled due to its current status. Only Reconciliation Rules that are in Received status can be cancelled.'
}
/receivables/v1/reconciliationrules/list/{dateTime}:
get:
tags:
- Reconciliation Rules
summary: Get the list of Reconciliation Rules by Date/Time
description: This API can be used to search for a list of reconciliation rules. Customer will be allowed to search for rules for a date range of upto a month. If End Date is not provided, the system will return records for the day specified in Start Date.
operationId: ReconciliationRulesSearchByDate
parameters:
- name: dateTime
schema:
type: string
format: date
required: true
description: Example 2020-03-15
date format should be 'yyyy-MM-dd' format.
in: path
- name: endDate
schema:
type: string
format: date
in: query
required: false
description:
Optional - If not provided we will provide data for the day specified in Start Date.
Maximum range allowed is 1 month
- name: payId
in: query
description: string <= 256 characters
required: false
schema:
type: string
maxLength: 256
- name: ABA
in: query
description: Number combination of BSB + Account number with any special characters 802985123456789
required: false
schema:
type: string
- name: status
in: query
required: false
schema:
type: string
enum: [Received, InProgress, Expired, Processed, Cancelled]
description: possible Values -
- Received - Initial Status
- InProgress - Matching Payment is being processed
- Expired - Rule expired
- Processed - Matching Payment processed
- Cancelled - User cancelled the rule
- name: pageNumber
in: query
description: Optional - If not provided, it is defaulted to 1
required: false
schema:
type: integer
default: 1
- name: pageSize
in: query
description: Optional - If not provided, page size will be defaulted to 50 (Configuration). Maximum allowed is 200 (Configuration).
required: false
schema:
type: integer
default: 50
maximum: 200
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
statusDescription:
description: This is a plain English description of the status.
type: string
reconciliationRules:
type: object
properties:
reconciliationRuleReference:
type: string
description: A unique reference used to identify the reconciliation rule. Unique to your mAccount
maxLength: 35
pattern: '^[A-Za-z0-9-_]{1,35}$'
expiryDateTime:
type: string
description: This will be specified in Sydney local time in ISO 8601 Date Time format. This should be future date. If ExpiryDateTime is not provided it will be defaulted as pre-decided setup.
bsb:
type: string
description: Conditional, Either BSB+Account Number Or PayId should be provided
accountNumber:
type: string
pattern: '^[0-9]+$'
minLength: 9
description: Conditional, Either BSB+Account Number Or PayId should be provided
payId:
type: string
maxLength: 256
description: Conditional, Either BSB+Account Number Or PayId should be provided
amount:
type: number
minimum: 0.01
nullable: false
createdDateTime:
type: string
description: This will be specified in Sydney local time in ISO 8601 Date Time format.
updatedDateTime:
type: string
description: This will be specified in Sydney local time in ISO 8601 Date Time format.
processedDateTime:
type: string
description: This will be specified in Sydney local time in ISO 8601 Date Time format.
transactionId:
type: string
description: Should be prefixed with D00 for DE and N00 for NPP
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example:
{
'durationMs': 14,
'status': 'Ok',
'statusDescription': 'Operation completed successfully',
'reconciliationRules':
[
{
'amount': 0.5000,
'createdDateTime': '2023-08-01T08:26:34',
'expiryDateTime': '2023-08-05T12:34:56',
'payId': 'abc@xyz.com.au',
'reconciliationRuleReference': 'RR22148',
'status': 'Received'
},
{
'amount': 0.4900,
'createdDateTime': '2023-08-01T08:18:07',
'expiryDateTime': '2023-08-05T12:34:56',
'payId': 'abc@xyz.com.au',
'reconciliationRuleReference': 'RR22348',
'status': 'Cancelled'
},
{
'amount': 1.0000,
'createdDateTime': '2023-08-01T08:12:06',
'expiryDateTime': '2023-08-05T12:34:56',
'payId': 'abc@xyz.com.au',
'reconciliationRuleReference': 'RR12348',
'status': 'Received'
},
{
'amount': 0.5000,
'createdDateTime': '2023-08-01T08:12:02',
'expiryDateTime': '2023-08-05T12:34:56',
'payId': 'abc@xyz.com.au',
'reconciliationRuleReference': 'RR12347',
'status': 'Received'
},
{
'amount': 0.1000,
'createdDateTime': '2023-08-01T08:12:00',
'expiryDateTime': '2023-08-05T12:34:56',
'payId': 'abc@xyz.com.au',
'reconciliationRuleReference': 'RR12346',
'status': 'Received'
}
]
}
/receivables/v1/reconciliationrules/{id}:
get:
tags:
- Reconciliation Rules
summary: Get Reconciliation Rule By ID
description: This API is used to retrieve a single Reconciliation Rule based on its ID. The ReconciliationRuleReference should belong to the signin merchant.
operationId: ReconciliationRulesSearchByID
parameters:
- name: id
in: path
description: ReconciliationRuleReference. The unique identifier for the Reconciliation Rule.
required: true
schema:
type: string
example: 'RR22148'
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
statusDescription:
description: This is a plain English description of the status.
type: string
reconciliationRule:
type: object
properties:
reconciliationRuleReference:
type: string
description: A unique reference used to identify the reconciliation rule. Unique to your mAccount
maxLength: 35
pattern: '^[A-Za-z0-9-_]{1,35}$'
expiryDateTime:
type: string
description: This will be specified in Sydney local time in ISO 8601 Date Time format. This should be future date. If ExpiryDateTime is not provided it will be defaulted as per pre-decided setup.
bsb:
type: string
description: Conditional, Either BSB+Account Number Or PayId should be provided
accountNumber:
type: string
minLength: 9
description: Conditional, Either BSB+Account Number Or PayId should be provided
payId:
type: string
maxLength: 256
description: Conditional, Either BSB+Account Number Or PayId should be provided
amount:
type: number
format: double
minimum: 0.01
nullable: false
createdDateTime:
type: string
description: This will be specified in Sydney local time in ISO 8601 Date Time format.
updatedDateTime:
type: string
description: This will be specified in Sydney local time in ISO 8601 Date Time format.
processedDateTime:
type: string
description: This will be specified in Sydney local time in ISO 8601 Date Time format.
transactionId:
type: string
description: Should be prefixed with D00 for DE and N00 for NPP
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example:
{
'durationMs': 14,
'status': 'Ok',
'statusDescription': 'Operation completed successfully',
'reconciliationRule':
{
'amount': 1268.23,
'createdDateTime': '2023-08-19T08:16:35',
'expiryDateTime': '2023-08-30T05:14:46',
'payId': 'abc@xyz.com.au',
'reconciliationRuleReference': '012F67AC-59EF-4F9A-8960-77624344EF2',
'status': 'Received'
}
}
'400':
description: Invalid ReconciliationRuleReference
content:
application/json:
example:
{
'durationMs': 7,
'status': 'InvalidReconciliationRuleReference',
'statusDescription': 'Invalid Reconciliation Rule Reference. Please ensure that the value provided is not empty and unique.'
}
## PayId
/receivables/v1/payid/registerpayid:
post:
tags:
- PayID
summary: Register PayID
description: This endpoint allows the registration of a PayID against an account number.
We recommend leaving 10 seconds before registering a PayID to ensure an account number has been enabled for NPP.
The domains that can be used to register a PayID are restricted.
Custom domains are supported but must first be approved, please contact us for configuration.
The default domain is monoova.me, if the PayID field is left blank we will generate a check-digited PayID on the Monoova domain.
operationId: ReceivablesRegisterPayID
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/payId.registerpayId'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/receivablesRegisterPayIdResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/receivables/v1/payid/updatePayIdStatus:
post:
tags:
- PayID
summary: Update a PayID's status
description: A PayID in the port status can be moved to another automatcher.
To do this, change the status to port then submit a new Register PayID request for the preferred automatcher.
The PayID will be relocated and automatically enabled.
operationId: ReceivablesUpdatePayIdStatus
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/payId.updatePayIdStatus'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/receivablesUpdatePayIdStatusResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/receivables/v1/payid/updatePayIdName:
post:
tags:
- PayID
summary: Update a PayID's name
description: Use this endpoint to change the name of a PayID.
operationId: ReceivablesUpdatePayIdName
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/payId.updatePayIdName'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/receivablesUpdatePayIdNameResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/receivables/v1/payid/payIdEnquiry:
post:
tags:
- PayID
summary: PayID Enquiry
description: Returns the details of a of a PayID. You must own the PayID to view its information.
operationId: ReceivablesPayIdEnquiry
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/payId.enquiry'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/receivablesEnquiryPayIdResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
# Subscriptions
/subscriptions/v1/create:
post:
tags:
- Subscriptions
summary: Subscribe to new Webhook
description: Adds a new URL to which callbacks will be sent.
operationId: SubscriptionsCreate
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/subscriptions.create'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/subscriptionsCreateResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/subscriptions/v1/update:
post:
tags:
- Subscriptions
summary: Update an existing Webhook
description: Updates an existing URL or toggles its status.
operationId: SubscriptionsUpdate
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/subscriptions.update'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/subscriptionsUpdateResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
/subscriptions/v1/list:
get:
tags:
- Subscriptions
summary: List all existing webhooks
description: Returns a list of all webhooks registered.
operationId: SubscriptionsList
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/subscriptionsListResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/subscriptions/v1/delete/{id}':
delete:
tags:
- Subscriptions
summary: Unsubscribe from an existing webhook
description: Permanently deletes a webhook.
operationId: SubscriptionsDelete
parameters:
- name: id
in: path
required: true
description: 'This is the Id of the Subscription you want to delete'
schema:
example: '1'
type: integer
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/subscriptionsDeleteResponse_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
'/subscriptions/v2/resend/{WebhookId}':
post:
tags:
- Subscriptions
summary: Request resending of a notification using webhookId
description: Resends the associated webhook for the provided webhook ID
operationId: SubscriptionsResendV2
parameters:
- name: WebhookId
in: path
required: true
description: 'Unique Id to identify this webhook notification.'
schema:
type: integer
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/subscriptionsResendResponse_V2'
'400':
description: Bad request
'500':
description: Internal Server Error
'/subscriptions/v1/report/{date}':
get:
tags:
- Subscriptions
summary: Webhook notifications report
description: Provides a historical array of previously sent webhooks
operationId: SubscriptionsReport
parameters:
- name: date
in: path
required: true
description: date format should be 'yyyy-MM-dd' format.
schema:
type: string
example: '2020-03-15'
- name: skip
in: query
required: false
description: Number of records to skip. 0 is the first record.
schema:
type: integer
example: 0
- name: take
in: query
required: false
description: Number of records to take. If endDate is provided maximum take is 10000.
schema:
type: integer
example: 1000
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/subscriptionsReport_V1'
'400':
description: Bad request
'500':
description: Internal Server Error
#x-webhooks:
'/RECEIVEPAYMENTWEBHOOK_TARGET_URL':
post:
tags:
- Webhooks
summary: Receive Payment Webhook
description:
When an NPP payment is received, Monoova will send a callback with the below format.
To subscribe to a webhook use the Subscriptions APIs. Event name: NPPReceivePayment
operationId: ReceivablesReceivePaymentWebhook
security: []
parameters:
- name: Authorization
in: header
required: false
schema:
type: string
example: 'Bearer '
- name: Verification-Signature
in: header
required: false
schema:
type: string
example: 'e+AFAj2W69rAwbsGn+rSSnFm2ISEblo0MXnx9Qtoh2k5mst1cEEpcrVSzGL
jzOPlEL2Ea/iYLbFGzDdxVRTcNLINOhsXM/smimNjBt8sq30FbvSNMjlfDn
rZ6FOIkl3E3cu9B+M4OVL8HafPohb67IRNDNyCnCvBM10qHrioiak='
description: This is a base64 encoded cryptographic signature that should be used
to verify both the integrity of the message as well as the source (Monoova).
The signature's hashing method is SHA256 and the public key can be retrieved from
/public/v1/certificate/public-key .
- name: Webhookid
in: header
required: false
schema:
type: integer
description: 'Unique Id to identify this webhook notification.'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/event.receivePaymentWebhook'
responses:
'200':
description: Is the expected response upon successful receipt. If any other status code response is received, we will retry one more time only, after a 30 second pause.
'/DIRECTDEBITCLEARANCEWEBHOOK_TARGET_URL':
post:
tags:
- Webhooks
summary: Direct Debit Clearance Webhook
description: |
Receive a daily notification with a list of all direct debit transactions cleared on that day. To subscribe to this webhook, use the Subscriptions APIs.
Event name: DirectDebitClearance.
operationId: DirectDebitClearanceWebhook
security: []
parameters:
- name: Authorization
in: header
required: false
schema:
type: string
example: 'Bearer '
- name: Verification-Signature
in: header
required: false
schema:
type: string
example: 'e+AFAj2W69rAwbsGn+rSSnFm2ISEblo0MXnx9Qtoh2k5mst1cEEpcrVSzGLjzOPlEL2Ea/iYLbFGzDdxVRTcNLINOhsXM/smimNjBt8sq30FbvSNMjlfDnrzZ6FOIkl3E3cu9B+M4OVL8HafPohb67IRNDNyCnCvBM10qHrioiak='
description: This is a base64 encoded cryptographic signature that should be used
to verify both the integrity of the message and its source (Monoova).
The signature's hashing method is SHA256, and the public key can be retrieved from
/public/v1/certificate/public-key.
- name: Webhookid
in: header
required: false
schema:
type: integer
description: 'Unique Id to identify this webhook notification.'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/event.directDebitClearanceWebhook'
responses:
'200':
description: Is the expected response upon successful receipt. If any other status code response is received, we will retry one more time only, after a 30 second pause.
'/PAYTORECEIVEPAYMENTWEBHOOK_TARGET_URL':
post:
tags:
- Webhooks
summary: Pay To Receive Payment Webhook
description:
When an NPP payment is received, Monoova will send a callback with the below format.
To subscribe to a webhook use the Subscriptions APIs. Event name: PayToReceivePayment
operationId: PayToReceivePaymentWebhook
security: []
parameters:
- name: Authorization
in: header
required: false
schema:
type: string
example: 'Bearer '
- name: Verification-Signature
in: header
required: false
schema:
type: string
example: 'e+AFAj2W69rAwbsGn+rSSnFm2ISEblo0MXnx9Qtoh2k5mst1cEEpcrVSzGL
jzOPlEL2Ea/iYLbFGzDdxVRTcNLINOhsXM/smimNjBt8sq30FbvSNMjlfDn
rZ6FOIkl3E3cu9B+M4OVL8HafPohb67IRNDNyCnCvBM10qHrioiak='
description: This is a base64 encoded cryptographic signature that should be used
to verify both the integrity of the message as well as the source (Monoova).
The signature's hashing method is SHA256 and the public key can be retrieved from
/public/v1/certificate/public-key .
- name: Webhookid
in: header
required: false
schema:
type: integer
description: 'Unique Id to identify this webhook notification.'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/event.payToreceivePaymentWebhook'
responses:
'200':
description: Is the expected response upon successful receipt. If any other status code response is received, we will retry one more time only, after a 30 second pause.
'/INBOUNDDIRECTCREDITWEBHOOK_TARGET_URL':
post:
tags:
- Webhooks
summary: Receive Inbound Direct Credits Webhook
description:
Subscribing to the direct credit event webhook will allow us to notify you when an inbound direct credit is received on one of your accounts.
As direct credits arrive in batches, you will receive the data in an JSON array with multiple transactions multiple times per day. Event name: InboundDirectCredit
operationId: InboundDirectCreditWebhook
security: []
parameters:
- name: Authorization
in: header
required: false
schema:
type: string
example: 'Bearer '
- name: Verification-Signature
in: header
required: false
schema:
type: string
example: 'e+AFAj2W69rAwbsGn+rSSnFm2ISEblo0MXnx9Qtoh2k5mst1cEEpcrVSzGL
jzOPlEL2Ea/iYLbFGzDdxVRTcNLINOhsXM/smimNjBt8sq30FbvSNMjlfDn
rZ6FOIkl3E3cu9B+M4OVL8HafPohb67IRNDNyCnCvBM10qHrioiak='
description: This is a base64 encoded cryptographic signature that should be used
to verify both the integrity of the message as well as the source (Monoova).
The signature's hashing method is SHA256 and the public key can be retrieved from
/public/v1/certificate/public-key .
- name: Webhookid
in: header
required: false
schema:
type: integer
description: 'Unique Id to identify this webhook notification.'
requestBody:
content:
application/json:
schema:
allOf:
- description: webhook
title: Receive Payment Web hook
- $ref: '#/components/schemas/event.inboundDirectCreditWebhook'
responses:
'200':
description: Is the expected response upon successful receipt. If any other status code response is received, we will retry one more time only, after a 30 second pause.
'/INBOUNDDIRECTDEBITWEBHOOK_TARGET_URL':
post:
tags:
- Webhooks
summary: Receive Inbound Direct Debits Webhook
description:
Subscribing to the direct debit event webhook will allow us to notify you when an inbound direct debit is received on one of your accounts.
As direct debits arrive in batches, you will receive the data in an JSON array with multiple transactions multiple times per day. Event name: InboundDirectDebit
Note: Source account details do not appear by default, please contact Monoova for further information
operationId: InboundDirectDebitWebhook
security: []
parameters:
- name: Authorization
in: header
required: false
schema:
type: string
example: 'Bearer '
- name: Verification-Signature
in: header
required: false
schema:
type: string
example: 'e+AFAj2W69rAwbsGn+rSSnFm2ISEblo0MXnx9Qtoh2k5mst1cEEpcrVSzGL
jzOPlEL2Ea/iYLbFGzDdxVRTcNLINOhsXM/smimNjBt8sq30FbvSNMjlfDn
rZ6FOIkl3E3cu9B+M4OVL8HafPohb67IRNDNyCnCvBM10qHrioiak='
description: This is a base64 encoded cryptographic signature that should be used
to verify both the integrity of the message as well as the source (Monoova).
The signature's hashing method is SHA256 and the public key can be retrieved from
/public/v1/certificate/public-key .
- name: Webhookid
in: header
required: false
schema:
type: integer
description: 'Unique Id to identify this webhook notification.'
requestBody:
content:
application/json:
schema:
allOf:
- description: webhook
title: Receive Payment Web hook
- $ref: '#/components/schemas/event.inboundDirectDebitWebhook'
responses:
'200':
description: Is the expected response upon successful receipt. If any other status code response is received, we will retry one more time only, after a 30 second pause.
'/DIRECTENTRYDISHONOURSWEBHOOK_TARGET_URL':
post:
tags:
- Webhooks
summary: Receive Direct Entry Dishonours Webhook
description:
Subscribing to the direct entry dishonours event webhook will allow us to notify you when an dishonour transaction is made.
Event name: DirectEntryDishonour
operationId: DirectEntryDishonour
security: []
parameters:
- name: Authorization
in: header
required: false
schema:
type: string
example: 'Bearer '
- name: Verification-Signature
in: header
required: false
schema:
type: string
example: 'e+AFAj2W69rAwbsGn+rSSnFm2ISEblo0MXnx9Qtoh2k5mst1cEEpcrVSzGL
jzOPlEL2Ea/iYLbFGzDdxVRTcNLINOhsXM/smimNjBt8sq30FbvSNMjlfDn
rZ6FOIkl3E3cu9B+M4OVL8HafPohb67IRNDNyCnCvBM10qHrioiak='
description: This is a base64 encoded cryptographic signature that should be used
to verify both the integrity of the message as well as the source (Monoova).
The signature's hashing method is SHA256 and the public key can be retrieved from
/public/v1/certificate/public-key .
- name: Webhookid
in: header
required: false
schema:
type: integer
description: 'Unique Id to identify this webhook notification.'
requestBody:
content:
application/json:
schema:
allOf:
- description: webhook
title: Receive Direct Entry Dishonours Web hook
- $ref: '#/components/schemas/event.directEntryDishonoursWebhook'
responses:
'200':
description: Is the expected response upon successful receipt. If any other status code response is received, we will retry one more time only, after a 30 second pause.
'/PENDINGRTGSIMTWEBHOOK_TARGET_URL':
post:
tags:
- Webhooks
summary: Receive Pending Rtgs/Imt Webhook
description:
Subscribing to the Pending RTGS/IMT event webhook will allow us to notify you when a RTGS/IMT transaction is received on one of your accounts.
As RTGS/IMT transaction arrive in batches, you will receive the data in an JSON array with multiple transactions multiple times per day.
Event name: PendingInboundRtgsImt
operationId: PendingInboundRtgsImt
security: []
parameters:
- name: Authorization
in: header
required: false
schema:
type: string
example: 'Bearer '
- name: Verification-Signature
in: header
required: false
schema:
type: string
example: 'e+AFAj2W69rAwbsGn+rSSnFm2ISEblo0MXnx9Qtoh2k5mst1cEEpcrVSzGL
jzOPlEL2Ea/iYLbFGzDdxVRTcNLINOhsXM/smimNjBt8sq30FbvSNMjlfDn
rZ6FOIkl3E3cu9B+M4OVL8HafPohb67IRNDNyCnCvBM10qHrioiak='
description: This is a base64 encoded cryptographic signature that should be used
to verify both the integrity of the message as well as the source (Monoova).
The signature's hashing method is SHA256 and the public key can be retrieved from
/public/v1/certificate/public-key .
- name: Webhookid
in: header
required: false
schema:
type: integer
description: 'Unique Id to identify this webhook notification.'
requestBody:
content:
application/json:
schema:
allOf:
- description: webhook
title: Inbound RTGS/Imt Web hook
- $ref: '#/components/schemas/event.pendingrtgsImtWebhook'
responses:
'200':
description: Is the expected response upon successful receipt. If any other status code response is received, we will retry one more time only, after a 30 second pause.
'/RTGSIMTWEBHOOKSTATUSWEBHOOK_TARGET_URL':
post:
tags:
- Webhooks
summary: Receive Rtgs/Imt status Webhook
description:
Subscribing to the RTGS/IMT status event webhook will allow us to notify you when status of an RTGS/IMT transaction changes.
Event name: InboundRtgsImtStatus
operationId: InboundRtgsImtStatus
security: []
parameters:
- name: Authorization
in: header
required: false
schema:
type: string
example: 'Bearer '
- name: Verification-Signature
in: header
required: false
schema:
type: string
example: 'e+AFAj2W69rAwbsGn+rSSnFm2ISEblo0MXnx9Qtoh2k5mst1cEEpcrVSzGL
jzOPlEL2Ea/iYLbFGzDdxVRTcNLINOhsXM/smimNjBt8sq30FbvSNMjlfDn
rZ6FOIkl3E3cu9B+M4OVL8HafPohb67IRNDNyCnCvBM10qHrioiak='
description: This is a base64 encoded cryptographic signature that should be used
to verify both the integrity of the message as well as the source (Monoova).
The signature's hashing method is SHA256 and the public key can be retrieved from
/public/v1/certificate/public-key .
- name: Webhookid
in: header
required: false
schema:
type: integer
description: 'Unique Id to identify this webhook notification.'
requestBody:
content:
application/json:
schema:
allOf:
- description: webhook
title: Inbound RTGS/Imt Web hook
- $ref: '#/components/schemas/event.InboundRtgsImtStatus'
responses:
'200':
description: Is the expected response upon successful receipt. If any other status code response is received, we will retry one more time only, after a 30 second pause.
'/RECEIVENPPPAYMENTRETURNWEBHOOK_TARGET_URL':
post:
tags:
- Webhooks
summary: Receive Npp Payment Return Webhook
description:
Subscribing to the npp return event webhook will allow us to notify you when an npp payment gets returned is made.
Event name: NppReturn
operationId: NppReturn
security: []
parameters:
- name: Authorization
in: header
required: false
schema:
type: string
example: 'Bearer '
- name: Verification-Signature
in: header
required: false
schema:
type: string
example: 'e+AFAj2W69rAwbsGn+rSSnFm2ISEblo0MXnx9Qtoh2k5mst1cEEpcrVSzGL
jzOPlEL2Ea/iYLbFGzDdxVRTcNLINOhsXM/smimNjBt8sq30FbvSNMjlfDn
rZ6FOIkl3E3cu9B+M4OVL8HafPohb67IRNDNyCnCvBM10qHrioiak='
description: This is a base64 encoded cryptographic signature that should be used
to verify both the integrity of the message as well as the source (Monoova).
The signature's hashing method is SHA256 and the public key can be retrieved from
/public/v1/certificate/public-key .
- name: Webhookid
in: header
required: false
schema:
type: integer
description: 'Unique Id to identify this webhook notification.'
requestBody:
content:
application/json:
schema:
allOf:
- description: webhook
title: Receive Npp Payment Return Web hook
- $ref: '#/components/schemas/event.NppReturnWebhook'
responses:
'200':
description: Is the expected response upon successful receipt. If any other status code response is received, we will retry one more time only, after a 30 second pause.
'/NPPPAYMENTSTATUSWEBHOOK_TARGET_URL':
post:
tags:
- Webhooks
summary: Receive Npp Payment Status Webhook
description:
Subscribing to the npp payment status event webhook will allow us to notify you when the status of a pending NPP Payment gets updated.
Event name: NppPaymentStatus
Note: Receive an NPP Payment Status Webhook notification when the status of an NPP payment changes so you don’t need to poll for updates. The "Pending" status is not reported by this webhook.
operationId: NppPaymentStatus
security: []
parameters:
- name: Authorization
in: header
required: false
schema:
type: string
example: 'Bearer '
- name: Verification-Signature
in: header
required: false
schema:
type: string
example: 'e+AFAj2W69rAwbsGn+rSSnFm2ISEblo0MXnx9Qtoh2k5mst1cEEpcrVSzGL
jzOPlEL2Ea/iYLbFGzDdxVRTcNLINOhsXM/smimNjBt8sq30FbvSNMjlfDn
rZ6FOIkl3E3cu9B+M4OVL8HafPohb67IRNDNyCnCvBM10qHrioiak='
description: This is a base64 encoded cryptographic signature that should be used
to verify both the integrity of the message as well as the source (Monoova).
The signature's hashing method is SHA256 and the public key can be retrieved from
/public/v1/certificate/public-key .
- name: Webhookid
in: header
required: false
schema:
type: integer
description: 'Unique Id to identify this webhook notification.'
requestBody:
content:
application/json:
schema:
allOf:
- description: webhook
title: Receive Npp Payment Status Webhook
- $ref: '#/components/schemas/event.NppPaymentStatusWebhook'
responses:
'200':
description: Is the expected response upon successful receipt. If any other status code response is received, we will retry one more time only, after a 30 second pause.
'/INBOUNDDIRECTCREDITREJECTIONSWEBHOOK_TARGET_URL':
post:
tags:
- Webhooks
summary: Inbound Direct Credit Rejections Webhook
description:
Subscribing to the inbound direct credit rejection event webhook will allow us to notify you when an inbound direct credit intended for an ABA/PayId belonging to you is rejected because they didn't match any active reconciliation rule or the payer account was not included in your whitelist. As direct credits arrive in batches, you will receive the data in an JSON array with multiple transactions multiple times during the day. To subscribe to a webhook use the Subscriptions APIs. Event name: InboundDirectCreditRejections
operationId: InboundDirectCreditRejections
security: []
parameters:
- name: Authorization
in: header
required: false
schema:
type: string
example: 'Bearer '
- name: Verification-Signature
in: header
required: false
schema:
type: string
example: 'e+AFAj2W69rAwbsGn+rSSnFm2ISEblo0MXnx9Qtoh2k5mst1cEEpcrVSzGL
jzOPlEL2Ea/iYLbFGzDdxVRTcNLINOhsXM/smimNjBt8sq30FbvSNMjlfDn
rZ6FOIkl3E3cu9B+M4OVL8HafPohb67IRNDNyCnCvBM10qHrioiak='
description: This is a base64 encoded cryptographic signature that should be used
to verify both the integrity of the message as well as the source (Monoova).
The signature's hashing method is SHA256 and the public key can be retrieved from
/public/v1/certificate/public-key .
- name: Webhookid
in: header
required: false
schema:
type: integer
description: 'Unique Id to identify this webhook notification.'
requestBody:
description: webhook
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/event.InboundDirectCreditRejectionsWebhook'
responses:
'200':
description: Is the expected response upon successful receipt. If any other status code response is received, we will retry one more time only, after a 30 second pause.
'/NPPCREDITCREDITREJECTIONSWEBHOOK_TARGET_URL':
post:
tags:
- Webhooks
summary: NPP Credit Rejections Webhook
description:
When an NPP payment intended for an ABA/PayId belonging to you is rejected because they didnt match any active reconciliation rule, Monoova will send a callback with the below format.
To subscribe to a webhook use the Subscriptions APIs. Event name: NPPCreditRejections
operationId: NPPCreditRejections
security: []
parameters:
- name: Authorization
in: header
required: false
schema:
type: string
example: 'Bearer '
- name: Verification-Signature
in: header
required: false
schema:
type: string
example: 'e+AFAj2W69rAwbsGn+rSSnFm2ISEblo0MXnx9Qtoh2k5mst1cEEpcrVSzGL
jzOPlEL2Ea/iYLbFGzDdxVRTcNLINOhsXM/smimNjBt8sq30FbvSNMjlfDn
rZ6FOIkl3E3cu9B+M4OVL8HafPohb67IRNDNyCnCvBM10qHrioiak='
description: This is a base64 encoded cryptographic signature that should be used
to verify both the integrity of the message as well as the source (Monoova).
The signature's hashing method is SHA256 and the public key can be retrieved from
/public/v1/certificate/public-key .
- name: Webhookid
in: header
required: false
schema:
type: integer
description: 'Unique Id to identify this webhook notification.'
requestBody:
content:
application/json:
schema:
allOf:
- description: webhook
title: Receive Npp Payment Status Webhook
- $ref: '#/components/schemas/event.NppCreditRejectionsWebhook'
responses:
'200':
description: Is the expected response upon successful receipt. If any other status code response is received, we will retry one more time only, after a 30 second pause.
#####################
components:
securitySchemes:
BasicAuth:
type: http
scheme: basic
schemas:
bpay.receipts:
type: object
oneOf:
- required: [date, billerCode, referenceNumber]
- required: [uniqueReferenceNumber]
properties:
uniqueReferenceNumber:
type: string
example: '77 106 249 852'
description: This is a unique reference generated by the calling service. This is a nonce. Its use is to determine if a request has already been received by the Engine. We strongly recommend sending a uniqueReference in your execution call to avoid duplicate transactions.
maxLength: 200
date:
type: string
example: '2020-11-01'
description: The date for which Monoova received the BPAY Receivable transactions. "yyyy-MM-dd" format.
billerCode:
description: This is the BPAY biller code that was requested. billerCode must be numeric.
type: string
example: '857763'
referenceNumber:
type: integer
example: '6279059700010918'
description: Reference Number as shown on the Bill. Must be a valid BPAY Customer Reference Number on token creation.
financial.transaction:
type: object
required:
- paymentSource
properties:
uniqueReference:
type: string
description: |
This is a unique reference generated by the calling service.
This is a nonce. Its use is to determine if a request has already been received by the Engine.
We strongly recommend sending a uniqueReference in your execution call to avoid duplicate transactions.
example: 'f484ec18-6e1f-481b-a4bf-bea515d8lk34'
maxLength: 200
printUniqueReferenceOnStatement:
type: boolean
default: false
description: If true, the uniqueReference will be printed on the statement. Default is false.
totalAmount:
type: number
format: double
example: 10.0
minimum: 0.01
description: This is the total amount of the transaction. It must match the sum of all
disbursement amounts specified in the disbursements array if both
are present.
paymentSource:
type: string
description: |
This is the type of transaction.
The correct type MUST be used as it instructs the Engine to move funds according to established rules.
Valid values are mAccount, mWallet, directDebit, token
enum:
- mAccount
- mWallet
- directDebit
- bulkDirectDebit
- token
discriminator:
propertyName: paymentSource
mapping:
mAccount: '#/components/schemas/paymentSource.mAccount'
mWallet: '#/components/schemas/paymentSource.mWallet'
directDebit: '#/components/schemas/paymentSource.directDebit'
bulkDirectDebit: '#/components/schemas/paymentSource.bulkDirectDebit'
token: '#/components/schemas/paymentSource.token'
mAccount.create:
type: object
required:
- name
- abn
- contactName
- contactNumber
- email
- addressLine2
- suburb
- state
- postCode
- bsb
- bankAccountNumber
- bankAccountTitle
properties:
accountNumber:
type: string
uniqueItems: true
example: ''
description: This is filled when updating the account details.
allowDuplicates:
type: boolean
uniqueItems: true
example: false
description: If true, allow the creation of a new mAccount even though an existing mAccount with the same ABN exists.
name:
type: string
uniqueItems: false
example: 'Monoova Ltd'
description: Company name of the mAccount.
maximum: 50
pattern: >
“ !\"#$%&'()*,-./:;=?@[a-zA-B0-9]{|}”
abn:
type: string
uniqueItems: false
example: '77 106 249 852'
description: Company ABN of the mAccount. All non numbers are stripped. See allowDuplicates.
maximum: 15
contactName:
type: string
uniqueItems: false
example: 'mPaysales'
description: Contact name. Spaces are stripped.
maximum: 30
contactNumber:
type: number
uniqueItems: false
example: '02 9555 5555'
description: Contact number. All non numbers are striped.
maximum: 15
email:
type: string
example: 'mPayments@Monoova.com.au'
description: Contact email. Converted to lowercase.
addressLine1:
type: string
example: 'Level 6'
description: An optional postal address line such as a Building, section or unit.
maximum: 40
addressLine2:
type: string
example: '97 Pacific Highway'
description: An address line is the main postal address of the Company.
maximum: 40
suburb:
type: string
example: 'North Sydney'
description: Postal address suburb.
maximum: 30
state:
type: string
example: 'NSW'
description: Postal address state.
postCode:
type: string
example: '2060'
description: Postal address post code.
bsb:
type: string
example: '012-366'
description: BSB number of associated bank account. BSB format is ‘000-000’.
bankAccountNumber:
type: string
example: '123456789'
description: Bank account number of associated bank account.
bankAccountTitle:
type: string
example: 'Monoova Bank Account'
description: Bank account title or name of associated bank account.
financials:
type: boolean
example: null
description: See mAccountFinancials class
This property is ignored when calling mAccount/v1/create and mAccount/v1/update.
This property only contains valid values when calling mAccount/v1/get
options:
type: array
items:
anyOf:
- $ref: '#/components/schemas/mAccount.create.options'
- $ref: '#/components/schemas/mAccount.create.options1'
- $ref: '#/components/schemas/mAccount.create.options2'
- $ref: '#/components/schemas/mAccount.create.options3'
- $ref: '#/components/schemas/mAccount.create.options4'
- $ref: '#/components/schemas/mAccount.create.options5'
- $ref: '#/components/schemas/mAccount.create.options6'
mAccount.create.options:
type: 'object'
title: MinimumSettlementAmount
properties:
key:
type: string
example: MinimumSettlementAmount
enum:
- 'MinimumSettlementAmount'
value:
type: number
format: decimal
example: 0.02
minimum: 0.02
maximum: 100
mAccount.create.options1:
type: 'object'
title: DebitTplusXDays
properties:
key:
type: string
example: DebitTplusXDays
enum:
- 'DebitTplusXDays'
value:
type: integer
example: 0
default: 0
mAccount.create.options2:
type: object
title: CreditTplusXDays
properties:
key:
type: string
example: CreditTplusXDays
enum:
- CreditTplusXDays
value:
type: integer
example: 4
default: 0
mAccount.create.options3:
type: object
title: SettlementFrequency
properties:
key:
type: string
example: SettlementFrequency
enum:
- SettlementFrequency
value:
type: string
example: Daily
default: Daily
enum:
- None
- Daily
- BeginningOfMonth
- EndOfMonth
- MidMonth
- OnDemand
- OnDemandWithCatch
- OncePerDay
- Ignore
description: >
None (No Settlement)
Daily (Every Business Day)
BeginningOfMonth (First Business Day of Month)
EndOfMonth (Last Business Day of Month)
MidMonth (15th of month)
OnDemand (Only when user initiated)
OnDemandWithCatch (User initiated and EOD)
OncePerDay (Will not run at EOD if a manual settlement prior to for same day)
Ignore (Ignore during import)
mAccount.create.options4:
type: object
title: SendSettlementStatement
properties:
key:
type: string
example: SendSettlementStatement
enum:
- SendSettlementStatement
value:
type: boolean
example: true
default: true
mAccount.create.options5:
type: object
title: SendDailyStatement
properties:
key:
type: string
example: SendDailyStatement
enum:
- SendDailyStatement
value:
type: boolean
example: true
default: true
mAccount.create.options6:
type: object
title: SendMonthlyStatement
properties:
key:
type: string
example: SendMonthlyStatement
enum:
- SendMonthlyStatement
value:
type: boolean
example: true
default: true
mAccount.sendStatement:
type: object
required:
- accountNumber
- frequency
properties:
accountNumber:
type: string
description: The 16-Digit account number that uniquely identifies the mAccount.
example: '6279059700023123'
frequency:
type: string
uniqueItems: true
example: 'Custom'
description: An enumeration of fixed selection types. All, Today, ThisMonth, LastMonth, ThisFinancialYear, LastFinancialYear, Custom
startDate:
type: string
format: date-time
uniqueItems: false
example: '2018-07-11T00:00:00'
description: Start date of statement when the frequency is set to custom. In ISO 8601 date-time format. Note that Timezone is suppressed. The default Timezone is Sydney local time. Required field when frequency is set to custom.
endDate:
type: string
format: date-time
uniqueItems: false
example: '2018-08-11T00:00:00'
description: End date of statement when the frequency is set to custom. In ISO 8601 date-time format. Note that Timezone is suppressed. The default Timezone is Sydney local time. Required field when frequency is set to custom.
mAccount.transactions:
type: object
required:
- accountNumber
- frequency
properties:
accountNumber:
type: string
example: '6279059700023123'
description: 16-Digit account number that uniquely identifies the mAccount.
frequency:
type: string
example: 'Custom'
enum:
- 'Custom'
- 'ThisMonth'
- 'LastMonth'
- 'Today'
description: An enumeration of fixed selection types. possible values: Today, ThisMonth, LastMonth, Custom. A maximum of 3 months can be retrieved through Frequency = “Custom”
startDate:
type: string
format: date-time
example: '2020-04-05T00:00:00'
description:
Start date of statement when the frequency is set to custom. In ISO 8601 date-time format '2018-07-11T00:00:00'.
Note that Timezone is suppressed. The default Timezone is Sydney local time. Required field when frequency is set to custom.
endDate:
type: string
format: date-time
example: '2020-04-22T00:00:00'
description:
End date of statement when the frequency is set to custom. In ISO 8601 date-time format 2018-08-11T00:00:00' .
Note that Timezone is suppressed. The default Timezone is Sydney local time. Required field when frequency is set to custom.
descending:
type: boolean
example: true
default: false
description: Default to false. true to sort the returned transaction list as descending order.
useTime:
type: boolean
example: true
default: false
description: Default to false. true to use startDate and endDate when the frequency is set to custom.
mAccount.update:
type: object
required:
- accountNumber
- abn
- contactName
- contactNumber
- email
- addressLine2
- suburb
- state
properties:
accountNumber:
type: string
uniqueItems: true
example: '6279059700023123'
description: 16-Digit account number that uniquely identifies the mAccount.
name:
type: string
uniqueItems: false
example: 'Monoova Ltd'
description: Company name of the mAccount.
maximum: 50
abn:
type: string
uniqueItems: false
example: '77 106 249 852'
description: Company ABN of the mAccount. All non numbers are stripped. See allowDuplicates.
maximum: 15
contactName:
type: string
uniqueItems: false
example: 'mPaysales'
description: Contact name. Spaces are stripped.
maximum: 30
contactNumber:
type: number
uniqueItems: false
example: '02 9555 5555'
description: Contact number. All non numbers are striped.
maximum: 15
email:
type: string
uniqueItems: false
example: 'mPayments@monoova.com'
description: Contact email. Converted to lowercase.
addressLine1:
type: string
uniqueItems: false
example: 'Level 6'
description: An optional postal address line such as a Building, section or unit.
maximum: 40
addressLine2:
type: string
uniqueItems: false
example: '97 Pacific Highway'
description: An address line is the main postal address of the Company.
maximum: 40
suburb:
type: string
uniqueItems: false
example: 'North Sydney'
description: Postal address suburb.
maximum: 30
state:
type: string
uniqueItems: false
example: 'NSW'
description: Postal address state.
postCode:
type: string
uniqueItems: false
example: '2060'
description: Postal address post code.
bsb:
type: string
uniqueItems: false
example: '012-366'
description: BSB number of associated bank account. BSB format is ‘000-000’.
bankAccountNumber:
type: string
example: '123456789'
description: Bank account number of associated bank account.
bankAccountTitle:
type: string
uniqueItems: false
example: 'Monoova Bank Account'
description: Bank account title or name of associated bank account.
financials:
type: boolean
uniqueItems: false
example: null
description: See mAccountFinancials class
This property is ignored when calling mAccount/v1/create and mAccount/v1/update.
This property only contains valid values when calling mAccount/v1/get.
options:
type: array
items:
anyOf:
- $ref: '#/components/schemas/mAccount.create.options'
- $ref: '#/components/schemas/mAccount.create.options1'
- $ref: '#/components/schemas/mAccount.create.options2'
- $ref: '#/components/schemas/mAccount.create.options3'
- $ref: '#/components/schemas/mAccount.create.options4'
- $ref: '#/components/schemas/mAccount.create.options5'
- $ref: '#/components/schemas/mAccount.create.options6'
mWallet.create:
type: object
required:
- identifier
- pin
- name
- dateOfBirth
properties:
identifier:
type: string
uniqueItems: true
example: '0200000000'
maxLength: 300
description: Email address, Telephone number, landline number or mWallet account number.
pin:
type: number
uniqueItems: false
example: '0000'
minLength: 4
maxLength: 4
description: 4 digit numerical pin.
name:
type: string
uniqueItems: false
example: 'Sample mWallet Name'
maxLength: 50
description: Full name of customer.
nickName:
type: string
uniqueItems: false
example: 'Your mWallet Nickname'
maxLength: 20
description: This is a short form name of the customer. Can be empty.
dateOfBirth:
type: string
format: date-time
uniqueItems: false
example: '1990-01-01T12:00:00'
description: Birth date of customer or require field in ISO 8601 date-time format. Note that Timezone is suppressed. The default Timezone is Sydney local time.
phone:
type: number
uniqueItems: false
example: '0414 555 555'
maxLength: 11
description: Contact phone number. This is not used for authentication.
Required field in conjunction with email address that must start with 0. All non-numbers are stripped.
Phone numbers are validated with google’s common library. Numbers that can't be validated as correct cannot be used in mWallet creation. A test tool for the validation routine can be found here.
email:
type: string
uniqueItems: false
example: 'walletuser@monoova.com'
maxLength: 300
description:
Contact email. This is not used for authentication. Limited to 300 characters.
Required field in conjunction with phone and should contain @ and follow normal email format conventions. Converted to lowercase.
This email address is used to email the customer receipts for BPAY transactions.
allowDuplicates:
type: boolean
uniqueItems: true
example: false
description: If true, allow the creation of a duplicate mWallet of any identifier type.
abn:
description: Company ABN of the mAccount. All non numbers are stripped
type: string
example: '77106249852'
uniqueItems: false
options:
type: array
items:
anyOf:
- $ref: '#/components/schemas/mWallet.create.options'
mWallet.create.options:
type: object
title: MobileForSms
properties:
key:
description: Unique identifier of the value. this is to use for receiving SMS notifications.
type: string
example: MobileForSms
enum:
- 'MobileForSms'
value:
description: The actual value represented by the Key.
type: number
example: '0414123123'
enum:
- 0414123123
mWallet.resetPin:
type: object
required:
- accountNumber
- pin
- dateOfBirth
properties:
accountNumber:
type: string
uniqueItems: true
example: '6279059700011434'
minLength: 16
maxLength: 16
description: The 16-Digit mWallet account number to reset.
pin:
type: number
uniqueItems: true
example: '5555'
minLength: 4
maxLength: 4
description: 4 digit numerical pin.
dateOfBirth:
type: string
format: date-time
uniqueItems: false
example: '1990-01-01T12:00:00'
description: Birth date of customer or require field in ISO 8601 date-time format. Note that Timezone is suppressed. The default Timezone is Sydney local time.
mWallet.transactions:
type: object
required:
- accountNumber
- pin
properties:
accountNumber:
type: string
uniqueItems: true
example: '6279059700022400'
minLength: 16
maxLength: 16
description: The 16-Digit number that uniquely identifies the Ledger Account or mWallet.
pin:
type: number
uniqueItems: true
example: '5555'
minLength: 4
maxLength: 4
description: 4 digit numerical pin.
startDate:
type: string
format: date-time
example: '2018-07-11T00:00:00'
description: Start date of statement when the frequency is set to custom. In ISO 8601 date-time format. Note that Timezone is suppressed. The default Timezone is Sydney local time. Required field when frequency is set to custom.
endDate:
type: string
format: date-time
example: '2018-02-28T00:00:00'
description: End date of statement when the frequency is set to custom. In ISO 8601 date-time format. Note that Timezone is suppressed. The default Timezone is Sydney local time. Required field when frequency is set to custom.
skip:
type: number
uniqueItems: true
example: '0'
description: Number of records to skip. 0 is the first record.
take:
type: number
uniqueItems: true
example: '50'
description: Number of records to take. If take is 0 the all records will be returned.
descending:
type: boolean
example: false
description: Sort the returned transaction list ascending or descending.
useTime:
type: boolean
example: false
description: Use the time component of startDate and endDate in the selection.
mWallet.update:
type: object
required:
- accountNumber
- pin
- name
properties:
accountNumber:
type: string
uniqueItems: true
example: '6279059736211111'
minLength: 16
maxLength: 16
description: 16-Digit mWallet account number to update.
pin:
type: number
uniqueItems: false
example: '5555'
minLength: 4
maxLength: 4
description: 4 digit numerical pin.
name:
type: string
uniqueItems: false
example: 'mPayments Retail'
description: Full name of customer.
nickName:
type: string
uniqueItems: false
example: 'mPayments'
description: This is a short form name of the customer. Can be empty
phone:
type: number
uniqueItems: false
example: '0414 555 555'
description: Contact phone number. This is not used for authentication.
Required field in conjunction with email address that must start with 0. All non-numbers are stripped.
email:
type: string
uniqueItems: false
example: 'mPayments@monoova.com'
description:
Contact email. This is not used for authentication. Limited to 300 characters.
Required field in conjunction with phone and should contain @ and follow normal email format conventions. Converted to lowercase.
abn:
description: Company ABN of the mAccount. All non numbers are stripped
type: string
example: '77106249852'
uniqueItems: false
options:
type: array
items:
$ref: '#/components/schemas/mWallet.create.options'
verify.initiate:
type: object
required:
- bsb
- bankAccountNumber
- bankAccountTitle
- verificationIdentifier
- hasDDAuthority
properties:
bsb:
type: string
uniqueItems: false
example: '012-366'
maxLength: 7
description: BSB number of associated bank account. BSB format is ‘000-000’.
bankAccountNumber:
type: string
maxLength: 9
example: '123456789'
description: Bank account number of associated bank account.
bankAccountTitle:
type: string
uniqueItems: false
maxLength: 32
example: 'Monoova Bank Account'
description: Bank account title or name of associated bank account.
remitter:
type: string
uniqueItems: false
example: 'MPRetail'
maxLength: 16
description: See Verify section.
verificationIdentifier:
type: string
uniqueItems: false
example: 'MP Retail Account'
maxLength: 512
description: A description supplied by the VerificationSigninMerchant to distinguish this entry from others in a listing. This could be an encoded string from the signon merchant.
hasDDAuthority:
type: boolean
default: true
example: true
description: Can the system use this account to direct debit. Has an authority been granted.
verify.validate:
type: object
required:
- token
- amount
- code
properties:
token:
type: string
uniqueItems: false
example: 'f45d1c83-1533-4cbb-ae05-4381e181cb18'
description: token from verify/v1/aba/initiate.(Inititiates a verification transaction)
amount:
type: number
format: double
uniqueItems: false
example: 0.01
minimum: 0.01
description: amount for the verification.
code:
type: string
uniqueItems: false
example: '555555'
description: Once you receive the verification code, enter it here to confirm your identity.
verify.update:
type: object
required:
- token
- verificationIdentifier
- hasDDAuthority
properties:
token:
type: string
uniqueItems: false
example: 'f45d1c83-1533-4cbb-ae05-4381e181cb18'
description: token from verify/v1/aba/initiate. (Inititiates a verification transaction)
remitter:
type: string
uniqueItems: false
example: 'MPRetail'
maxLength: 16
description: See Verify section.
verificationIdentifier:
type: string
uniqueItems: false
example: 'MP Retail Account'
maxLength: 512
description: A description supplied by the VerificationSigninMerchant to distinguish this entry from others in a listing. This could be an encoded string from the signon merchant.
hasDDAuthority:
type: boolean
default: true
example: true
description: Can the system use this account to direct debit. Has an authority been granted.
bankAccountTitle:
type: string
uniqueItems: false
example: 'Monoova Bank Account'
maxLength: 32
description: The Title of the Bank Account for DE file.
verify.initiate2:
type: object
required:
- creditMethod
- accountName
- verificationIdentifier
properties:
creditMethod:
type: string
example: 'NppCreditBankAccount'
enum:
- 'NppCreditBankAccount'
- 'NppCreditPayId'
description: Credit method. Possible values: 'NppCreditBankAccount' or 'NppCreditPayId'
bsb:
type: string
uniqueItems: false
example: '802-985'
maxLength: 7
description: BSB number of associated bank account. BSB format is ‘000-000’.
`When creditMethod is 'NppCreditBankAccount' this field is required`
bankAccountNumber:
type: string
maxLength: 9
example: '123456789'
description: Bank account number of associated bank account.
`When creditMethod is 'NppCreditBankAccount' this field is required`
accountName:
type: string
uniqueItems: false
maxLength: 32
example: 'Monoova NPP Bank Account'
description: Bank account title or name of associated bank account.
remitter:
type: string
uniqueItems: false
example: 'Monoova Remitter'
maxLength: 140
description: More details at Verify section.
payIdType:
type: string
example: 'Email'
enum:
- 'ABN'
- 'Email'
- 'PhoneNumber'
- 'OrganisationId'
- 'ACN'
description:
PayId Type. Possible values: ABN, Email, PhoneNumber, OrganisationId, ACN
`When creditMethod is 'NppCreditPayId' this field is required`
payId:
type: string
example: 'MW9GM4@monoova.me'
maxLength: 256
description: PayId Identifier of the Payee.
`When creditMethod is 'NppCreditPayId' this field is required`
See PAYID Format Validation.
verificationIdentifier:
type: string
uniqueItems: false
example: 'NPP Bank Account Verification Identifier'
maxLength: 512
description: A description supplied by the VerificationSigninMerchant to distinguish this entry from others in a listing. This could be an encoded string from the signon merchant.
tools.sendEmailToIssuer:
type: object
required:
- subject
properties:
subject:
type: string
uniqueItems: false
example: 'Please call me ASAP'
description: This is the emails subject.
isBodyHtml:
type: boolean
example: false
default: false
description: Set to true if the body contains HTML.
body:
type: string
uniqueItems: false
example: 'I have forgotten my password'
description: Email body. Can be HTML or plain text.
token.createAustralianBankAccount:
type: object
required:
- accountNumber
- bankAccountName
- bankAccountNumber
- bsb
properties:
accountNumber:
type: string
example: '6279059700010827'
minLength: 16
maxLength: 16
description: The mWallet or mAccount 16-Digit number that owns the payload.
description:
type: string
maxLength: 256
uniqueItems: false
example: 'Savings Account'
description: A simple text description that is associated with the token. For example “Savings Account”.
bankAccountName:
type: string
uniqueItems: false
minLength: 2
example: 'Monoova Bank Account'
description: Name associated with the bank account. Minimum length is 2.
bankAccountNumber:
type: integer
example: 123456789
minimum: 1
maximum: 999999999
description: This is the bank account number. Range of '1' to '999999999'.
bsb:
type: string
uniqueItems: false
example: '012-366'
description: Bank-State-Branch number. Format is 3-3 digits. (Eg. '000-000')
token.createBPAY:
type: object
required:
- accountNumber
- billerCode
- customerReferenceNumber
- amount
properties:
accountNumber:
type: string
uniqueItems: false
example: '6279059700010827'
description: The mWallet or mAccount 16-Digit number that owns the payload.
description:
type: string
uniqueItems: false
example: 'Monthly Electricity Bill BPAY'
description: A simple text description that is associated with the token. For example “Monthly Electricity Bill BPAY”.
billerCode:
type: integer
uniqueItems: false
example: '857763'
description: Biller Code as shown on the Bill. Must be a valid BPAY Biller on token creation.
customerReferenceNumber:
type: integer
example: '6279059700010918'
description: Customer Reference Number as shown on the Bill. Must be a valid BPAY Customer Reference Number on token creation.
amount:
type: number
format: decimal
example: 100.00
description: Amount as shown on the Bill. Must be a valid amount on token creation.
token.updateAustralianBankAccount:
type: object
required:
- accountNumber
- tokenToUpdate
- bankAccountName
- bankAccountNumber
- bsb
properties:
accountNumber:
type: string
uniqueItems: false
example: '6279059700010827'
description: The mWallet or mAccount 16-Digit number that owns the payload.
tokenToUpdate:
type: string
uniqueItems: false
example: '9395ddef-69cb-4f38-8836-3c6502c72182'
description: The text (GUID) that identifies the token.
description:
type: string
uniqueItems: false
example: 'Savings Account'
description: A simple text description that is associated with the token. For example “Savings Account”.
bankAccountName:
type: string
uniqueItems: false
example: 'Monoova Bank Account'
minLength: 2
description: Name associated with the bank account.
bankAccountNumber:
type: string
example: '123456789'
description: This is the bank account number.
bsb:
type: string
uniqueItems: false
example: '012-366'
description: Bank-State-Branch number. Format is 3-3 digits. (Eg.'000-000')
token.updateBPAY:
type: object
required:
- accountNumber
- tokenToUpdate
- billerCode
- customerReferenceNumber
- amount
properties:
accountNumber:
type: string
uniqueItems: false
example: '6279059700010827'
description: The mWallet or mAccount 16-Digit number that owns the payload.
tokenToUpdate:
type: string
uniqueItems: false
example: '20c3a494-7010-4f22-babe-34d643e5e64f'
description: The text (GUID) that identifies the token.
description:
type: string
uniqueItems: false
example: 'Monthly Electricity Bill BPAY'
description: A simple text description that is associated with the token. For example “Monthly Electricity Bill BPAY”.
billerCode:
type: integer
uniqueItems: false
example: '857763'
description: Biller Code as shown on the Bill. Must be a valid BPAY Biller on token creation.
customerReferenceNumber:
type: integer
uniqueItems: false
example: '6279059700010918'
description: Customer Reference Number as shown on the Bill. Must be a valid BPAY Customer Reference Number on token creation
amount:
type: number
format: decimal
example: 100.00
description: Amount as shown on the Bill. Must be a valid amount on token creation.
receivables.create:
type: object
properties:
akaNames:
type: array
maxItems: 3
items:
type: string
pattern: '^[ -~]{1,140}$'
description: Up to three optional AKA names can be supplied per account.
example:
- 'Jones Island Dairy'
- 'Jones Island Dairy1'
- 'Jones Island Dairy2'
submerchantId:
type: string
pattern: '^[ -~]{1,35}$'
example: '93bf57eb1e2c42cf8101509b4356741e'
description: The submerchant ID provided by Monoova.
The following submerchant IDs can be used in sandbox for testing purposes.
93bf57eb1e2c42cf8101509b4356741e
78f225280b154fa8982d96e61cc9159d
49da5e40420849ee97a74e7450b1b04b
13c96168aed440efa2ceb8241452a3a2
bankAccountName:
type: string
uniqueItems: false
example: 'Bank1234444'
pattern: >
“ !\"#$%&'()*,-./:;=?@[a-zA-B0-9]{|}”
description: The name of the account to be paid into. This will be defaulted to your registered Trading Name.
minLength: 2
maxLength: 32
bsb:
type: string
description: Optional BSB parameter. If not specified, default BSB logic applies.
nullable: true
example: '802-985'
clientUniqueId:
type: string
uniqueItems: false
example: '862944D057FC408B9B04541C2BA12'
pattern: '[a-zA-Z0-9]'
description: 'An identifier assigned to the account. Must be unique. If not provided Monoova will generate and return a value automatically.'
minLength: 10
maxLength: 35
isActive:
type: boolean
default: false
example: true
description:
Used to open and close account numbers. Closed account numbers will return all payments made to that account number. If not provided this value defaults to false.
The Automatcher account can take up to 5 mins to be registered and become active before a PayID can be assigned or deposits can be made to the account.
The status will automatically changes from false to true.
receivables.status:
type: object
properties:
bankAccountNumber:
type: string
example: '153884104'
description: The bank account number for the account to open or close.
`at least one of clientUniqueId or bankAccountNumber required`
maxLength: 9
bsb:
type: string
description: Optional BSB parameter. If not specified, default BSB logic applies.
nullable: true
example: '802-985'
clientUniqueId:
type: string
uniqueItems: false
example: '862944D057FC408B9B04541C2BA12'
description: The unique identifier for the account to open or close.
`at least one of clientUniqueId or bankAccountNumber required`
minLength: 10
maxLength: 35
isActive:
type: boolean
example: false
description: Used to open and close account numbers. Closed account numbers will return all payments made to that account number.
receivables.refund:
type: object
required:
- uniqueReference
- originalTransactionId
- refundAmount
properties:
uniqueReference:
type: string
example: 'Reference6436302'
description: 'This is a unique reference generated by the calling service. This is a nonce. Its use is to determine if a request has already been received by the Engine.'
originalTransactionId:
type: string
uniqueItems: false
example: 'D00100027170'
description: This is the transactionId that was returned when the transaction was executed.
refundAmount:
type: number
format: decimal
uniqueItems: false
example: 1.00
description: This is the refund amount. RefundAmount can be less than or equal to the original transaction amount. Refund amount should equal the original transaction amount for international receivables.
description:
type: string
example: 'Test Refund. Inv#123456'
description: It should be brief but contain sufficient information to identify the transactions. E.g. “Refund. Inv#123456”.
refundReference:
type: string
example: 'RefundRef001'
maxLength: 18
description: Payment reference indicating details of the origin of the entry.
receivables.processdirectdebit:
type: object
required:
- transactionId
- response
properties:
transactionId:
type: string
minLength: 12
maxLength: 12
example: 'D00100539578'
description: This is the transactionId that was returned when the transaction was executed.
response:
type: string
example: 'Accept'
enum:
- Accept
- Reject
description: Accept to accept direct debit transaction. Reject to reject direct debit transaction.
rejectionReason:
type: string
maxLength: 250
example: ''
description: Text supplied when rejecting a direct debit.
returnCode:
type: string
enum:
- ReferToCustomer
- PaymentStopped
default: ReferToCustomer
example: ''
description: This is optional field. default is ReferToCustomer.
receivables.processrtgsimt:
type: object
required:
- transactionId
- response
- returnCode
properties:
transactionId:
type: string
minLength: 12
maxLength: 12
example: 'D00100539578'
description: This is the transactionId that appears in call back and report.
response:
type: string
example: 'Reject'
enum:
- Confirm
- Reject
description: Confirm to accept RTGS/IMT transaction. Reject to reject RTGS/IMT transaction.
rejectionReasonCode:
type: string
enum:
- AM02
- AM06
- AM07
- BE05
- AG01
- MS01
- RR02
- RR03
- BE04
example: 'AM06'
description: AM02 (Transaction amount is greater than allowed maximum)
AM06 (Transaction amount is less than agreed minimum)
AM07 (Amount has been blocked by regulatory authorities.)
BE05 (Sender is not recognised by beneficiary)
AG01 (No agreement is on file at the receiver for affecting associated transaction)
MS01 (Reason has not been specified due to sensitivities.)
RR02 (Senders name and/or address needed for regulatory requirements is insufficient or missing.)
RR03 (Recipients name and/or address needed for regulatory requirements is insufficient or missing.)
BE04 (Specification of beneficiary address, which is required for payment, is missing/not correct.).
Note: RejectionReasonCode is only required if response is "Reject". RejectionReasonCode can be omitted if response is "confirm".
receivables.createWhiteListingAccount:
type: object
required:
- automatcherBankAccountNumber
properties:
automatcherBankAccountNumber:
type: string
minLength: 9
maxLength: 9
example: '311673871'
description: Valid receivables bank account number belonging to the Sign-in mAccount.
automatcherBsb:
type: string
example: '802-985'
description: Optional BSB parameter specifying the branch identifier for Australian banks. Accepts either 6 digits or with a hyphen as "XXX-XXX". If not specified, the service will use the MAccount’s configured ‘Default BSB’. If a ‘Default BSB’ has not been configured, then the Monoova ‘Default BSB’ will be used.
sourceAccount:
description: This is the sourceAccount
type: object
properties:
bsbNumber:
type: string
example: '802-985'
description: 6 digits with a '-'.
`at least one of BSB/AccountNumber or AccountName is required`
accountNumber:
type: string
minLength: 3
maxLength: 9
example: '123456789'
description: 3 to 9 digits.
`at least one of BSB/AccountNumber or AccountName is required`
accountName:
type: string
maxLength: 140
example: 'Monoova Source Account Name'
description: String of max 140 chars. Not case sensitive.
`at least one of BSB/AccountNumber or AccountName is required`
accountStatus:
type: string
enum:
- enabled
- disabled
default: enabled
example: 'enabled'
description: enabled/disabled. Default to enabled.
receivables.updateWhiteListingAccount:
type: object
required:
- automatcherBankAccountNumber
properties:
automatcherBankAccountNumber:
type: string
minLength: 9
maxLength: 9
example: '311673871'
description: Valid receivables bank account number belonging to the Sign-in mAccount.
automatcherBsb:
type: string
example: '802-985'
description: Optional BSB parameter specifying the branch identifier for Australian banks. Accepts either 6 digits or with a hyphen as "XXX-XXX". If not specified, the service will use the MAccount’s configured ‘Default BSB’. If a ‘Default BSB’ has not been configured, then the Monoova ‘Default BSB’ will be used.
sourceAccount:
description: This is the sourceAccount
type: object
required:
- id
- accountStatus
properties:
accountName:
description: String of max 140 chars.
type: string
example: 'Monoova Source Account Name'
accountNumber:
description: 3 to 9 digits.
type: string
minLength: 3
maxLength: 9
example: '123456789'
accountStatus:
description: This is a plain English description of the status. enabled/disabled.
type: string
example: 'disabled'
enum:
- enabled
- disabled
bsbNumber:
description: 6 digits with a '-'.
type: string
example: '802-985'
id:
description: identifier for whiteList sourceAccount
type: integer
example: 107
receivables.reconRulesCreate:
type: object
required:
- reconciliationRuleReference
- amount
properties:
reconciliationRuleReference:
type: string
description: A unique reference used to identify the reconciliation rule. Unique to your mAccount
maxLength: 35
pattern: '^[A-Za-z0-9-_]{1,35}$'
expiryDateTime:
type: string
description: This will be specified in Sydney local time in ISO 8601 Date Time format. This should be future date. If ExpiryDateTime is not provided it will be defaulted as per pre-decided setup.
bsb:
type: string
description: Conditional, Either BSB+Account Number Or PayId should be provided
accountNumber:
type: string
minLength: 9
description: Conditional, Either BSB+Account Number Or PayId should be provided
payId:
type: string
maxLength: 256
description: Conditional, Either BSB+Account Number Or PayId should be provided
amount:
type: number
format: double
minimum: 0.01
nullable: false
payId.registerpayId:
type: object
required:
- bankAccountNumber
- payIdName
properties:
bankAccountNumber:
type: string
example: '123409870'
description: The bank account number for the account against which you are trying to Register a PayID
maxLength: 9
bsb:
type: string
example: '802-985'
description: Optional BSB parameter. If not specified, the service will use the MAccount’s configured ‘Default BSB’. If a ‘Default BSB’ has not been configured, then the Monoova ‘Default BSB’ will be used.
payIdName:
type: string
example: 'John Smith'
maxLength: 140
description: Name displayed to the payers in order to identify you.
payId:
type: string
example: ''
maxLength: 256
description: Email address for the PayID.
payId.updatePayIdStatus:
type: object
required:
- bankAccountNumber
- payId
- status
properties:
bankAccountNumber:
type: string
example: '123409870'
description: The bank account number for the account against when you Register a PayID.
maxLength: 9
bsb:
type: string
example: '802-985'
description: Optional BSB parameter. If not specified, the service will use the MAccount’s configured ‘Default BSB’. If a ‘Default BSB’ has not been configured, then the Monoova ‘Default BSB’ will be used.
payId:
type: string
example: 'f3y237@monoova.me'
description: Email address for the PayID.
maxLength: 256
status:
type: string
example: 'Disable'
enum:
- Enable
- Disable
- Deregister
- Port
description: 'Status of your PayID. Possible values: Enable, Disable, Deregister, Port'
payId.updatePayIdName:
type: object
required:
- bankAccountNumber
- payId
- payIdName
properties:
bankAccountNumber:
type: string
example: '123409870'
description: The bank account number for the account against when you Register a PayID.
maxLength: 9
bsb:
type: string
example: '802-985'
description: Optional BSB parameter. If not specified, the service will use the MAccount’s configured ‘Default BSB’. If a ‘Default BSB’ has not been configured, then the Monoova ‘Default BSB’ will be used.
payId:
type: string
example: 'f3y237@monoova.com'
description: Email address for the PayID.
maxLength: 256
payIdName:
type: string
example: 'John Smith'
description: Name displayed to the payers in order to identify you.
maxLength: 140
payId.enquiry:
type: object
required:
- payId
properties:
payId:
type: string
example: 'f3y237@monoova.com'
description: Email address for the PayID.
subscriptions.create:
type: object
required:
- eventName
- targetUrl
- subscriptionStatus
properties:
eventName:
type: string
example: 'NPPReceivePayment'
maxLength: 50
enum:
- NppReturn
- NppPaymentStatus
- PayToReceivePayment
- NPPReceivePayment
- InboundDirectCredit
- InboundDirectDebit
- DirectEntryDishonour
- PendingInboundRtgsImt
- InboundRtgsImtStatus
- InboundDirectCreditRejections
- NPPCreditRejections
- DirectDebitClearance
description: The type of event to be sent to this URL via callback.
targetUrl:
type: string
example: 'http://www.abc.com.au'
description: This is the API endpoint where the call back notification will be sent.
subscriptionStatus:
type: string
maxLength: 50
default: 'Off'
example: 'On'
description: On/Off. Defaults to Off.
securityToken:
type: string
example: 'Basic Rjc1234567890jdGMS00MUU01234567890I3OTUyRk1234567890UEB51234567890TM0NjM='
description: This token will be sent back with the callback in Authorization header.
(Authorization: [type] [credentials] (e.x Basic Rjc1234567890jdGMS67890U78...))
When creating the token, both 'type' and 'credentials' are required.
subscriptions.update:
type: object
required:
- id
- targetUrl
- subscriptionStatus
properties:
id:
type: integer
example: 1
description: Unique id for the subscription that needs to be updated.
targetUrl:
type: string
example: 'http://www.abc1.com.au'
description: This is the API endpoint where the call back notification will be sent.
subscriptionStatus:
type: string
maxLength: 50
default: 'Off'
example: 'On'
description: On/Off. Defaults to Off.
securityToken:
type: string
example: 'Basic Rjc1234567890jdGMS00MUU01234567890I3OTUyRk1234567890UEB51234567890TM0NjM='
description: This token will be sent back with the callback in Authorization header.
(Authorization: [type] [credentials] (e.x Basic Rjc1234567890jdGMS67890U78...))
When updating the token, both 'type' and 'credentials' are required.
event.receivePaymentWebhook:
type: object
required:
- uniqueReference
- originalTransactionId
- refundAmount
properties:
TransactionId:
type: string
example: 'N00100000000'
description: Monoova generated Unique ID.
DateTime:
type: string
example: '20/10/2020 12:00:01 AM'
description: Time Stamp.
RemitterName:
type: string
maxLength: 140
example: 'ABC XYZ'
description: Remitting Entity.
Amount:
type: string
maxLength: 11
example: '10.0000'
description: Payment amount, 2 decimal places for cents.
AccountName:
type: string
example: 'Test1'
maxLength: 32
description: Payer submitted Account Name.
AccountNumber:
type: string
example: '4562134757'
maxLength: 9
description: Payee Bank Account Number.
Bsb:
type: string
example: '123-123'
maxLength: 7
description: Payee BSB.
PaymentDescription:
type: string
example: 'This is a free text which describes payment details'
maxLength: 500
description: This is the Payment description provided by the Payer and is equivalent to the lodgementReference field in Direct Entry. It accepts UTF-8 character set.
PayId:
type: string
example: 'test1@monoova.com'
maxLength: 256
description: Email address for the PayID.
PayIdName:
type: string
example: 'monoova payIdName'
maxLength: 256
description: PayID Name.
SourceBsb:
type: string
example: '123-123'
maxLength: 7
description: Payer BSB.
SourceAccountNumber:
type: string
example: '123456789'
maxLength: 34
description: Payer Bank Account Number.
SourceAccountName:
type: string
example: Monoova Payers Name
maxLength: 140
description:
This field appears for NPP transactions only and is the payers bank account name.
For DE transactions please refer to the RemitterName Field.
EndToEndId:
type: string
example: TEST_EndToEnd_ID
maxLength: 140
description: Osko End to End identifier submitted by Payer.
CategoryPurposeCode:
type: string
example:
maxLength: 4
description: NPP payment purpose code. Possible values are Blank, SALA, PENS, SUPP, TAXS
CreditorReferenceInformation:
type: string
example:
maxLength: 35
description: Used for SALA, PENS, SUPP and TAXS transactions only. Reference related to payment type.
USINumber:
type: string
example:
maxLength: 35
description: Used for PENS code payments only. Unique Superannuation ID (USI).
USIScheme:
type: string
example:
maxLength: 35
description: Used for PENS code payments only. USI scheme.
UltimateCreditorName:
type: string
example:
maxLength: 140
description: Used for PENS code payments only. Name of the Ultimate Creditor.
ReconciliationRuleReference:
type: string
description: A unique reference used to identify the reconciliation rule. Unique to your mAccount
example: 'RR22348'
maxLength: 35
pattern: '^[A-Za-z0-9-_]{1,35}$'
ReceiptNumber:
type: string
example: '5678120'
description: Unique identifier for tracking the transaction.
event.directDebitClearanceWebhook:
type: object
properties:
TotalCount:
type: integer
example: 3
description: Total number of Direct Credits.
TransactionIds:
type: array
items:
type: object
properties:
Id:
type: integer
example: 1001231559
description: List of transaction objects with IDs that were cleared for the merchant on that day.
example:
- Id: 1001231559
- Id: 1001231558
- Id: 1001231557
required:
- TransactionId
event.payToreceivePaymentWebhook:
type: object
required:
- uniqueReference
- originalTransactionId
- refundAmount
properties:
TransactionId:
type: string
example: 'N00100000000'
description: Monoova generated Unique ID.
DateTime:
type: string
example: '20/10/2020 12:00:01 AM'
description: Time Stamp.
RemitterName:
type: string
maxLength: 140
example: 'ABC XYZ'
description: Remitting Entity.
Amount:
type: string
maxLength: 11
example: '10.0000'
description: Payment amount, 2 decimal places for cents.
AccountName:
type: string
example: 'Test1'
maxLength: 32
description: Payer submitted Account Name.
AccountNumber:
type: string
example: '4562134757'
maxLength: 9
description: Payee Bank Account Number.
Bsb:
type: string
example: '123-123'
maxLength: 7
description: Payee BSB.
PaymentDescription:
type: string
example: 'This is a free text which describes payment details'
maxLength: 500
description: This is the Payment description provided by the Payer and is equivalent to the lodgementReference field in Direct Entry. It accepts UTF-8 character set.
PayId:
type: string
example: 'test1@monoova.com'
maxLength: 256
description: Email address for the PayID.
PayIdName:
type: string
example: 'monoova payIdName'
maxLength: 256
description: PayID Name.
SourceBsb:
type: string
example: '123-123'
maxLength: 7
description: Payer BSB.
SourceAccountNumber:
type: string
example: '123456789'
maxLength: 34
description: Payer Bank Account Number.
SourceAccountName:
type: string
example: Monoova Payers Name
maxLength: 140
description:
This field appears for NPP transactions only and is the payers bank account name.
For DE transactions please refer to the RemitterName Field.
EndToEndId:
type: string
example: TEST_EndToEnd_ID
maxLength: 140
description: Osko End to End identifier submitted by Payer.
CategoryPurposeCode:
type: string
example:
maxLength: 4
description: NPP payment purpose code. Possible values are Blank, SALA, PENS, SUPP, TAXS
CreditorReferenceInformation:
type: string
example:
maxLength: 35
description: Used for SALA, PENS, SUPP and TAXS transactions only. Reference related to payment type.
USINumber:
type: string
example:
maxLength: 35
description: Used for PENS code payments only. Unique Superannuation ID (USI).
USIScheme:
type: string
example:
maxLength: 35
description: Used for PENS code payments only. USI scheme.
UltimateCreditorName:
type: string
example:
maxLength: 140
description: Used for PENS code payments only. Name of the Ultimate Creditor.
MmsId:
type: string
maxLength: 33
InitiatingPartyName:
type: string
description: Iniation Party name..
maxLength: 35
NPPInstructionId:
type: string
example: 'PI123456789'
description: Unique identifier for tracking the initiation of the payment.
ReceiptNumber:
type: string
example: '5678120'
description: Unique identifier for tracking the transaction.
event.inboundDirectCreditWebhook:
type: object
properties:
TotalCount:
type: integer
example: 2
description: Total Number of Direct Credits.
TotalAmount:
type: number
format: decimal
example: 3.0
description: Total Amount of Direct Credits.
DirectCreditDetails:
type: array
items:
$ref: '#/components/schemas/inboundDirectCreditWebhook.directCreditDetails'
example:
TotalCount: 2
TotalAmount: 2
DirectCreditDetails:
- TransactionId: D00100537784
BatchId: 0000000212749
DateTime: '2020-01-13T14:21:50.553'
Bsb: '802-985'
AccountNumber: 419001918
AccountName: 'Monoova AccountName'
TransactionCode: '50'
Amount: 1.0
LodgementRef: 'Ref1'
RemitterName: 'ABC XYZ'
NameOfUserSupplyingFile: 'M PAYMENTS'
NumberOfUserSupplyingFile: '483449'
DescriptionOfEntriesOnFile: 'PAYMENT TRNSFR'
Indicator: ''
WithholdingTaxAmount: 0.0
SourceBsb: 123-123
SourceAccountNumber: '123456789'
- TransactionId: D00100537785
BatchId: 0000000212749
DateTime: '2020-01-13T14:30:50.002'
Bsb: '802-985'
AccountNumber: 419001923
AccountName: 'Monoova AccountName2'
TransactionCode: '50'
Amount: 1.0
LodgementRef: 'Ref2'
RemitterName: 'STU XYZ'
NameOfUserSupplyingFile: 'M PAYMENTS'
NumberOfUserSupplyingFile: '483449'
DescriptionOfEntriesOnFile: 'PAYMENT TRNSFR'
Indicator: ''
WithholdingTaxAmount: 0.0
SourceBsb: 123-123
SourceAccountNumber: '234123896'
event.inboundDirectDebitWebhook:
type: object
properties:
TotalCount:
type: integer
example: 1
description: Total Number of Direct Debits.
TotalAmount:
type: number
format: decimal
example: 1.0
description: Total Amount of Direct Debits.
DirectDebitDetails:
type: array
items:
$ref: '#/components/schemas/inboundDirectDebitWebhook.directDebitDetails'
event.directEntryDishonoursWebhook:
type: object
properties:
ReturnDate:
type: string
example: '2019-07-22T00:00:00'
description: Return Date.
Amount:
type: number
format: decimal
example: 2.00
description: Total Amount.
BankDetails:
type: object
properties:
Bsb:
type: string
example: '802-985'
maxLength: 7
description: Payee BSB.
AccountNumber:
type: string
example: '123456789'
maxLength: 9
description: Payee Bank Account Number.
AccountName:
type: string
example: 'Monoova'
maxLength: 32
description: Payer submitted Account Name.
Token:
description: Value will be present if token has used for the transaction. (will either have BSB, AccountNumber, AccountName OR Token)
type: string
example: null
Type:
type: string
example: 'Credit'
description: Value will be either Credit or Debit.
ReturnReason:
type: string
example: 'ACCOUNT CLOSED'
description: Return Reason Text.
TransactionDate:
type: string
example: '2019-07-19T00:00:00.00'
description: Original Transaction Date.
OriginalTransactionId:
type: integer
example: 1234567
description: Original Transaction Id.
TransactionReference:
type: string
example: '2215125a-b80b-41aa-af58-740d21b303ed'
description: Client UniqueReference, generated by the calling service.
event.NppReturnWebhook:
type: object
properties:
ReturnDate:
type: string
example: '2019-07-22T00:00:00'
description: Return Date.
Amount:
type: number
format: decimal
example: 2.00
description: Total Amount.
Bsb:
type: string
example: '802-985'
maxLength: 7
description: Payee BSB.
AccountNumber:
type: string
example: '123456789'
maxLength: 28
description: Payee Bank Account Number.
AccountName:
type: string
example: 'Monoova'
maxLength: 140
description: Payer submitted Account Name.
PayId:
type: string
example: 'MW9GM4@monoova.me'
maxLength: 256
description: PayId Identifier of the Payee.
PayIdType:
type: string
example: 'Email'
enum:
- 'ABN'
- 'Email'
- 'PhoneNumber'
- 'OrganisationId'
- 'ACN'
description: PayId Type. Possible values: ABN, Email, PhoneNumber, OrganisationId, ACN
EndToEndId:
type: string
example: 'ABC/123-4356'
maxLength: 35
description: End to End identifier submitted by Payer.
ReturnReason:
type: string
example: 'ACCOUNT CLOSED'
description: Return Reason Text.
TransactionDate:
type: string
example: '2019-07-19T00:00:00'
description: Original Transaction Date.
TransactionId:
type: integer
example: 1234567
description: Original Transaction Id.
UniqueReference:
type: string
maxLength: 200
example: '2215125a-b80b-41aa-af58-740d21b303ed'
description: Original Client UniqueReference, generated by the calling service.
RemitterName:
type: string
example: 'Monoova123'
maxLength: 140
description: Original Remitting Entity.
LodgementRef:
type: string
maxLength: 280
example: 'Ref1'
description: Original Payment reference.
ReturnTransactionId:
type: integer
example: 1234567
description: Return Transaction Id.
event.NppPaymentStatusWebhook:
type: object
properties:
TransactionDate:
type: string
format: date-time
example: '2019-07-22T00:00:00'
description: Transaction Date.
UniqueReference:
type: string
maxLength: 200
example: '2215125a-b80b-41aa-af58-740d21b303ed'
description: Client UniqueReference, generated by the calling service.
TransactionId:
type: integer
example: 1234567
description: Monoova Transaction Id.
Status:
description: |
The final status of a transaction, either `Payment Successful` or `Rejected`.
type: string
example: 'Payment Successful'
Amount:
type: number
format: decimal
example: 2.00
description: Amount.
Bsb:
type: string
example: '802-985'
maxLength: 7
description: Payee BSB.
AccountNumber:
type: string
example: '123456789'
maxLength: 28
description: Payee Bank Account Number.
AccountName:
type: string
example: 'Monoova'
maxLength: 140
description: Payee Account Name.
PayId:
type: string
example: 'MW9GM4@monoova.me'
maxLength: 256
description: PayId Identifier of the Payee.
PayIdType:
type: string
example: 'Email'
enum:
- 'ABN'
- 'Email'
- 'PhoneNumber'
- 'OrganisationId'
- 'ACN'
description: PayId Type. Possible values: ABN, Email, PhoneNumber, OrganisationId, ACN
EndToEndId:
type: string
example: 'ABC/123-4356'
maxLength: 35
description: End to End identifier submitted by Payer.
RemitterName:
type: string
example: 'Monoova123'
maxLength: 140
description: Original Remitting Entity.
LodgementRef:
type: string
maxLength: 280
example: 'Ref1'
description: Original Payment reference.
RejectionDateTime:
type: string
format: date-time
example: '2019-07-22T00:00:00.00'
description: Rejection Date Time.
RejectionReasonDescription:
type: string
maxLength: 1000
example: 'ACCOUNT CLOSED'
description: Rejection reason description.
RejectionTransactionId:
type: integer
example: 1234567
description: Rejection Transaction Id.
event.InboundDirectCreditRejectionsWebhook:
type: object
properties:
id:
type: integer
example: 2650
maxLength: 12
description: Monoova generated Unique ID.
batchId:
type: integer
example: 436206
maxLength: 12
description: Payment Batch ID. Payments come in batches throughout the day.
dateTime:
type: string
format: date-time
example: '2023-08-11T14:19:16'
description: AEDT, Sydney.
bsb:
type: string
example: '123-123'
maxLength: 7
description: Payee BSB.
accountNumber:
type: string
example: '123123123'
maxLength: 34
description: Payee Bank Account Number.
accountName:
type: string
example: 'TEST'
maxLength: 32
description: Payer submitted Account Name.
payId:
type: string
example: 'TEST'
maxLength: 256
description: Email address for the PayID.
payIdName:
type: string
example: 'TEST'
maxLength: 140
description: Name displayed to the payers.
transactionCode:
type: string
example: '50'
maxLength: 5
description: Industry standard transaction code. "50" for NPP.
transactionType:
type: string
example: 'DE'
description: Possible Values 'DE' or 'NPP'.
amount:
type: number
format: decimal
maxLength: 11
example: 1000.12
description: Payment amount, 2 decimal places for cents.
lodgementRef:
type: string
maxLength: 280
example: ''
description: Payer submitted reference.
remitterName:
type: string
example: 'Test Test'
maxLength: 140
description: Remitting Entity.
indicator:
type: string
example: ''
maxLength: 140
description: Blank; OR 'W' dividend paid to a resident of a country where a double tax agreement is in force. 'X' dividend paid to a resident of any other country. 'Y' interest paid to all non-resident.
withholdingTaxAmount:
type: number
format: decimal
example: 0.0
maxLength: 9
description: Blank OR Payment amount, 2 decimal places for cents.
endToEndId:
type: string
example: ''
maxLength: 35
description: Osko End to End identifier submitted by Payer.
nameOfUserSupplyingFile:
type: string
example: 'Test'
description: Preferred name of the User supplying the Direct Entry file.
numberOfUserSupplyingFile:
type: string
example: '123079'
description: This is the User Identification Number which is assigned by APCA and User Financial Institutions.
descriptionOfEntriesOnFile:
type: string
example: ''
description: Direct Entry file description.
reason:
type: string
example: 'Unmatched Reconciliation Rule Receivable'
description: Reason for the rejection.
status:
type: string
example: 'Processed'
description: Transaction Status.
sourceBsb:
type: string
example: '123-123'
maxLength: 7
description: Source BSB.
sourceAccountNumber:
type: string
example: '123123123'
maxLength: 34
description: Payer Bank Account Number.
sourceAccountName:
type: string
example: 'Test'
maxLength: 140
description: This field appears for NPP transactions only and is the payers bank account name. For DE transactions please refer to the RemitterName Field.
event.NppCreditRejectionsWebhook:
type: object
properties:
id:
type: integer
example: 2531
maxLength: 12
description: Monoova generated Unique ID.
batchId:
type: integer
example: 22568344
maxLength: 12
description: Payment Batch ID. Payments come in batches throughout the day.
dateTime:
type: string
format: date-time
example: '2023-11-08T12:25:27'
maxLength: 27
description: AEDT, Sydney.
bsb:
type: string
example: '123-123'
maxLength: 7
description: Payee BSB.
accountNumber:
type: string
example: '818123123'
maxLength: 34
description: Payee Bank Account Number.
accountName:
type: string
example: 'test@test.io'
maxLength: 32
description: Payee submitted Account Name.
payId:
type: string
example: 'test@test.io'
maxLength: 256
description: Email address for the PayID.
payIdName:
type: string
example: 'TEST PTY. LIMITED'
maxLength: 140
description: Name displayed to the payers.
transactionCode:
type: string
example: '50'
maxLength: 5
description: Industry standard transaction code. "50" for NPP.
transactionType:
type: string
example: 'NPP'
description: Possible Values 'DE' or 'NPP'.
amount:
type: number
format: decimal
example: 264.97
maxLength: 11
description: Payment amount, 2 decimal places for cents.
lodgementRef:
type: string
maxLength: 280
example: ''
description: Payer submitted reference.
remitterName:
type: string
example: 'TEST TEST'
maxLength: 140
description: Remitting Entity.
indicator:
type: string
example: ''
maxLength: 1
description: Blank; OR 'W' dividend paid to a resident of a country where a double tax agreement is in force. 'X' dividend paid to a resident of any other country. 'Y' interest paid to all non-resident.
withholdingTaxAmount:
type: number
format: decimal
example: 0.0
maxLength: 9
description: Blank OR Payment amount, 2 decimal places for cents.
endToEndId:
type: string
example: 'NOTPROVIDED'
description: Osko End to End identifier submitted by Payer.
nameOfUserSupplyingFile:
type: string
example: ''
description: Preferred name of the User supplying the Direct Entry file.
numberOfUserSupplyingFile:
type: string
example: ''
description: This is the User Identification Number which is assigned by APCA and User Financial Institutions.
descriptionOfEntriesOnFile:
type: string
example: ''
description: Direct Entry file description.
reason:
type: string
example: 'Non Whitelisted Source Account'
description: Reason for the rejection.
status:
type: string
example: 'Processed'
description: Transaction Status.
sourceBsb:
type: string
example: '123-123'
maxLength: 7
description: Payer BSB.
sourceAccountNumber:
type: string
example: '123123123'
maxLength: 34
description: Payer Bank Account Number.
sourceAccountName:
type: string
example: 'TEST TEST'
maxLength: 140
description: This field appears for NPP transactions only and is the payers bank account name. For DE transactions please refer to the RemitterName Field.
inboundDirectDebitWebhook.directDebitDetails:
properties:
TransactionId:
type: string
minLength: 12
maxLength: 12
example: 'D00100537784'
description: Monoova generated Unique ID.
BatchId:
type: string
example: '0000000212749'
description: Payment Batch ID. Payments come in batches throughout the day.
DateTime:
description: Time Stamp.
type: string
example: '2020-01-13T14:21:50.553'
Status:
description: The status of the transaction. Possible values are Pending, Reject, Accept.
type: string
example: Pending
RespondBeforeDateTime:
description: Time by when you have to respond to the Inbound Direct Debit request.
type: string
example: '2020-01-14T16:30:00'
Bsb:
type: string
example: '802-985'
maxLength: 7
description: Payee BSB.
AccountNumber:
type: string
example: '419001918'
maxLength: 9
description: Payee Bank Account Number.
AccountName:
type: string
example: 'DR'
maxLength: 32
description: Payer submitted Account Name.
Amount:
type: number
format: decimal
maxLength: 11
example: 1.0
description: Payment amount, 2 decimal places for cents.
LodgementRef:
type: string
maxLength: 280
example: 'Ref1'
description: Payer submitted reference.
RemitterName:
type: string
maxLength: 16
example: 'ABC XYZ'
description: Remitting Entity.
NameOfUserSupplyingFile:
type: string
example: 'M PAYMENTS'
description: Preferred name of the User supplying the Direct Entry file.
NumberOfUserSupplyingFile:
type: string
example: '483449'
description: This is the User Identification Number which is assigned by APCA and User Financial Institutions.
DescriptionOfEntriesOnFile:
type: string
example: 'PAYMENT TRNSFR'
description: Direct Entry file description.
Indicator:
description: Blank; OR 'W' dividend paid to a resident of a country where a double tax agreement is in force. 'X' dividend paid to a resident of any other country. 'Y' interest paid to all non-resident.
type: string
maxLength: 1
example: ''
WithholdingTaxAmount:
description: Blank OR Payment amount,2 decimal places for cents.
maxLength: 9
type: number
format: decimal
example: 0.0
SourceBsb:
type: string
maxLength: 7
description: Payer BSB
example: 123-123
SourceAccountNumber:
type: string
example: '123456789'
maxLength: 34
description: Payer Bank Account Number.
inboundDirectCreditWebhook.directCreditDetails:
type: object
properties:
TransactionId:
type: string
minLength: 12
maxLength: 12
description: Monoova generated Unique ID.
BatchId:
type: string
description: Payment Batch ID. Payments come in batches throughout the day.
DateTime:
description: Time Stamp.
type: string
Bsb:
type: string
maxLength: 7
description: Payee BSB.
AccountNumber:
type: string
maxLength: 9
description: Payee Bank Account Number.
AccountName:
type: string
maxLength: 32
description: Payer submitted Account Name.
TransactionCode:
type: string
maxLength: 5
description: Externally initiated credit items with the exception of those bearing Transaction Codes.
Amount:
type: number
format: decimal
maxLength: 11
description: Payment amount, 2 decimal places for cents.
LodgementRef:
type: string
maxLength: 280
description: Payer submitted reference.
RemitterName:
type: string
maxLength: 16
description: Remitting Entity.
NameOfUserSupplyingFile:
type: string
description: Preferred name of the User supplying the Direct Entry file.
NumberOfUserSupplyingFile:
type: string
description: This is the User Identification Number which is assigned by APCA and User Financial Institutions.
DescriptionOfEntriesOnFile:
type: string
description: Direct Entry file description.
Indicator:
description: Blank; OR 'W' dividend paid to a resident of a country where a double tax agreement is in force. 'X' dividend paid to a resident of any other country. 'Y' interest paid to all non-resident.
type: string
maxLength: 1
WithholdingTaxAmount:
description: Blank OR Payment amount,2 decimal places for cents.
maxLength: 9
type: number
format: decimal
SourceBsb:
type: string
maxLength: 7
description: Payer BSB.
SourceAccountNumber:
type: string
maxLength: 34
description: Payer Bank Account Number.
ReceiptNumber:
type: string
example: '5678120'
description: Unique identifier for tracking the transaction.
example:
- TransactionId: D00100537784
BatchId: 0000000212749
DateTime: '2020-01-13T14:21:50.553'
Bsb: '802-985'
AccountNumber: 419001918
AccountName: 'Monoova AccountName'
TransactionCode: '50'
Amount: 1.0
LodgementRef: 'Ref1'
RemitterName: 'ABC XYZ'
NameOfUserSupplyingFile: 'M PAYMENTS'
NumberOfUserSupplyingFile: '483449'
DescriptionOfEntriesOnFile: 'PAYMENT TRNSFR'
Indicator: ''
WithholdingTaxAmount: 0.0
SourceBsb: 123-123
SourceAccountNumber: '123456789'
event.pendingrtgsImtWebhook:
type: object
properties:
TotalCount:
type: integer
example: 1
description: Total Number of records.
TotalAmount:
type: number
format: decimal
example: 800
description: Sum total of amount for all transactions.
RtgsImtDetails:
type: array
items:
$ref: '#/components/schemas/pendingRtgsImtWebhook.details'
pendingRtgsImtWebhook.details:
properties:
TransactionId:
type: string
maxLength: 12
description: Monoova generated Unique ID.
example: 'R10002222'
AccountNumber:
type: string
example: '123456789'
maxLength: 34
description: Payee Bank Account Number.
BSB:
type: string
example: '802-985'
maxLength: 7
description: Payee BSB.
AccountName:
type: string
example: 'Monoova'
maxLength: 32
description: Payer submitted Account Name.
TransactionReferenceNumber:
type: string
example: ''
description: Transaction Reference Number.
maxLength: 21
Amount:
type: number
format: decimal
example: 800.00
description: Payment amount,2 decimal places for cents.
maxLength: 11
Status:
description: Transaction Status. Possible value Pending.
type: string
example: 'Pending'
LodgementRef:
type: string
example: 'Test Reference'
description: Payer submitted reference
maxLength: 280
Date:
type: string
example: '2019-07-22T00:00:00'
description: AEDT, Sydney. Transaction Received date.
SourceDetails:
type: string
example: '123123123456789 JOHN Test 123 SAMPLE ST SAMPLEVILLE NSW AUSTRALIA 1234'
description: Source Account Name address and account number (This will be an optional field depending on merchant setting)
RespondBeforeDateTime:
type: string
example: '2022-02-08T00:00:00'
description: AEDT, Sydney. This will indicate the time user has to Confirm/Reject a transaction.
SendingOrganisation:
type: string
example: 'ABCWAU4BAXXX'
description: Sending Organisation
maxLength: 100
ReceivingOrganisation:
type: string
example: 'MONOOVA PAYMENTS P/L'
description: Receiving Organisation
maxLength: 100
OrderingInstitution:
type: string
example: 'CDEWAU4BAXXX'
description: Ordering Institution
maxLength: 100
OriginatingAddress:
type: string
example: 'CDEWAU4BAXXX'
description: Originating Address
maxLength: 100
ledgerAccountNumber:
type: string
example: ''
description: Ledger account number linked to the RTGS transaction.
ledgerUniqueReference:
type: string
example: ''
description: Unique reference for the ledger transaction.
event.InboundRtgsImtStatus:
type: object
properties:
TransactionId:
type: string
maxLength: 12
description: Monoova generated Unique ID.
example: 'R12345678'
AccountNumber:
type: string
example: '123456789'
maxLength: 34
description: Payee Bank Account Number.
Bsb:
type: string
example: '802-985'
maxLength: 7
description: Payee BSB.
AccountName:
type: string
example: 'Monoova'
maxLength: 32
description: Payer submitted Account Name.
TransactionReferenceNumber:
type: string
example: 'MONOOVARE070222b-2'
description: Transaction Reference Number.
maxLength: 21
Amount:
type: number
format: decimal
example: 800.00
description: Payment amount,2 decimal places for cents.
maxLength: 11
Status:
description: Transaction Status. Possible value Confirmed/Rejected.
type: string
example: 'Confirmed'
LodgementRef:
type: string
example: 'IMT Gift CF3528811 0737599'
description: Payer submitted reference
maxLength: 280
Date:
type: string
example: '2019-07-22T00:00:00'
description: AEDT, Sydney. Transaction Received date.
SourceDetails:
type: string
example: '123123123456789 JOHN Test 123 SAMPLE ST SAMPLEVILLE NSW AUSTRALIA 1234'
description: Source Account Name address and account number (This will be an optional field depending on merchant setting)
ProcessedDateTime:
type: string
example: '2022-02-08T00:00:00'
description: AEDT, Sydney. This will indicate the time when transaction was Confirmed/Rejected.
RejectReasonDescription:
type: string
example: 'null'
description: Reason why transaction was rejected.
maxLength: 500
SendingOrganisation:
type: string
example: 'ABCWAU4BAXXX'
description: Sending Organisation
maxLength: 100
ReceivingOrganisation:
type: string
example: 'MONOOVA PAYMENTS P/L'
description: Receiving Organisation
maxLength: 100
OrderingInstitution:
type: string
example: 'CDEWAU4BAXXX'
description: Ordering Institution
maxLength: 100
OrderingAddress:
type: string
example: 'FTBAAUSRBXXX'
description: Ordering Address
maxLength: 100
ledgerAccountNumber:
type: string
example: ''
description: Ledger account number linked to the RTGS transaction.
ledgerUniqueReference:
type: string
example: ''
description: Unique reference for the ledger transaction.
# Financial disbursements
disbursementMethod.BPAY:
required:
- disbursementMethod
- toBPayDetails
- billerCode
- referenceNumber
- amount
title: BPAY
type: object
description: disbursement to BPAY
properties:
disbursementMethod:
type: string
enum:
- 'BPAY'
description:
description: description for the transaction
type: string
example: disbursement to BPAY
toBPayDetails:
required:
- billerCode
- referenceNumber
type: object
properties:
billerCode:
type: integer
example: '857763'
description: BPAY Biller code
referenceNumber:
type: integer
example: '6279059700000505'
description: BPAY Customer Reference Number.
If this field is empty this denotes that the customerReferenceNumber is variable for each bill and should not be reused.
amount:
type: number
format: decimal
example: 10
minimum: 0.01
description: This is the amount of funds to be paid
disbursementMethod.mAccount:
required:
- disbursementMethod
- toMAccount
- amount
title: mAccount
description: disbursement to mAccount
type: object
properties:
disbursementMethod:
type: string
enum:
- 'mAccount'
description:
type: string
description: description for the transaction
example: 'disbursement to mAccount'
toMAccount:
type: string
example: '6279059726039800'
description: 16-Digit account number that uniquely identifies the mAccount
minLength: 16
maxLength: 16
amount:
type: number
format: decimal
example: 10
minimum: 0.01
description: This is the amount of funds to be paid
disbursementMethod.mWallet:
required:
- disbursementMethod
- toMWallet
- token
- amount
title: mWallet
type: object
description: disbursement to mWallet
properties:
disbursementMethod:
type: string
enum:
- 'mWallet'
description:
type: string
description: description for the transaction
example: 'disbursement to mWallet'
toMWallet:
type: string
example: '6279059729909082'
description: 16-Digit account number that uniquely identifies the mWallet
minLength: 16
maxLength: 16
amount:
type: number
format: decimal
example: 10
minimum: 0.01
description: This is the amount of funds to be paid
disbursementMethod.directCredit:
required:
- disbursementMethod
- toDirectCreditDetails
- amount
title: directCredit
type: object
description: disbursement to directCredit
properties:
disbursementMethod:
type: string
example: directCredit
enum:
- 'directCredit'
description:
type: string
description: description for the transaction
example: 'disbursement to directCredit'
toDirectCreditDetails:
required:
- bsbNumber
- accountNumber
- accountName
type: object
properties:
bsbNumber:
type: string
example: '062-205'
description: BSB (Bank-State-Branch) number. The format is a string in the following format: ‘999-999’.
accountNumber:
type: string
example: 123456789
pattern: ^[a-zA-Z0-9]*\z
maxLength: 9
description: This is the bank account number.
accountName:
type: string
example: 'Monoova Payments'
maxLength: 32
minLength: 2
description: This is the name of the account. Minimum length is 2, Max length is 32.
pattern: >
@"^[a-zA-Z0-9 \.\(\+\$\*\)\^\[\];\-\/,%_?:#@'=&!]*$"
sourceAccountBsb:
type: string
example: '802-985'
description: BSB allocated to your Monoova account.
This information will be visible on the Payees bank statement.
sourceAccountNumber:
type: string
example: '654378888'
description: An open, valid Automatcher belonging to your Monoova account.
This information will be visible on the Payees bank statement.
amount:
type: number
format: decimal
example: 10
minimum: 0.01
description: This is the amount of funds to be paid
lodgementReference:
type: string
example: 'monoova-123'
maxLength: 18
description: Reference will appear on payees statement.
Refer to the disbursement object, May be overwritten for some account configurations,
contact us for more details.
pattern: >
@"^[a-zA-Z0-9 \.\(\+\$\*\)\^\[\];\-\/,%_?:#@'=&!]*$"
disbursementMethod.ABAToken:
required:
- disbursementMethod
- amount
- toToken
title: ABAToken
type: object
description: disbursement to token
properties:
disbursementMethod:
type: string
enum:
- 'token'
description:
type: string
description: description for the transaction
example: disbursement to ABAToken
toToken:
type: string
example: 552489dac-5239-11ed-8a2f-d32b5c8d034c
description: The text (GUID) that identifies the token
amount:
type: number
format: decimal
example: 10
minimum: 0.01
description: This is the amount of funds to be paid
lodgementReference:
type: string
example: 'monoova-123'
maxLength: 18
description: Reference will appear on payees statement.
Refer to the disbursement object,
May be overwritten for some account configurations,contact us for more details.
pattern: >
@"^[a-zA-Z0-9 \.\(\+\$\*\)\^\[\];\-\/,%_?:#@'=&!]*$"
disbursementMethod.NppCreditBankAccount:
required:
- disbursementMethod
- toNppCreditBankAccountDetails
- amount
title: NppCreditBankAccount
type: object
description: disbursement to NppCreditBankAccount
properties:
disbursementMethod:
type: string
enum:
- 'NppCreditBankAccount'
description:
type: string
description: description for the transaction
example: disbursement to NppCreditBankAccount
toNppCreditBankAccountDetails:
required:
- bsbNumber
- accountNumber
- accountName
type: object
properties:
bsbNumber:
type: string
example: '062-205'
description: BSB (Bank-State-Branch) number. The format is a string in the following format: ‘999-999’.
accountNumber:
type: string
pattern: ^[a-zA-Z0-9]*\z
example: 123456789
maxLength: 28
description: This is the bank account number.
accountName:
type: string
example: 'Monoova Payments'
minLength: 2
description: This is the name of the account.
endToEndId:
type: string
example: 'ABC/123-4356'
maxLength: 35
description: Osko End to End identifier submitted by Payer.
remitterName:
type: string
example: 'Monoova123'
maxLength: 140
description: Remitting Entity.
Note: Remitter name must not be able to be mistaken for another entity (e.g. ATO) and we will do checks.
sourceAccountBsb:
type: string
example: '802-985'
description: BSB allocated to your Monoova account.
This information will be visible on the Payees bank statement.
sourceAccountNumber:
type: string
example: '654378888'
description: An open, valid Automatcher belonging to your Monoova account.
This information will be visible on the Payees bank statement.
amount:
type: number
format: decimal
example: 10
minimum: 0.01
description: This is the amount of funds to be paid
lodgementReference:
type: string
example: 'Test Monoova'
maxLength: 280
description: Reference will appear on payees statement. Refer to the disbursement object, May be overwritten for some account configurations, contact us for more details.
disbursementMethod.NppCreditPayId:
required:
- disbursementMethod
- toNppCreditPayIdDetails
- amount
title: NppCreditPayId
type: object
description: disbursement to NppCreditPayId
properties:
disbursementMethod:
type: string
enum:
- 'NppCreditPayId'
description:
type: string
description: description for the transaction
example: disbursement to NppCreditPayId
toNppCreditPayIdDetails:
type: object
required:
- payIdType
- payId
- accountName
properties:
payId:
type: string
example: 'MW9GM4@monoova.me'
maxLength: 256
description: PayId Identifier of the Payee.
payIdType:
type: string
example: 'Email'
enum:
- 'ABN'
- 'Email'
- 'PhoneNumber'
- 'OrganisationId'
- 'ACN'
description: PayId Type. Possible values: ABN, Email, PhoneNumber, OrganisationId, ACN. See PAYID Format Validation.
accountName:
type: string
example: 'Monoova Payments'
minLength: 2
description: This is the name of the account.
endToEndId:
type: string
example: 'ABC/123-4356'
maxLength: 35
description: Osko End to End identifier submitted by Payer.
remitterName:
type: string
example: 'Monoova123'
maxLength: 140
description: Remitting Entity.
Note: Remitter name must not be able to be mistaken for another entity (e.g. ATO) and we will do checks.
sourceAccountBsb:
type: string
example: '802-985'
description: BSB allocated to your Monoova account.
This information will be visible on the Payees bank statement.
sourceAccountNumber:
type: string
example: '654378888'
description: An open, valid Automatcher belonging to your Monoova account.
This information will be visible on the Payees bank statement.
amount:
type: number
format: decimal
example: 10
minimum: 0.01
description: This is the amount of funds to be paid
lodgementReference:
type: string
example: 'Test Monoova'
maxLength: 280
description: Reference will appear on payees statement. Refer to the disbursement object, May be overwritten for some account configurations, contact us for more details.
# Response Body
receivablesCreateResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: Account is being setup for Npp. Please allow a few minutes for the account to become active
bsb:
description: The BSB number corresponding to the bank account number. Automatcher's BSB.
type: string
example: '802-985'
bankAccountNumber:
description: The bank account number generated.
type: string
example: '153884104'
bankAccountName:
description: The name of the account to be paid into. This will be defaulted to your registered Trading Name.
type: string
example: Bank1234444
clientUniqueId:
description: A identifier assigned to the account. Must be unique. If not provided Monoova will generate and return a value automatically.
type: string
example: 862944D057FC408B9B04541C2BA12
isActive:
description: Used to open and close account numbers. Closed account numbers will return all payments made to that account number.
type: boolean
example: false
type: object
receivablesStatusSetResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
bsb:
description: The BSB number corresponding to the bank account number.
type: string
example: '123-123'
bankAccountNumber:
description: The bank account number for which isActive has been updated.
type: string
example: '153884104'
bankAccountName:
description: The name of the account to be paid into. This will be defaulted to your registered Trading Name.
type: string
example: Bank1234444
clientUniqueId:
description: The unique identifier for which isActive has been updated.
type: string
example: 862944D057FC408B9B04541C2BA12
isActive:
description: The value for isActive after update. true or false.
type: boolean
example: false
type: object
receivablesStatusGetResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
bsb:
description: The BSB number corresponding to the bank account number.
type: string
example: '123-123'
bankAccountNumber:
description: The bank account number for which isActive has been updated.
type: string
example: '153884104'
bankAccountName:
description: The name of the account to be paid into. This will be defaulted to your registered Trading Name.
type: string
example: Bank1234444
clientUniqueId:
description: A identifier assigned to the account. Must be unique.
type: string
example: 862944D057FC408B9B04541C2BA12
isActive:
description: The current value for isActive. Closed account numbers will return all payments made to that account number
type: boolean
example: true
type: object
receivablesReportLastSettlement_V1:
properties:
durationMs:
description: This value represents the total time in milliseconds that the Platform took to process the request.
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
dateTime:
description: Datetime of the last settlement received.
type: string
example: '21/5/2019 2:11:28 PM'
type: object
receivablesBatchCreate_V1:
properties:
DurationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
Status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
StatusDescription:
description: This is a plain English description of the status.
type: string
example: 'To view the batch Create result please use the URL https://samplefileurl.com.au/moapi/receivables/v1/download/BatchCreateResponse_20190621105139'
NumberOfRecords:
description: Number of records parsed in the batch file.
type: number
example: 5
BatchUrl:
description: URL to access the response report.
type: string
example: 'https://samplefileurl.com.au/moapi/receivables/v1/download/BatchCreateResponse_20190621105139'
type: object
receivablesBatchStatus_V1:
properties:
DurationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
Status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
StatusDescription:
description: This is a plain English description of the status.
type: string
example: 'To view the batch Status result please use the URL https://samplefileurl.com.au/moapi/receivables/v1/download/BatchStatusResponse_20190621105139'
NumberOfRecords:
description: Number of records parsed in the batch file.
type: number
example: 9
BatchUrl:
description: URL to access the response report.
type: string
example: 'https://samplefileurl.com.au/moapi/receivables/v1/download/BatchStatusResponse_20190621105139'
type: object
receivablesRefundResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: 'Operation completed successfully'
callerUniqueReference:
description: This is a unique reference generated by the calling service. This is a nonce. Its use is to determine if a request has already been received by the Engine.
type: string
example: Reference3314462
feeAmountExcludingGst:
description: This is the fee amount excluding GST
type: number
format: decimal
example: 0.6000
feeAmountGstComponent:
description: This is the GST Component of the fee amount that has been debited from your mAccount
type: number
format: decimal
example: 0.0600
feeAmountIncludingGst:
description: This is the total fee amount Including GST that has been debited from your mAccount
type: number
format: decimal
example: 0.6600
transactionId:
description: This is the Platform ID that is unique to your payment request
type: integer
example: 16793357
type: object
receivablesListAccounts_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: 'To view the ListAccounts result please use the URL https://samplefileurl.com.au/moapi/receivables/v1/download/BatchListAccounts_20190621105139'
NumberOfRecords:
description: Number of records parsed in the batch file.
type: number
example: 12
batchUrl:
description: URL to access the response report.
type: string
example: 'https://samplefileurl.com.au/moapi/receivables/v1/download/BatchListAccounts_20190621105139'
type: object
receivablesProcessDirectDebitResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: 'Operation completed successfully'
uniqueReferenced:
description: This is your uniqueReference that was passed in when the transaction was executed
type: string
example: '7cac95f8-6c9f-40e7-aa44-d058f601ee71'
transactionId:
description: This is the transactionId that was returned when the transaction was executed
type: integer
format: int32
example: 16875766
feeAmountExcludingGst:
description: This is the fee amount Excluding GST that has been debited from your mAccount
type: number
format: decimal
example: 0.1000
feeAmountGstComponent:
description: This is the GST Component of the fee amount that has been debited from your mAccount
type: number
format: decimal
example: 0.0100
feeAmountIncludingGst:
description: This is the total fee amount Including GST that has been debited from your mAccount
type: number
format: decimal
example: 0.1100
type: object
receivablesCreateWhiteListingAccountResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: 'Operation completed successfully'
automatcherBankAccountNumber:
description: Valid receivables bank account number belonging to the Sign-in mAccount.
type: string
example: '311673871'
sourceAccount:
description: Object containing source account details
type: object
properties:
accountName:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: string
example: 'Monoova Source Account Name'
accountNumber:
description: 3 to 9 digits.
type: string
example: '123456789'
accountStatus:
description: This is a plain English description of the status. enabled/disabled.
type: string
example: 'enabled'
bsbNumber:
description: 6 digits with a '-'.
type: string
example: '802-985'
id:
description: identifier for whiteList sourceAccount
type: integer
example: 107
type: object
receivablesUpdateWhiteListingAccountResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: 'Operation completed successfully'
automatcherBankAccountNumber:
description: Valid receivables bank account number belonging to the Sign-in mAccount.
type: string
example: '311673871'
sourceAccount:
description: Object containing source account details
type: object
properties:
accountName:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: string
example: 'Monoova Source Account Name'
accountNumber:
description: 3 to 9 digits.
type: string
minLength: 3
maxLength: 9
example: '123456789'
accountStatus:
description: This is a plain English description of the status. enabled/disabled.
type: string
example: 'disabled'
bsbNumber:
description: 6 digits with a '-'.
type: string
example: '802-985'
id:
description: identifier
type: integer
example: 107
type: object
receivablesGetWhiteListingAccountsResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: 'Operation completed successfully'
automatcherBankAccountNumber:
description: Valid receivables bank account number belonging to the Sign-in mAccount.
type: string
example: '311673871'
sourceAccount:
description: Object containing source account details
type: array
items:
allOf:
- $ref: '#/components/schemas/receivablesGetWhiteListingAccountsResponseArrayItem1'
- $ref: '#/components/schemas/receivablesGetWhiteListingAccountsResponseArrayItem2'
receivablesGetWhiteListingAccountsResponseArrayItem1:
type: object
description: Object containing source account details
properties:
accountName:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: string
example: 'Monoova Source Account Name'
accountNumber:
description: 3 to 9 digits.
type: integer
example: 123456789
accountStatus:
description: This is a plain English description of the status. enabled/disabled.
type: string
example: 'disabled'
bsbNumber:
description: 6 digits with a '-'.
type: string
example: '802-985'
id:
description: identifier for whiteList sourceAccount
type: integer
example: 107
receivablesGetWhiteListingAccountsResponseArrayItem2:
type: object
description: Object containing source account details
properties:
accountName:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: string
example: 'Monoova Source Account Name'
accountNumber:
description: 3 to 9 digits.
type: integer
example: 987654321
accountStatus:
description: This is a plain English description of the status. enabled/disabled.
type: string
example: 'enabled'
bsbNumber:
description: 6 digits with a '-'.
type: string
example: '802-985'
id:
description: identifier for whiteList sourceAccount
type: integer
example: 108
receivablesRegisterPayIdResponse_V1:
type: object
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
PayIdDetails:
type: object
properties:
BankAccountNumber:
description: The bank account number for the account against which you are trying to Register a PayID
type: string
example: '123409870'
PayId:
description: 'Email address for the PayID. Max length: 256'
type: string
example: 'f3y237@monoova.me'
PayIdName:
description: 'Name displayed to the payers in order to identify you'
type: string
example: John Smith
PayIdStatus:
description: 'Status of your PayID. Possible values: Enable, Disable, Deregister, Port'
type: string
enum:
- Enable
- Disable
- Deregister
- Port
example: Enable
receivablesUpdatePayIdStatusResponse_V1:
type: object
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: 'Operation completed successfully'
receivablesUpdatePayIdNameResponse_V1:
type: object
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
receivablesEnquiryPayIdResponse_V1:
type: object
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
BankAccountNumber:
description: The bank account number for the account against which you are trying to Register a PayID
type: string
example: '111111012345678'
LastResolutionDateTime:
description: 'Datetime this PayId was last resolved'
type: string
example: '2019-03-17T07:45:00.000Z'
LastUpdatedDateTime:
description: ''
type: string
example: '2019-03-14T00:44:53.000Z'
PayIdName:
description: 'Name displayed to the payers in order to identify you'
type: string
example: John Smith
RegistrationDateTime:
description: ''
type: string
example: '2019-03-14T00:44:53.000Z'
Status:
description: 'Status of your PayID. Possible values: Enable, Disable, Deregister, Port'
type: string
example: 'Enable'
enum:
- Enable
- Disable
- Deregister
- Port
subscriptionsCreateResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
id:
description: Unique id for the subscription
type: integer
example: 2
dateTime:
description: Date time the subscription was last updated
type: string
example: '11/14/2019 3:41:05 PM'
eventName:
description: 'The type of event to be sent to this URL via callback. Possible values: NPPReceivePayment'
type: string
example: NPPReceivePayment
targetUrl:
description: 'This is the API endpoint where the call back notification will be sent.'
type: string
example: 'http://www.abc.com.au'
type: object
subscriptionsUpdateResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
id:
description: Unique id for the subscription
type: integer
example: 1
dateTime:
description: Date time the subscription was last updated
type: string
example: '11/14/2019 3:41:05 PM'
eventName:
description: 'The type of event to be sent to this URL via callback. Possible values: NPPReceivePayment'
type: string
example: NPPReceivePayment
targetUrl:
description: 'This is the API endpoint where the call back notification will be sent.'
type: string
example: 'http://www.abc1.com.au'
type: object
subscriptionsListResponse_V1:
type: object
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
eventname:
description: List of Subscription Items
type: array
items:
$ref: '#/components/schemas/subscriptionsListItems'
subscriptionsListItems:
type: object
properties:
eventName:
type: string
example: NPPReceivePayment
description: 'The type of event to be sent to this URL via callback. Possible values: NPPReceivePayment'
id:
type: integer
example: 1
description: 'Unique id for the subscription that needs to be updated'
targetUrl:
type: string
example: 'http://www.abc1.com.au'
description: 'This is the API endpoint where the call back notification will be sent.'
status:
type: string
default: 'Off'
example: 'On'
description: This is the Subscription Status. Can be On/off
LastUpdated:
type: string
example: '11/14/2019 3:41:05 PM'
description: Last Updated Time
createdDate:
type: string
example: '11/14/2019 3:41:05 PM'
description: Created Time
subscriptionsDeleteResponse_V1:
type: object
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
subscriptionsResendResponse_V2:
type: object
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
subscriptionsReport_V1:
type: object
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
notifications:
description: Object containing notification details
type: array
items:
$ref: '#/components/schemas/NotificationResponse'
NotificationResponse:
type: object
properties:
dateTime:
description: Date time the subscription was last updated
type: string
example: '11/14/2019 3:41:05 PM'
eventName:
type: string
example: 'NPPReceivePayment'
maxLength: 50
enum:
- NPPReceivePayment
- InboundDirectCredit
- InboundDirectDebit
- DirectEntryDishonour
description: The type of event to be sent to this URL via callback.
lastResponseCode:
type: integer
description: last response code received
lastRetryDateTime:
description: Date time the last retry was done
type: string
example: '11/14/2019 3:41:05 PM'
retryCount:
type: integer
description: Number of retry
status:
type: string
example: 'Error'
enum:
- Error
- Sent
url:
type: string
example: 'api.mpay.com/URL1'
webhookId:
description: 'Unique Id to identify this webhook notification.'
type: integer
example: 678901
# DTO
# Bpay
DTO.BPAYBiller_V1:
properties:
billerCode:
description: This is the BPAY biller code that was requested. billerCodemust be numeric
type: string
example: '857763'
uniqueItems: false
billerLongName:
description: A long description of the billername
type: string
example: Monoova FINANCE PTY LTD
uniqueItems: false
billerShortName:
description: A short decription of the billername
type: string
example: Monoova
uniqueItems: false
acceptedPaymentMethods:
description: Must be set to “1”. Field reserved for future expansion
type: string
example: '1'
uniqueItems: false
activationDate:
description: 'Date this biller was activated for BPAY. ISO 8601 date format with time set to 00:00:00. Note that Timezone is suppressed.The example Timezone is Sydney local time'
type: string
example: '2013-05-29T00:00:00'
uniqueItems: false
deactivationDate:
description: 'Date this biller was deactivated for BPAY. ISO 8601 date format with time set to 00:00:00 or an empty string if not deactivated.Note that Timezone is suppressed.The example Timezone is Sydney local time'
type: string
example: ''
uniqueItems: false
minPaymentAmount:
description: This is the minimum amount that the BPAY biller associated with the billerCodeaccepts for bill payment
type: number
format: decimal
example: 10
uniqueItems: false
maxPaymentAmount:
description: This is the maximum amount that the BPAY biller associated with the billerCodeaccepts for bill payment
type: number
format: decimal
example: 100000
uniqueItems: false
crnValidationRuleName:
description: For internal use only. Set to an empty string
type: string
example: ''
uniqueItems: false
checkDigitRuleName:
description: For internal use only. Set to an empty string
type: string
example: ''
uniqueItems: false
lengthMask:
description: A mask in which the position of each ‘Y’ character indicates each valid length that the reference number can take.At least one ‘Y’ character will be present
type: string
example: ' Y '
uniqueItems: false
fixedDigits:
description: 'This describes which, if any, fixed digits that are standard in the BPAY Customer Reference Number'
type: string
example: '627905 '
uniqueItems: false
isVariableCrn:
description: 'Indicates whether BPAY Customer Reference Numbers (CRN) for this billerchanges for each individual customer’s bill or do they remain the same.Non variable CRNs can be stored and used later, however they must always be validated as part of paying a bill via the gateway.Variable CRNs should not be stored as they are incorrect for subsequent bills. '
type: boolean
example: false
uniqueItems: false
type: object
DTO.BPAYReceipt_V1:
properties:
billerCode:
description: This is the BPAY biller code that was requested. billerCodemust be numeric
type: string
example: '123451'
uniqueItems: false
billerName:
description: This is the BPAY biller long name associated with the billerCode
type: string
example: PTY LTD
uniqueItems: false
receiptNumber:
description: BBPAY receipt Number.
type: string
example: '12334123'
uniqueItems: false
referenceNumber:
description: BBPAY Customer Reference Number. If this field is empty this denotes that the customerReferenceNumber is variable for each bill and should not be reused
type: string
example: '1223451324343434'
uniqueItems: false
status:
description: Status of BPAY receipts
type: string
example: 'Paid'
uniqueItems: false
transactionDateTime:
description: 'The date time that the transaction was executed on the Platform Servers. Format is ISO8601 - 2015 -09 - 01T19: 19:58'
type: string
example: '2022-05-09T13:11:38'
uniqueItems: false
voidDateTime:
description: The date time that the transaction was void on the Platform Servers
type: string
example: ''
uniqueItems: false
type: object
DTO.BPAYBillerResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
biller:
$ref: '#/components/schemas/DTO.BPAYBiller_V1'
type: object
DTO.BPAYReceiptResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
receipts:
type: array
items:
$ref: '#/components/schemas/DTO.BPAYReceipt_V1'
uniqueItems: false
type: object
DTO.BPAYBillersResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
search:
description: Text string to search for
type: string
example: pty ltd
uniqueItems: false
totalCount:
description: The total number of BPAYBiller’s that match the search criteria
type: integer
format: int32
example: 4984
uniqueItems: false
skip:
description: The search string
type: integer
format: int32
example: 0
uniqueItems: false
take:
description: The number of records that were requested
type: integer
format: int32
example: 50
uniqueItems: false
billers:
type: array
items:
$ref: '#/components/schemas/DTO.BPAYBiller_V1'
uniqueItems: false
type: object
DTO.BPayHistoryItem_V1:
properties:
billerCode:
description: BPAY Biller code
type: string
example: '23796'
uniqueItems: false
customerReferenceNumber:
description: BBPAY Customer Reference Number. If this field is empty this denotes that the customerReferenceNumber is variable for each bill and should not be reused
type: string
example: '2000046986210'
uniqueItems: false
billerName:
description: Long form of the BPAY Biller Name
type: string
example: TELSTRA CORPORATION LTD
uniqueItems: false
count:
description: The number of usages of these detailsthat the mWallet has succeeded in paying previously
type: integer
format: int32
example: '27'
uniqueItems: false
type: object
DTO.BPAYHistoryResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
history:
type: array
items:
$ref: '#/components/schemas/DTO.BPayHistoryItem_V1'
uniqueItems: false
type: object
DTO.BPAYValidation_V1:
properties:
billerCode:
description: This is the BPAY biller code that was used to validate. billerCode must be numeric
type: string
example: '857763'
uniqueItems: false
customerReferenceNumber:
description: This is the BPAY customer reference number that was used to validate. customerReferenceNumber must be numeric
type: string
example: '6279059700000505'
uniqueItems: false
amount:
description: This is the amount that was used to validate. The maximum value of the field is $9999999999.99 however BPAY Billers will generally restrict the maximum value accepted for bill payment
type: string
example: '100'
uniqueItems: false
billerName:
description: This is the BPAY biller long name associated with the billerCode
type: string
example: Monoova FINANCE PTY LTD
uniqueItems: false
isVariableCrn:
description: 'Indicates whether BPAY Customer Reference Numbers(CRN) for this biller change for each individual customer’s bill or do they remain the same.Non variable CRNs can be stored and used later, however they must always be validated as part of paying a bill via the gateway.Variable CRNs should not be stored as they are incorrect for subsequent bills.'
type: boolean
example: false
uniqueItems: false
minimumPaymentAmount:
description: This is the minimum amount that the BPAY biller associated with the billerCode accepts for bill payment
type: number
format: decimal
example: 10
uniqueItems: false
maximumPaymentAmount:
description: This is the maximum amount that the BPAY biller associated with the billerCode accepts for bill payment
type: number
format: decimal
example: 100000
uniqueItems: false
type: object
DTO.GenericPayment.CreateOneShotSecurityTokenResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
oneShotSecurityToken:
description: The token to use instead of UserName
type: string
example: 2215125a-b80b-41aa-af58-740d21b303ed
type: object
format: DTO.GenericPayment.CreateOneShotSecurityTokenResponse_V1
DTO.GenericPayment.disbursementFee_V1:
properties:
method:
description: 'The type of Disbursement: mAccount, mWallet, DirectCredit, BPAY, Charity, Sign-In mAccount'
type: string
example: BPay
uniqueItems: false
feePercentageExGst:
description: The percentage of the amountto be taken as a fee Excluding GST
type: number
format: decimal
example: '0'
uniqueItems: false
feeFixedExGst:
description: The fixed amount to be taken as a fee Excluding GST
type: number
format: decimal
example: '0.4546'
uniqueItems: false
type: object
format: DTO.GenericPayment.disbursementFee_V1
DTO.GenericPayment.DirectDebitFee:
properties:
directDebitArrayIndex:
description: This is the index into the Disbursement array that was passed to either financials/v2/transaction/validate or financials/v2/transaction/execute
type: integer
format: int32
example: 0
uniqueItems: false
directDebitFee:
$ref: '#/components/schemas/DTO.GenericPayment.FeeDetail'
type: object
DTO.GenericPayment.DisbursmentFee:
properties:
disbursementArrayIndex:
description: This is the index into the Disbursement array that was passed to either financials/v2/transaction/validate or financials/v2/transaction/execute
type: integer
format: int32
example: 0
uniqueItems: false
disbursementFee:
$ref: '#/components/schemas/DTO.GenericPayment.FeeDetail'
type: object
DTO.GenericPayment.FeeBreakdown:
properties:
debitFee:
$ref: '#/components/schemas/DTO.GenericPayment.FeeDetail'
disbursementFees:
description: 'Returns an array for disbursementFee, which is the fee details for each disbursement.'
type: array
items:
$ref: '#/components/schemas/DTO.GenericPayment.DisbursmentFee'
uniqueItems: false
bulkDirectDebitFees:
description: 'Returns an array for bulkDirectDebitFees, which is the fee details for each disbursement.'
type: array
items:
$ref: '#/components/schemas/DTO.GenericPayment.DirectDebitFee'
uniqueItems: false
type: object
DTO.GenericPayment.FeeDetail:
properties:
feeAmountExcludingGst:
description: The fee amount excluding GST
type: number
format: decimal
example: 0.1
uniqueItems: false
feeAmountGstComponent:
description: The GST component of the fee
type: number
format: decimal
example: 0.01
uniqueItems: false
feeAmountIncludingGst:
description: The fee amount including GST
type: number
format: decimal
example: 0.11
uniqueItems: false
type: object
DTO.GenericPayment.GatewayTransactionStatus.BulkDirectDebit:
type: object
properties:
index:
type: integer
example: 0
description: The index of the transaction in the bulk process.
bsb:
type: string
example: '123-444'
description: BSB (Bank-State-Branch) number. The format is a string ‘XXX-XXX’.
accountNumber:
type: string
example: '12349876'
description: The bank account number.
amount:
type: number
format: double
example: 5.00
description: The amount of the transaction.
lodgementReference:
type: string
example: '1234'
description: Reference for the lodgement.
dishonouredDate:
type: string
format: date-time
example: null
description: The date on which the transaction was dishonoured, if applicable.
dishonouredReason:
type: string
example: null
description: The reason for the transaction being dishonoured, if applicable.
status:
type: string
example: 'WaitingOnClearedFunds'
description: The current status of the transaction.
DTO.GenericPayment.GatewayTransactionStatus:
properties:
completedDate:
type: string
uniqueItems: false
example: '2020-01-17'
uniqueReference:
type: string
uniqueItems: false
example: Reference12345678
statusDescription:
type: string
uniqueItems: false
example: DirectDebit to SignInmAccount
transactionStatus:
type: string
uniqueItems: false
example: Complete
dishonouredDate:
type: string
uniqueItems: false
example: null
creditCardPaymentStatus:
type: object
example: null
waitingOnClearedFundsDate:
type: string
uniqueItems: false
example: null
bulkDirectDebits:
type: array
items:
$ref: '#/components/schemas/DTO.GenericPayment.GatewayTransactionStatus.BulkDirectDebit'
type: object
DTO.GenericPayment.GatewayTransactionStatus2Response_v2:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
statuses:
type: array
items:
$ref: '#/components/schemas/DTO.GenericPayment.GatewayTransactionStatus'
type: object
format: DTO.GenericPayment.GatewayTransactionStatus2Response_v2
DTO.GenericPayment.GatewayTransactionStatusResponse_v2:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors.
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
completedDate:
description: This is the date when the transaction was Completed.
type: string
example: '2021-01-17'
creditCardPaymentStatus:
description: This field is filled If transaction type is Credit-Card.
type: string
example: null
dishonouredDate:
description: once transaction is dishonoured with the transactionStatus set to 'Dishonoured' and the dishonouredDate has a value.
type: string
example: null
expectedClearanceDateForFunds:
description: expected clearance date for funds if applicable.
type: string
example: null
fundsClearedDate:
description: clearance date for funds if applicable. "yyyy-MM-dd" format.
type: string
example: null
transactionStatus:
description: The transaction has not yet been dishonoured if the transactionStatus is 'Complete'. The transaction is dishonoured when the transactionStatus is set to 'Dishonoured' and the dishonouredDate has a value.
type: string
example: Complete
enum:
- Complete
- Pending
- Rejected
- Dishonoured
- WaitingOnClearedFunds
uniqueReference:
description: This is the unique reference that was passed in by the calling service.
type: string
example: e1185a86-00a5-4d81-843d-2ea266b074f9
bulkDirectDebits:
type: array
items:
$ref: '#/components/schemas/DTO.GenericPayment.GatewayTransactionStatus.BulkDirectDebit'
type: object
format: DTO.GenericPayment.GatewayTransactionStatusResponse_v2
DTO.GenericPayment.GatewayTransactionValidate_V2:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
transactionId:
description: Always 0
type: integer
format: int32
example: 0
uniqueItems: false
feeAmountExcludingGst:
description: This is the fee amount Excluding GST that has been debited from your mAccount
type: number
format: decimal
example: 0.2
uniqueItems: false
feeAmountGstComponent:
description: This is the GST Component of the fee amount that has been debited from your mAccount
type: number
format: decimal
example: 0.02
uniqueItems: false
feeAmountIncludingGst:
description: This is the total fee amount Including GST that has been debited from your mAccount
type: number
format: decimal
example: 0.22
uniqueItems: false
callerUniqueReference:
description: This is the unique reference that was passed in by the calling service
type: string
example: e1185a86-00a5-4d81-843d-2ea266b074f8
uniqueItems: false
feeBreakdown:
$ref: '#/components/schemas/DTO.GenericPayment.FeeBreakdown'
type: object
DTO.GenericPayment.GenericFinanceResponse_V2:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
transactionId:
description: 'This is the Platform ID that is unique to your payment request. 0 will be returned if any errors occurred.'
type: integer
format: int32
example: 10926364
uniqueItems: false
feeAmountExcludingGst:
description: This is the fee amount excluding GST
type: number
format: decimal
example: 0.2
uniqueItems: false
feeAmountGstComponent:
description: This is the GST Component of the fee amount that has been debited from your mAccount
type: number
format: decimal
example: 0.02
uniqueItems: false
feeAmountIncludingGst:
description: This is the total fee amount Including GST that has been debited from your mAccount
type: number
format: decimal
example: 0.22
uniqueItems: false
callerUniqueReference:
description: This is the unique reference that was passed in by the calling service
type: string
example: e1185a86-00a5-4d81-843d-2ea266b074f8
uniqueItems: false
feeBreakdown:
$ref: '#/components/schemas/DTO.GenericPayment.FeeBreakdown'
type: object
DTO.GenericPayment.GenericPaymentSettlementItem_V1:
properties:
uniqueReferenced:
description: This is your uniqueReference that was passed in when the transaction was executed
type: string
example: '43257383821'
uniqueItems: false
transactionId:
description: This is the transactionId that was returned when the transaction was executed
type: integer
format: int32
example: 43343
uniqueItems: false
disbursementAmount:
description: This is the settlement or the requested disbursement amount
type: number
format: decimal
example: 25
uniqueItems: false
disbursementMethod:
description: This is the disbursementMethod that was used to make the settlement payment
type: string
example: bpay
feeAmountExclGst:
description: This is the fee amount Excluding GST that has been debited from your mAccount
type: number
format: decimal
example: 0.335
feeAmountGstComponent:
description: This is the GST Component of the fee amount that has been debited from your mAccount
type: number
format: decimal
example: 0.0335
feeAmountInclGst:
description: This is the total fee amount Including GST that has been debited from your mAccount
type: number
format: decimal
example: 0.3685
type: object
DTO.GenericPayment.GenericPaymentSettlementResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
settlements:
description: An array of SettlementItem’s
type: array
items:
$ref: '#/components/schemas/DTO.GenericPayment.GenericPaymentSettlementItem_V1'
type: object
format: DTO.GenericPayment.GenericPaymentSettlementResponse_V1
DTO.GenericPayment.GenericPaymentStatementItem_V1:
properties:
uniqueReferenced:
description: This is your uniqueReference that was passed in when the transaction was executed
type: string
example: '43257'
uniqueItems: false
transactionId:
description: This is the transactionId that was returned when the transaction was executed
type: integer
format: int32
example: 36
uniqueItems: false
dateTime:
description: 'The date time that the transaction was executed on the Platform Servers. Format is ISO8601 - 2015 -09 - 01T19: 19:58'
type: string
example: '2018-09-01T19:19:38'
uniqueItems: false
status:
description: 'This is the status of executing the request. A code of ‘Ok’ indicates no errors. '
type: string
example: OK
uniqueItems: false
totalAmount:
description: This is the total amount of the transaction what was disbursed
type: number
format: decimal
example: 25
feeAmountExcludingGst:
description: This is the fee amount Excluding GST that has been debited from your mAccount
type: number
format: decimal
example: 0.335
feeAmountGstComponent:
description: This is the GST Component of the fee amount that has been debited from your mAccount
type: number
format: decimal
example: 0.0335
feeAmountIncludingGst:
description: This is the total fee amount Including GST that has been debited from your mAccount
type: number
format: decimal
example: 0.3685
type: object
DTO.GenericPayment.GenericPaymentStatementResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
transactions:
description: An array of TransactionItem’s
type: array
items:
$ref: '#/components/schemas/DTO.GenericPayment.GenericPaymentStatementItem_V1'
type: object
format: DTO.GenericPayment.GenericPaymentStatementResponse_V1
DTO.GenericPayment.loadFee_V1:
properties:
method:
description: 'The type of Disbursement: mAccount, mWallet, DirectCredit, BPAY, Charity, Sign-In mAccount'
type: string
example: BPAY
uniqueItems: false
cardType:
description: 'Type of credit card. Null if method is not CreditCard: Mastercard, Visa, Diners, Amex'
type: string
example: Amex
uniqueItems: false
debitFromMAccount:
description: ' Contains the 16-Digit if the fee is associated to a specific mAccount, otherwise null'
type: string
example: 'null'
uniqueItems: false
feePercentageExGst:
description: The percentage of the amountto be taken as a fee Excluding GST
type: number
format: decimal
example: '3'
uniqueItems: false
feeFixedExGst:
description: The fixed amount to be taken as a fee Excluding GST
type: number
format: decimal
example: '0.25'
uniqueItems: false
type: object
DTO.GenericPayment.SettingsResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
disbursementFees:
description: An array of DisbursementFeeDetail
type: array
items:
$ref: '#/components/schemas/DTO.GenericPayment.disbursementFee_V1'
loadFees:
description: An array of LoadFeeDetai
type: array
items:
$ref: '#/components/schemas/DTO.GenericPayment.loadFee_V1'
canDebitCreditCards:
description: True if the Sign-In Account has permission to debit/Refund credit cards
type: boolean
example: true
canPayBpay:
description: True if the Sign-In Account has permission to make PBAY payments
type: boolean
example: true
canImpersonate:
description: True if the Sign-In Account has permission to use the security/v1/createImpersonationTokenAsIssuer
type: boolean
example: true
canDirectDebit:
description: True if the Sign-In Account has permission to Direct Debit an ABA
type: boolean
example: true
canDirectCredit:
description: True if the Sign-In Account has permission to Direct Credit an ABA
type: boolean
example: true
canCreateMAccounts:
description: True if the Sign-In Account has permission to create mAccounts
type: boolean
example: true
canCreateMWallets:
description: True if the Sign-In Account has permission to create mWallets
type: boolean
example: true
canAccessUserDatabase:
description: True if the Sign-In Account has permission to access the User Database
type: boolean
example: true
isIssuer:
description: True if the Sign-In Account is an issuer
type: boolean
example: true
issuerMAccountNumber:
description: 16-digit Account number of Issuer.
type: string
example: '0000000000000000'
monthlyFeeExGst:
description: The monthly fee(ExGst) for the Sign-In Account
type: number
format: decimal
example: '25'
clearingMAccountNumber:
description: 16-digit Account number of Sign-In Clearing Account
type: string
example: '6279059705699616'
feeMAccountNumber:
description: 16-Digit Account number of Fee Account if there is one
type: string
example: '6279059710265874'
feeMAccountMonthlyFeeExGst:
description: Monthly fee (ExGST) of the Sign-In Fee Account
type: number
format: decimal
example: '2'
childMAccountSetUpFeeExGst:
description: Set-up fee (ExGST) for each mAccount created via mAccount/v1/create
type: number
format: decimal
example: '0'
childMAccountMonthlyFeeExGst:
description: Monthly fee (ExGST) for each mAccount created vian mAccount/v1/create
type: number
format: decimal
example: '5'
requiresClearedFundsOnly:
description: "if 'true', acccount has set up as ClearedFunds"
type: boolean
example: true
type: object
format: DTO.GenericPayment.SettingsResponse_V1
DTO.UnclearedFundResult_v1:
type: object
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
transactions:
type: array
items:
$ref: '#/components/schemas/DTO.UnclearedTransaction_v1'
DTO.UnclearedTransaction_v1:
type: object
properties:
amount:
type: number
format: double
example: 40.00
minimum: 0.01
description: The total amount of the transaction.
transactionId:
type: integer
format: int32
example: 12312314
description: This is the Platform ID that is unique to your payment request. 0 will be returned if any errors occurred.
createdDate:
type: string
format: date-time
example: '2022-12-26T09:30:04'
description: This will be specified in Sydney local time in ISO 8601 Date Time format.
description:
type: string
example: 'Debit ABA BSB: 123-456 Account Number: 123456 Account Name: account'
maxLength: 500
description: Description of the transaction.
expectedClearanceDate:
type: string
format: date-time
example: '2022-12-30'
description: This will be specified in Sydney local time in ISO 8601 Date Time format.
feeAmountGstComponent:
type: number
example: 0.0190
description: This is the GST Component of the fee amount that has been debited from your mAccount.
feeAmountIncludingGst:
type: number
example: 0.2090
description: This is the total fee amount Including GST that has been debited from your mAccount.
feeamountExcludingGst:
type: number
example: 0.1900
description: This is the fee amount excluding GST.
uniqueReference:
type: string
example: 'ABC1234'
description: This is the unique reference that was passed in by the calling service.
# mAccount
DTO.mAccountClearedFundsAccount:
properties:
availableBalance:
description: available funds
type: number
format: decimal
example: 1250.3
uniqueItems: false
unclearedFunds:
description: on hold funds from Direct Debit transaction
type: number
format: decimal
example: 20
uniqueItems: false
uniqueReferencesWaitingToClear:
description: a list of uncleared funds transactions that are waiting to clear
type: array
items:
type: string
example: '12312312'
uniqueItems: true
type: object
DTO.mAccountCloseResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
type: object
format: DTO.mAccountCloseResponse_V1
DTO.mAccountCreateResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
accountNumber:
description: New 16-Digit mAccount account number
type: integer
example: 6279059700011434
uniqueItems: false
type: object
format: DTO.mAccountCreateResponse_V1
DTO.mAccountDetails:
properties:
accountNumber:
description: 16-Digit account number that uniquely identifies the mAccount
type: integer
example: 6279059700023123
uniqueItems: false
name:
description: Company name of the mAccount
type: string
example: Monoova Ltd
uniqueItems: false
abn:
description: Company ABN of the mAccount. All non numbers are stripped
type: string
example: '77106249852'
uniqueItems: false
contactName:
description: Contact name. Spaces are stripped
type: string
example: mPayRetail
uniqueItems: false
contactNumber:
description: Contact number. All non numbers are striped
type: string
example: 0295555555
uniqueItems: false
email:
description: Contact email. Converted to lowercase
type: string
example: mPayments@monoova.com
uniqueItems: false
addressLine1:
description: 'An optional postal addressline such as a Building, section or unit'
type: string
example: Level 6
uniqueItems: false
addressLine2:
description: An address line is the main postal address of the Company
type: string
example: 97 Pacific Highway
uniqueItems: false
suburb:
description: Postal address suburb
type: string
example: North Sydney
uniqueItems: false
state:
description: Postal addres sstate
type: string
example: NSW
uniqueItems: false
postCode:
description: Postal address post code
type: string
example: '2060'
uniqueItems: false
bsb:
description: BSB number of associated bank account. BSB format is ‘000-000’
type: string
example: 012-366
uniqueItems: false
bankAccountNumber:
description: Bank account number of associated bank account
type: string
example: '123456789'
uniqueItems: false
bankAccountTitle:
description: Bank account title or nameof associated bank account
type: string
example: Test Bank Account
uniqueItems: false
allowDuplicates:
description: 'If true, allow the creation of a new mAccount even though an existing mAccount with the same ABN exists'
type: boolean
example: true
uniqueItems: false
feeAccount:
type: integer
format: string
example: '6279059718791234'
financials:
$ref: '#/components/schemas/DTO.mAccountFinancials'
options:
description: an Array of mAccountOptionItem
type: array
items:
$ref: '#/components/schemas/DTO.OptionItem'
uniqueItems: false
type: object
DTO.mAccountFinancials:
properties:
accountNumber:
description: 16 digit mAccount Number
type: integer
format: string
example: 6279059778044302
actualBalance:
description: Balance of the mAccount
type: number
format: decimal
example: 1270.3
uniqueItems: false
clearedFundsOnly:
description: Whether mAccount is cleared funds
type: boolean
example: true
creditLimit:
description: mAccount credit limit
type: number
example: 10000.00
feeAccountActualBalance:
description: Balance of the feeAccount
type: number
format: decimal
example: 17.9850
uniqueItems: false
feeAccountNumber:
description: 16 digit feeAccount number (returns value if hasSeparateFeeAccount is 'true')
type: integer
format: string
example: '6279059718793620'
hasSeparateFeeAccount:
description: Whether mAccount has SeparateFeeAccount
type: boolean
example: true
lowerCreditLimit:
description: mAccount lower credit limit
type: number
example: 0.00
minimumSettlementAmount:
description: mAccount minimum SettlementAmount. minimum value is '0.02'
type: number
format: decimal
example: 0.02
settlementFrequency:
description: mAccount settlement frequency
type: string
example: 'None'
upperCreditLimit:
description: mAccount upper credit limit
type: number
example: 10000.00
availableToDebit:
description: mAccount debit available
type: number
example: 10000.00
availableToCredit:
description: mAccount credit available
type: number
example: 100000.00
nppBalance:
description: mAccount npp balance
type: number
example: 0.00
nppPayoutLimit:
description: mAccount payout limit
type: number
example: 100000.00
isFeeAccount:
description: whether mAccount is fee account
type: boolean
example: false
isParentAccount:
description: whether mAccount is parent account
type: boolean
example: true
isParentClearedFunds:
description: whether mAccount is parent account
type: boolean
example: null
clearedFundsAccountFinancials:
$ref: '#/components/schemas/DTO.mAccountClearedFundsAccount'
type: object
DTO.mAccountGetFinancialsResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
financials:
$ref: '#/components/schemas/DTO.mAccountFinancials'
type: object
format: DTO.mAccountGetFinancialsResponse_V1
DTO.mAccountGetResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
details:
$ref: '#/components/schemas/DTO.mAccountDetails'
type: object
format: DTO.mAccountGetResponse_V1
DTO.mAccountListResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
mAccounts:
description: Array of 16-Digit account numbers
type: array
items:
type: string
example: '6279059600000779'
uniqueItems: false
type: object
format: DTO.mAccountListResponse_V1
DTO.mAccountSendStatementResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
type: object
format: DTO.mAccountSendStatementResponse_V1
DTO.mAccountTransactionLineItem:
properties:
credit:
description: The amount of funds credited from the mAccount
type: number
format: decimal
example: 0
dateTime:
description: The time the transaction occurred in ISO 8601 date-time format. Note that Timezone is suppressed. The example Timezone is Sydney local time
type: string
example: '2017-11-18T19:06:09'
debit:
description: The amount of funds debited from the mAccount
type: number
format: decimal
example: 25.00
description:
description: This is the description that was provided by the caller to the financial API with your unique reference prepended
type: string
example: 'Payment Unique Reference: e9f49db3-66a9-4448-bb36-84499c0c8f2d'
destinationMAccountCardNumber:
description: 'If funds were being moved to an mAccount, then this is the mAccount 16-Digit card number'
type: string
example: '6279059600052340'
isWaitingForFundsToClear:
type: boolean
example: false
mPaymentsId:
description: This is the Platform internal Id for the row returned
type: integer
format: int32
example: 2303203
mWalletAccountNumber:
description: 'If funds were being moved to/from an mWallet, then this is the mWallets 16-Digit account number'
type: string
example: '6279059600052340'
rowOrder:
description: 'If you need to sort the results, only use this field. If you sort the results on any other field, the runningBalance won’t make sense.rowOrder start at 0.'
type: integer
format: int32
example: 0
runningBalance:
description: The current balance of the mAccount at the end of this single row transaction
type: number
format: decimal
example: 25.0
sourceMAccountCardNumber:
description: 'If funds were being moved from an mAccount, then this is the source mAccount 16-Digit Card number'
type: string
example: '6279059600052340'
subTransactionType:
description: Minor keyword describing thetransaction. E.g. GatewayMWalletCredit
type: string
example: GatewayMWalletCredit
transactionDescription:
description: A small description describing the financial action
type: string
example: Payment To mWallet
transactionId:
description: This is the transactionId that was returned from a financial transaction
type: integer
format: int32
example: 4958475
transactionType:
description: 'Major keyword describing the transaction. E.g. include Payment, LoadFunds, DailySettlement'
type: string
example: LoadFunds
uniqueReference:
description: This is the unique reference that was passed in by the calling service
type: string
example: 0bbae2f1-428a-4843-0b3e4bc
type: object
DTO.mAccountTransactionsResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
openingBalance:
description: Opening balance of the mAccountfor the returned items
type: number
format: decimal
example: 0.00
closingBalance:
description: Closing balance of the mAccountfor the returned items
type: number
format: decimal
example: 25.00
totalDebits:
description: Total debits for the returned items
type: number
format: decimal
example: 25.00
totalCredits:
description: Total credits for the returned items
type: number
format: decimal
example: 0.00
items:
description: an Array of mAccountTransactionLineItem
type: array
items:
$ref: '#/components/schemas/DTO.mAccountTransactionLineItem'
type: object
format: DTO.mAccountTransactionsResponse_V1
DTO.mAccountUpdateResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
type: object
format: DTO.mAccountUpdateResponse_V1
DTO.mWalletCloseResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
type: object
format: DTO.mWalletCloseResponse_V1
DTO.mWalletCreateResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
accountNumber:
description: New 16 character mWallet account number
type: string
example: '6279052236217305'
uniqueItems: false
mWallet:
$ref: '#/components/schemas/DTO.mWalletDetails'
type: object
format: DTO.mWalletCreateResponse_V1
DTO.mWalletDetails:
properties:
createdDateTime:
description: Date that this customer was created.ISO 8601 date-time format.Note that Timezone is suppressed.The example Timezone is Sydney local time
type: string
example: '2017-01-19T14:26:14'
uniqueItems: false
accountNumber:
description: 16-Digit account number that uniquely identifies the customer
type: string
example: '6279059700022400'
uniqueItems: false
name:
description: Customers full name
type: string
example: Kelly
uniqueItems: false
nickName:
description: This is a short form name of the customer
type: string
example: Kel
uniqueItems: false
email:
description: Email address of the customer
type: string
example: mPayments@monoova.com
uniqueItems: false
mobile:
description: Mobile phone number of the customer
type: string
example: 0414811110
uniqueItems: false
lastTransactionDate:
description: Date of the last transaction that the customer performed. ISO 8601 date format. This is an empty string if no transactions.Note that Timezone is suppressed.The example Timezone is Sydney local time
type: string
uniqueItems: false
contactPhone:
description: Contact phone number for customer. Can be a mobile or landline
type: string
example: 0414 555 555
uniqueItems: false
authenticationEmail:
description: Unique email address used to authenticate customer. Can be null
type: string
example: mPayments@monoova.com
uniqueItems: false
authenticationMobile:
description: Unique mobile number used to authenticate customer. Can be null
type: string
example: 0414811110
uniqueItems: false
authenticationLandLine:
description: Unique telephone number used to authenticate customer. Can be null
type: string
example: 'null'
uniqueItems: false
registeredByMAccountNumber:
description: 16-Digit account number of the mAccount who created the customer
type: string
example: '6279059700000810'
uniqueItems: false
isOnHold:
description: The customer’s account has been put on hold
type: boolean
example: false
uniqueItems: false
isClosed:
description: The customer’s account has been closed
type: boolean
example: false
isStolen:
type: boolean
example: false
isRegistered:
description: The mWallet is registered and is able to purchase restricted itemsfrom the mAccount such as BPAY
type: boolean
example: true
financials:
$ref: '#/components/schemas/DTO.mWalletFinancials'
options:
description: mWalletOptionItem
type: array
items:
$ref: '#/components/schemas/DTO.mWalletOptionItem'
uniqueItems: false
type: object
DTO.mWalletFinancials:
properties:
actualBalance:
description: Current remaining balance on the mWalletaccount
type: number
format: decimal
example: '0'
uniqueItems: false
availableSpend:
description: The amount of funds that can be debited from the mWallet
type: number
format: decimal
example: '3000'
uniqueItems: false
availableLoad:
description: The amount of funds that can be credited to the mWallet
type: number
format: decimal
example: '3000'
uniqueItems: false
type: object
DTO.mWalletGetFinancialsResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
financials:
$ref: '#/components/schemas/DTO.mWalletFinancials'
type: object
format: DTO.mWalletGetFinancialsResponse_V1
DTO.mWalletReopenResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
type: object
format: DTO.mWalletReopenResponse_V1
DTO.mWalletResetPinResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
type: object
format: DTO.mWalletResetPinResponse_V1
DTO.mWalletSearchResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
mWallets:
description: Array of WalletDetails
type: array
items:
$ref: '#/components/schemas/DTO.mWalletDetails'
uniqueItems: false
type: object
format: DTO.mWalletSearchResponse_V1
DTO.mWalletTransactionLineItem:
properties:
rowOrder:
description: 'If you need to sort the results, only use this field. If you sort the results on any other field, the runningBalance won’t make sense.rowOrder start at 0.'
type: integer
format: int32
example: '0'
uniqueItems: false
mPaymentsId:
description: This is the Platform internal Id for the row returned
type: integer
format: int32
example: '2303203'
uniqueItems: false
transactionId:
description: This is the transactionId that was returned from a financial transaction
type: integer
format: int32
example: '4958475'
uniqueItems: false
dateTime:
description: The time the transaction occurred in ISO 8601 date-time format. Note that Timezone is suppressed. The example Timezone is Sydney local time
type: string
example: '2017-11-18T19:06:09'
uniqueItems: false
mAccountName:
description: Name of the mAccount that conducted the transaction
type: string
example: '6279059600052340'
uniqueItems: false
transactionType:
description: 'Major keyword describing the transaction. E.g. include Payment, LoadFunds, DailySettlement'
type: string
example: LoadFunds
uniqueItems: false
subTransactionType:
description: Minor keyword describing thetransaction. E.g. GatewayMWalletCredit
type: string
example: GatewayMWalletCredit
uniqueItems: false
credit:
description: The amount of funds credited from the mWallet
type: number
format: decimal
example: '0'
uniqueItems: false
debit:
description: The amount of funds debited from the mWallet
type: number
format: decimal
example: '25'
uniqueItems: false
runningBalance:
description: The current balance of the mAccount at the end of this single row transaction
type: number
format: decimal
example: '0'
uniqueItems: false
description:
description: This is the description that was provided by the caller to the financial API with your unique reference prepended
type: string
example: 0bbae2f1-428a-4843-0b3e4bc. - test description
uniqueItems: false
type: object
format: DTO.mWalletTransactionLineItem
DTO.mWalletTransactionsResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
openingBalance:
description: Opening balance of the mWalletfor the returned items
type: number
format: decimal
example: '0'
uniqueItems: false
closingBalance:
description: Closing balance of the mWalletfor the returned items
type: number
format: decimal
example: '0'
uniqueItems: false
totalDebits:
description: Total debits for the returned items
type: number
format: decimal
example: '25'
uniqueItems: false
totalCredits:
description: Total credits for the returned items
type: number
format: decimal
example: '25'
uniqueItems: false
items:
description: mWalletTransactionLineItem
type: array
items:
$ref: '#/components/schemas/DTO.mWalletTransactionLineItem'
uniqueItems: false
type: object
format: DTO.mWalletTransactionsResponse_V1
DTO.mWalletUpdateResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
mWallet:
$ref: '#/components/schemas/DTO.mWalletDetails'
type: object
format: DTO.mWalletUpdateResponse_V1
DTO.OptionItem:
properties:
key:
description: Unique identifier of the value.
type: string
example: DebitTplusXDays
uniqueItems: false
value:
description: The actual value represented by the Key
type: string
example: '1'
uniqueItems: false
type: object
DTO.mWalletOptionItem:
properties:
key:
description: Unique identifier of the value.
type: string
example: MobileForSms
enum:
- MobileForSms
uniqueItems: false
value:
description: The actual value represented by the Key
type: string
example: '0414123123'
uniqueItems: false
type: object
DTO.PublicPingResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
version:
description: A string containing the Version of the Platform engine with the current Date Time at the server
type: string
example: 'Monoova Payments Platform Public V1.0.Engine V: 4.74.0.0 Environment: Sandbox DateTime: 19-Nov-2018 06:54:48 AM'
uniqueItems: false
environment:
description: 'The name of the environment you are connected too: ·Live ·Sandbox'
type: string
example: Sandbox
uniqueItems: false
type: object
format: DTO.PublicPingResponse_V1
DTO.TokenCreateResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
token:
description: New token in the form of a GUID
type: string
example: 9395ddef-69cb-4f38-8836-3c6502c72182
uniqueItems: false
hint:
description: Text that gives sufficient information to allow the token to be selected but does not compromise security
type: string
example: 'Bank: ANZ Account: 123456789'
uniqueItems: false
type: object
format: DTO.TokenCreateResponse_V1
DTO.TokenDeleteResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
type: object
format: DTO.TokenDeleteResponse_V1
DTO.TokenDetails:
properties:
token:
description: The text (GUID) that identifies the token
type: string
example: 0a4fe0d3-43c7-47ec-b089-4977cead9451
uniqueItems: false
hint:
description: Text that gives sufficient information to allow the tokento be selected but does not compromise security
type: string
example: 'Bank: CBA Account: 12345678'
uniqueItems: false
payloadType:
description: 'BPAY or AustralianBankAccount'
type: string
example: BPAY
uniqueItems: false
description:
description: Text supplied when the tokenwas created
type: string
example: Everyday use bank
uniqueItems: false
type: object
format: DTO.TokenDetails
DTO.TokenGetResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
token:
description: The text (GUID) that identifies the token
type: string
example: 0a4fe0d3-43c7-47ec-b089-4977cead9451
uniqueItems: false
hint:
description: Text that gives sufficient information to allow the tokento be selected but does not compromise security
type: string
example: 'Bank: CBA Account: 1234567'
uniqueItems: false
payloadType:
description: 'BPAY or AustralianBankAccount'
type: string
example: BPAY
uniqueItems: false
description:
description: Text supplied when the tokenwas created
type: string
example: mPayments Bank Account
uniqueItems: false
type: object
format: DTO.TokenGetResponse_V1
DTO.TokenListResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
tokens:
description: An array of TokenDetails
type: array
items:
$ref: '#/components/schemas/DTO.TokenDetails'
uniqueItems: false
type: object
format: DTO.TokenListResponse_V1
DTO.TokenUpdateResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
token:
description: Token updated in the form of a GUID
type: string
example: 9395ddef-69cb-4f38-8836-3c6502c72182
uniqueItems: false
hint:
description: Updated Text that gives sufficient information to allow the tokento be selected but does not compromise security
type: string
example: 'Bank: ANZ Account: 123456789'
uniqueItems: false
type: object
format: DTO.TokenUpdateResponse_V1
DTO.TokenValidateResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
type: object
format: DTO.TokenValidateResponse_V1
DTO.ToolsAbnValidateResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
abn:
description: The Australian Business Number that was passed as aparameter formatted as ’99 999 999 999’
type: string
example: 24 611 393 554
uniqueItems: false
lastUpdatedDate:
description: The date the ABN record was last updated
type: string
example: '2017-02-28T00:00:00'
uniqueItems: false
isAbnValid:
description: 'If true, indicates the identity has a valid ABN'
type: boolean
example: true
isCharity:
description: 'If true, indicates the identity is a registered charity'
type: boolean
example: false
entityTypeCode:
description: The abbreviation of the type of business entity
type: string
example: PRV
uniqueItems: false
entityTypeDescription:
description: A description the type of business entity
type: string
example: Australian Private Company
uniqueItems: false
organisationName:
description: The current name of the business entity
type: string
example: Monoova GROUP LIMITED
uniqueItems: false
legalName:
description: 'If business is a Sole Trader, contains the persons name'
type: string
example: 'null'
uniqueItems: false
organisationNameFromDate:
description: The date the organisationName was last updated
type: string
example: '2017-02-28T00:00:00'
uniqueItems: false
businessPhysicalAddressStateCode:
description: The state code of the business physical address – eg. ‘NSW’
type: string
example: NSW
uniqueItems: false
businessPhysicalAddressPostCode:
description: The post code of the business physical address
type: string
example: '2060'
uniqueItems: false
businessPhysicalAddressEffectiveFromDate:
description: The date the business physical address was last updated
type: string
example: '2016-07-01T00:00:00'
uniqueItems: false
type: object
format: DTO.ToolsAbnValidateResponse_V1
DTO.ToolsBsbValidateResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
bsb:
description: The BSBNumber that was passed as a parameter
type: string
example: 012-433
uniqueItems: false
closed:
description: 'Indicates if the branch has been closed. If true, the address field MAY contain a reference to a replacement BSB number'
type: boolean
example: false
address:
description: The branch address
type: string
example: Shop 1-047 Henry St
uniqueItems: false
city:
description: The branch city
type: string
example: Penrith
uniqueItems: false
state:
description: 'The branch state e.g. NSW, VIC, QLD etc'
type: string
example: NSW
uniqueItems: false
postCode:
description: The branch post code
type: string
example: '2750'
uniqueItems: false
bankCode:
description: 'The bank code e.g.ANZ, CBA, NAB, WBC etc'
type: string
example: ANZ
uniqueItems: false
type: object
format: DTO.ToolsBsbValidateResponse_V1
DTO.ToolsPingResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
version:
description: A string containing the Version of the Platform with the current Date Time at the server
type: string
example: 'Monoova Payments Platform Tools V:1.00 Engine V:4.74 Environment: Sandbox DateTime: 09 - Nov - 2018 10:48:09 AM'
uniqueItems: false
environment:
description: A string containing the Version of the Platform with the current Date Time at the server
type: string
example: Sandbox
uniqueItems: false
type: object
format: DTO.ToolsPingResponse_V1
DTO.ToolsSendEmailResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
type: object
format: DTO.ToolsSendEmailResponse_V1
DTO.ValidateBPAYResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
validation:
$ref: '#/components/schemas/DTO.BPAYValidation_V1'
type: object
format: DTO.ValidateBPAYResponse_V1
DTO.VerifyAccountDetails:
properties:
token:
description: The text(GUID) that identifies the token.
type: string
example: 97649d82-fa5b-4481-90a8-ec4ef9a854ab
created:
description: Datetime that the request was created
type: string
example: '2018-11-19T13:26:48'
updated:
description: Datetime that the direct debit authority flag was last updated
type: string
example: '2018-11-19T13:26:48'
lastSystemBSBValidation:
description: System bsb validation timestamp
type: string
comment:
description: Your comment submitted when initiating the verify request
type: string
example: 'null'
bsb:
description: BSB number of associated bank account. BSB format is ‘000-000’
type: string
example: 062-205
bankAccountNumber:
description: This is the bank accounts number
type: string
example: '201786488'
bankAccountTitle:
description: Bank account title or name of associated bank account
type: string
example: MPayments Retail
remitter:
description: Your example remitter code
type: string
example: MPRetail
maxLength: 16
isBlacklisted:
description: Blacklisted accounts cannot be transacted on
type: boolean
example: false
hasDDAuthority:
description: Flag that can be used to track which account you have direct debit authority for
type: boolean
example: true
ddAuthorityChangedTimestamp:
description: Datetime that the direct debit authority flag was last modified
type: string
example: '2018-11-19T13:26:48'
ddAuthorityChangedBy:
description: Datetime that the request was created
type: string
example: '6279059761211264'
verificationIdentifier:
description: Name of the verification token
type: string
example: MP Retail Account
verificationStatus:
description: Status of the verification token
type: string
example: Pending
verificationSignonMerchant:
description: mAccount which owns the verification token
type: string
example: '6279059761211264'
verificationRetryCount:
description: Number of times verification has been retried
type: integer
format: int32
example: 0
verificationRetyCountBeforeLockout:
description: Threshold number of verification failures that triggers a lockout
type: integer
format: int32
example: 3
verificationLastRetryTimestamp:
description: Last verification attempt datetime
type: string
example: '2018-11-19T13:26:48'
verificationLastRetryLockoutMinutes:
description: Lockout time in after verification failure threshold has been reached
type: integer
format: int32
example: 60
verificationDEJobId:
description: Job ID for the verification transaction
type: integer
format: int32
example: 93607
verificationRootId:
description: Unique verification root ID
type: integer
format: int32
example: 438714
type: object
DTO.VerifyAccountGetResponse_V1:
properties:
durationMs:
description: This value represents the total time in milliseconds that the Platform took to process the request.
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
details:
$ref: '#/components/schemas/DTO.VerifyAccountDetails'
type: object
format: DTO.VerifyAccountGetResponse_V1
DTO.VerifyAccountInitiateResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
token:
description: The text(GUID) that identifies the token.
type: string
example: 97649d82-fa5b-4481-90a8-ec4ef9a854ab
uniqueItems: false
feeAmountExGst:
description: This is the fee amount Excluding GST
type: number
format: decimal
example: 0.5
uniqueItems: false
feeAmountIncGst:
description: This is the total fee amount Including GST
type: number
format: decimal
example: 0.55
uniqueItems: false
feeAmountGstComp:
description: This is the GST Component of the fee amount
type: number
format: decimal
example: 0.05
uniqueItems: false
type: object
format: DTO.VerifyAccountInitiateResponse_V1
DTO.VerifyAccountListResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
list:
description: VerifyAccountDetails
type: array
items:
$ref: '#/components/schemas/DTO.VerifyAccountDetails'
type: object
format: DTO.VerifyAccountListResponse_V1
DTO.VerifyAccountUpdateResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
type: object
format: DTO.VerifyAccountUpdateResponse_V1
DTO.VerifyAccountValidateResponse_V1:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
uniqueItems: false
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
uniqueItems: false
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
uniqueItems: false
type: object
format: DTO.VerifyAccountValidateResponse_V1
DTO.VerifyAccountInitiateResponse_V2:
properties:
durationMs:
description: 'This value represents the total time in milliseconds that the Platform took to process the request. '
type: integer
format: int64
example: 20
status:
description: This is the status of executing the request. A code of ‘Ok’ indicates no errors
type: string
example: Ok
statusDescription:
description: This is a plain English description of the status.
type: string
example: Operation completed successfully
token:
description: The text(GUID) that identifies the token.
type: string
example: 40a834c0-8819-49d4-97df-a42738b9f685
feeAmountExGst:
description: This is the fee amount Excluding GST
type: number
format: decimal
example: 1.0000
feeAmountIncGst:
description: This is the total fee amount Including GST
type: number
format: decimal
example: 1.1000
feeAmountGstComp:
description: This is the GST Component of the fee amount
type: number
format: decimal
example: 0.1000
ownerName:
description: This is the PayId Name set up by account holder.
`When creditMethod is 'NppCreditBankAccount' this field is always Null`
type: string
example: Monoova PayId Name
type: object
format: DTO.VerifyAccountInitiateResponse_V2
DTO.FromDirectDebitDetail:
type: object
properties:
bsbNumber:
type: string
example: '123-456'
pattern: '^[0-9]{3}-[0-9]{3}$'
description: BSB (Bank-State-Branch) number. The format is a string in the following format ‘999-999’.
accountNumber:
type: string
example: '123456789'
pattern: '^[0-9]{1,9}$'
maxLength: 9
description: This is the bank account number. The number should be up to 9 digits.
accountName:
type: string
example: 'Monoova Payments'
maxLength: 32
minLength: 2
pattern: >
"^[a-zA-Z0-9 .\(\+\$\*\)\^\[\];\-\/,%_?:#@'=&!]*$"
description: This is the name of the account. Minimum length is 2, Max length is 32.
remitterName:
type: string
example: 'Company XYZ remitterName'
maxLength: 32
description: Name of the remitter for the transaction.
# Financial paymentSource
paymentSource.mAccount:
required:
- amount
description: payment source from mAccount
allOf:
- $ref: '#/components/schemas/financial.transaction'
- type: object
properties:
mAccount:
type: object
properties:
token:
type: string
example: '6279059726039800'
description: 16-Digit account number that uniquely identifies the mAccount.
minLength: 16
maxLength: 16
description:
type: string
example: 'payment source from mAccount'
description: This description will be displayed on the mAccount statements.
If any disbursement object is present, this description will be overwritten.
This description will only display on statements for payments directly into the sign in mAccount. (ie no disbursement object)
maxLength: 500
disbursements:
type: array
description: >
Details where the transaction amount will be disbursed. Multiple disbursements
across various methods can be specified in a single transaction.
items:
anyOf:
- $ref: '#/components/schemas/disbursementMethod.directCredit'
- $ref: '#/components/schemas/disbursementMethod.mAccount'
- $ref: '#/components/schemas/disbursementMethod.mWallet'
- $ref: '#/components/schemas/disbursementMethod.ABAToken'
- $ref: '#/components/schemas/disbursementMethod.BPAY'
- $ref: '#/components/schemas/disbursementMethod.NppCreditBankAccount'
- $ref: '#/components/schemas/disbursementMethod.NppCreditPayId'
paymentSource.mWallet:
required:
- amount
description: payment source from mWallet
allOf:
- $ref: '#/components/schemas/financial.transaction'
- type: object
properties:
mWallet:
type: object
properties:
token:
type: string
example: '6279059729909082'
description: 16-Digit number that uniquely identifies the Ledger Account or mWallet.
minLength: 16
maxLength: 16
pin:
type: string
example: '5555'
description: 4 digit numerical pin.
minLength: 4
maxLength: 4
description:
type: string
example: 'payment source from mWallet'
description: This description will be displayed on the mAccount statements. If any disbursement object is present, this description will be overwritten. This description will only display on statements for payments directly into the sign in mAccount. (ie no disbursement object)
maxLength: 500
disbursements:
type: array
description: >
Details where the transaction amount will be disbursed. Multiple disbursements
across various methods can be specified in a single transaction.
items:
anyOf:
- $ref: '#/components/schemas/disbursementMethod.mAccount'
- $ref: '#/components/schemas/disbursementMethod.mWallet'
- $ref: '#/components/schemas/disbursementMethod.directCredit'
- $ref: '#/components/schemas/disbursementMethod.ABAToken'
- $ref: '#/components/schemas/disbursementMethod.BPAY'
- $ref: '#/components/schemas/disbursementMethod.NppCreditBankAccount'
- $ref: '#/components/schemas/disbursementMethod.NppCreditPayId'
paymentSource.bulkDirectDebit:
required:
- amount
description: payment source from bulkDirectDebit.
allOf:
- $ref: '#/components/schemas/financial.transaction'
- type: object
properties:
directDebits:
type: object
description: |
Direct debits details.
Note: Only up to 1000 debits can be included per direct debit request.
properties:
fromDirectDebitDetail:
$ref: '#/components/schemas/DTO.FromDirectDebitDetail'
amount:
type: string
example: '80'
description: The amount to be debited.
lodgementReference:
type: string
example: 'bulkDirectDebit1'
description: Reference for the lodgement.
description:
type: string
example: 'payment source from directDebit'
description: This description will be displayed on the mAccount statements. If any disbursement object is present, this description will be overwritten. This description will only display on statements for payments directly into the sign in mAccount (ie no disbursement object)
maxLength: 500
lodgementReference:
type: string
example: 'monoova-123'
maxLength: 18
description: Reference will appear on payers statement.
Only used when the source object is a bank account,
May be overwritten for some account configurations, contact us for more details.
pattern: >
@"^[a-zA-Z0-9 \.\(\+\$\*\)\^\[\];\-\/,%_?:#@'=&!]*$"
disbursements:
type: array
description: >
Details where the transaction amount will be disbursed. Multiple disbursements
across various methods can be specified in a single transaction.
items:
anyOf:
- $ref: '#/components/schemas/disbursementMethod.mAccount'
- $ref: '#/components/schemas/disbursementMethod.mWallet'
- $ref: '#/components/schemas/disbursementMethod.directCredit'
- $ref: '#/components/schemas/disbursementMethod.ABAToken'
- $ref: '#/components/schemas/disbursementMethod.BPAY'
- $ref: '#/components/schemas/disbursementMethod.NppCreditBankAccount'
- $ref: '#/components/schemas/disbursementMethod.NppCreditPayId'
paymentSource.directDebit:
required:
- amount
description: payment source from directDebit.
allOf:
- $ref: '#/components/schemas/financial.transaction'
- type: object
properties:
directDebit:
type: object
properties:
bsbNumber:
type: string
example: '062-205'
description: BSB (Bank-State-Branch) number. The format is a string in the following format: ‘999-999’.
accountNumber:
type: integer
example: 123456789\
maxLength: 9
pattern: ^[a-zA-Z0-9]*\z
description: This is the bank account number. Range of '100' to '999999999'
accountName:
type: string
example: 'Monoova Payments'
maxLength: 32
minLength: 2
description: This is the name of the account. Minimum length is 2, Max length is 32.
pattern: >
@"^[a-zA-Z0-9 \.\(\+\$\*\)\^\[\];\-\/,%_?:#@'=&!]*$"
description:
type: string
example: 'payment source from directDebit'
description: This description will be displayed on the mAccount statements. If any disbursement object is present, this description will be overwritten. This description will only display on statements for payments directly into the sign in mAccount (ie no disbursement object)
maxLength: 500
lodgementReference:
type: string
example: 'monoova-123'
maxLength: 18
description: Reference will appear on payers statement.
Only used when the source object is a bank account,
May be overwritten for some account configurations, contact us for more details.
pattern: >
@"^[a-zA-Z0-9 \.\(\+\$\*\)\^\[\];\-\/,%_?:#@'=&!]*$"
disbursements:
type: array
description: >
Details where the transaction amount will be disbursed. Multiple disbursements
across various methods can be specified in a single transaction.
items:
anyOf:
- $ref: '#/components/schemas/disbursementMethod.mAccount'
- $ref: '#/components/schemas/disbursementMethod.mWallet'
- $ref: '#/components/schemas/disbursementMethod.directCredit'
- $ref: '#/components/schemas/disbursementMethod.ABAToken'
- $ref: '#/components/schemas/disbursementMethod.BPAY'
- $ref: '#/components/schemas/disbursementMethod.NppCreditBankAccount'
- $ref: '#/components/schemas/disbursementMethod.NppCreditPayId'
paymentSource.token:
required:
- amount
description: payment source from token
allOf:
- $ref: '#/components/schemas/financial.transaction'
- type: object
properties:
token:
type: string
example: '15da7ec4-a474-4545-9ed2-a5c902a1fbb5'
description: The text (GUID) that identifies the token
description:
type: string
example: 'payment source from token'
description: This description will be displayed on the mAccount statements. If any disbursement object is present, this description will be overwritten. This description will only display on statements for payments directly into the sign in mAccount (ie no disbursement object)
maxLength: 500
disbursements:
type: array
description: >
Details where the transaction amount will be disbursed. Multiple disbursements
across various methods can be specified in a single transaction.
items:
anyOf:
- $ref: '#/components/schemas/disbursementMethod.mAccount'
- $ref: '#/components/schemas/disbursementMethod.mWallet'
- $ref: '#/components/schemas/disbursementMethod.directCredit'
- $ref: '#/components/schemas/disbursementMethod.ABAToken'
- $ref: '#/components/schemas/disbursementMethod.BPAY'
- $ref: '#/components/schemas/disbursementMethod.NppCreditBankAccount'
- $ref: '#/components/schemas/disbursementMethod.NppCreditPayId'
DTO.AllLedgersResponse_V1:
type: object
properties:
durationMs:
type: integer
description: Duration of the API call in milliseconds.
example: 29
status:
type: string
description: Status of the operation, e.g., "Ok".
example: 'Ok'
statusDescription:
type: string
description: Detailed description of the operation's outcome.
example: 'Operation completed successfully'
ledgerAccounts:
type: array
description: List of all ledger accounts, including closed ones if requested.
items:
type: object
properties:
ledgerAccountNumber:
type: string
description: Unique identifier of the ledger account.
example: '5897854269'
ledgerUniqueReference:
type: string
description: Unique reference associated with the ledger.
example: 'Ledger ref – 884a6207-7890-77rd-990u-484646823gc'
name:
type: string
description: Name of the ledger.
example: 'Customer 0012'
createdDateTime:
type: string
format: date-time
description: The datetime when the ledger was created.
example: '2024-02-08T15:02:50:43'
closedDateTime:
type: string
format: date-time
description: The datetime when the ledger was closed, if applicable.
example: ''
isClosed:
type: boolean
description: Indicates whether the ledger is currently closed.
example: false
description:
type: string
description: Description of the ledger, possibly containing JSON encoded data.
example: '{"expiryDate": "1-Feb-2024"}'
LedgerFinancialsRequest:
type: object
properties:
ledgerAccountNumber:
type: string
description: Ledger account number to retrieve financials for.
example: '6279059760654878'
minLength: 10
maxLength: 18
includeClosed:
type: boolean
description: Include financial details of closed accounts.
default: false
example: false
required:
- ledgerAccountNumber
LedgerClose:
type: object
properties:
ledgerAccountNumber:
type: string
description: The unique account number of the ledger to be closed.
example: '6279059723920473'
forcedClose:
type: boolean
description: Setting this to true will close the attached automatcher and PayID. By default, this will be false.
example: false
DTO.LedgerCloseResponse_V1:
type: object
properties:
durationMs:
type: integer
description: Duration of the API call in milliseconds.
example: 41
status:
type: string
description: Status of the operation, e.g., "Ok".
example: 'Ok'
statusDescription:
type: string
description: Detailed description of the status.
example: 'Account is being deactivated for Npp. Please allow a few minutes for the account to become inactive.'
LedgerTransactionsRequest:
type: object
required: [startDate, endDate]
properties:
ledgerAccountNumber:
type: string
description: Leave this field blank to retrieve all ledger accounts with transactions between the specified start and end dates.
example: '1234567890'
startDate:
type: string
format: date-time
description: Start date for the transaction query. Defaults to one month earlier than the current date.
example: '2024-04-01T00:00:00'
endDate:
type: string
format: date-time
description: End date for the transaction query. Defaults to today's date.
example: '2024-04-12T17:00:00'
skip:
type: number
description: Number of records to skip. 0 is the first record.
example: 0
take:
type: number
description: Number of records to take. If take is 0 then all records will be returned.
example: 10
descending:
type: boolean
description: Sort the returned transaction list in descending order. Defaults to true.
example: true
useTime:
type: boolean
description: Whether to use the time component of startDate and endDate in the selection.
example: false
DTO.LedgerTransactionsResponse_V1:
type: object
properties:
durationMs:
type: integer
description: Duration of the API call in milliseconds.
example: 40
status:
type: string
description: Status of the operation, e.g., "Ok".
example: 'Ok'
statusDescription:
type: string
description: Detailed description of the operation's outcome.
example: 'Operation completed successfully'
ledgerAccounts:
type: array
description: List of ledger accounts with transaction details.
items:
type: object
properties:
ledgerAccountNumber:
type: string
description: Unique identifier of the ledger account.
example: '1234567890'
ledgerUniqueReference:
type: string
description: Unique reference associated with the ledger.
example: 'Ledger ref – 185a6207-3608-43ac-970a-40b0074547ea'
name:
type: string
description: Name of the ledger.
example: 'Customer 011'
description:
type: string
description: Description of the ledger, possibly containing JSON encoded data.
example: '{"expiryDate": "1-Feb-2024"}'
createdDateTime:
type: string
format: date-time
description: The datetime when the ledger was created.
example: '2024-02-08T15:02:50:43'
closedDateTime:
type: string
format: date-time
description: The datetime when the ledger was closed, if applicable.
example: ''
isClosed:
type: boolean
description: Indicates whether the ledger is currently closed.
example: false
transactionLineItems:
type: array
description: Array of transaction details for the ledger.
items:
type: object
properties:
rowOrder:
type: integer
example: 0
mPaymentsId:
type: string
example: '1068471'
transactionId:
type: string
example: '7221066'
dateTime:
type: string
format: date-time
example: '2024-04-12T16:01:32'
mAccountName:
type: string
example: 'Merchant 0123'
transactionType:
type: string
example: 'LoadFunds'
subTransactionType:
type: string
example: 'GatewayMWalletCredit'
credit:
type: number
example: 340.0
debit:
type: number
example: 0
runningBalance:
type: number
example: 340.0
description:
type: string
description: Description of the transaction.
example: 'ledger transfer'
DTO.LedgerBalanceResponse_V1:
type: object
properties:
durationMs:
type: integer
description: Duration of the API call in milliseconds.
example: 1033
status:
type: string
description: Status of the operation, e.g., "Ok".
example: 'Ok'
statusDescription:
type: string
description: Detailed description of the operation's outcome.
example: 'Operation completed successfully'
balance:
type: number
description: The current balance of the ledger.
example: 3450.0
ledgerAccountNumber:
type: string
description: The unique identifier for the ledger account.
example: '1234567890'
ledgerUniqueReference:
type: string
description: The unique reference for the ledger.
example: 'Ledger ref – 185a6207-3608-43ac-970a-40b0074547ea'
automatcherBankAccountNumber:
type: string
description: The bank account number of the linked automatcher.
example: '376077626'
name:
type: string
description: Name of the ledger.
example: 'Customer 0011'
createdDateTime:
type: string
description: The datetime when the ledger was created.
example: '2024-02-08T15:02:50:43'
closedDateTime:
type: string
description: The datetime when the ledger was closed, if applicable.
example: '2024-02-11T10:12:25:1'
description:
type: string
description: Description of the ledger, possibly containing JSON encoded data.
example: '{"expiryDate": "1-Feb-2024"}'
isClosed:
type: boolean
description: Indicates whether the ledger is currently closed.
example: true
DTO.LedgerFinancialsResponse_V1:
type: object
properties:
status:
type: string
description: API response status.
example: 'Ok'
statusDescription:
type: string
description: Detailed description of the response status.
example: 'Operation completed successfully'
durationMs:
type: integer
description: Response time in milliseconds.
example: 91
ledgerAccountFinancials:
type: array
items:
$ref: '#/components/schemas/LedgerAccountFinancialDetails'
LedgerAccountFinancialDetails:
type: object
properties:
automatcherDetails:
type: object
properties:
bankAccountName:
type: string
description: The name of the bank account linked to the automatcher.
example: 'Test 99'
bankAccountNumber:
type: string
description: The bank account number of the linked automatcher.
example: '619895606'
bsb:
type: string
description: BSB number of the automatcher.
example: '802-985'
clientUniqueId:
type: string
description: Unique identifier for the client’s automatcher.
example: '47D8D1040AF24904BE58FE2AF6D11538'
isActive:
type: boolean
description: Indicates whether the automatcher is currently active.
example: false
ledgerAccountNumber:
type: string
description: The unique account number of the ledger.
example: '6279059760654878'
ledgerDetails:
type: object
properties:
ABN:
type: string
description: The Australian Business Number associated with the ledger.
example: '33638924339'
closedDateTime:
type: string
format: date-time
description: The datetime when the ledger was closed, if applicable.
example: ''
createdDateTime:
type: string
format: date-time
description: The datetime when the ledger was created.
example: '2024-04-11T11:33:27'
description:
type: string
description: Description of the ledger, potentially containing JSON encoded data.
example: '{"expiryDate": "1-April-2024"}'
financials:
type: object
properties:
actualBalance:
type: number
description: The current actual balance of the ledger.
example: 99.0
availableLoad:
type: number
description: The maximum amount that can be loaded into the ledger.
example: 49901.0
availableSpend:
type: number
description: The amount available for spending from the ledger.
example: 49901.0
maximumBalance:
type: number
description: The maximum balance that can be held within the ledger.
example: 50000
isClosed:
type: boolean
description: Indicates whether the ledger is currently closed.
example: false
lastTransactionDate:
type: string
format: date-time
description: Date and time of the last transaction recorded.
example: '2024-04-11T11:44:19'
ledgerAccountNumber:
type: string
description: Number of the ledger.
example: '6279059760654878'
ledgerUniqueReference:
type: string
description: Unique reference ID of the ledger.
example: 'Ledger Reference - 47d8d104-0af2-4904-be58-fe2af6d11538'
name:
type: string
description: Name of the ledger account.
example: 'Test Ledger Account-99'
LedgerFinancials:
type: object
properties:
actualBalance:
type: number
format: double
description: Actual balance of the ledger.
example: 99.0
availableLoad:
type: number
format: double
description: Available amount to load into the ledger.
example: 49901.0
availableSpend:
type: number
format: double
description: Available amount for spending from the ledger.
example: 49901.0
maximumBalance:
type: number
format: double
description: Maximum balance that can be maintained in the ledger.
example: 50000
LedgerCreate:
type: object
properties:
ledgerUniqueReference:
type: string
description: Your unique identifier for the ledger account.
example: 'unique_ref_12345'
abn:
type: string
description: The ABN of the payee.
example: '12345678901'
name:
type: string
description: Your alias for the ledger account.
example: 'My Ledger Account'
description:
type: string
description: An optional free text field describing the ledger account.
example: 'This is a sample ledger account.'
automatcherDetails:
type: object
required:
- bankAccountNumber
- bankAccountName
- clientUniqueId
properties:
bsb:
type: string
description: BSB number for the bank account.
example: '012-345'
bankAccountNumber:
type: string
description: Bank account number to link with the automatcher.
example: '123456789'
bankAccountName:
type: string
description: Name of the bank account.
example: 'Business Account'
clientUniqueId:
type: string
description: Unique identifier for the client's automatcher.
example: 'client_id_67890'
DTO.LedgerCreateResponse_V1:
type: object
properties:
durationMs:
type: integer
description: Duration of the API call in milliseconds.
example: 211
status:
type: string
description: Operation status, e.g., "Ok".
example: 'Ok'
statusDescription:
type: string
description: Description of the status.
example: 'Account is being setup for Npp. Please allow a few minutes for the account to become active.'
automatcherDetails:
type: object
properties:
bankAccountName:
type: string
example: 'Test 99'
bankAccountNumber:
type: string
example: '718817568'
bsb:
type: string
example: '802-985'
clientUniqueId:
type: string
example: '694EF498924D4788AD7C7221DDAB3915'
isActive:
type: boolean
description: Whether the automatcher is active.
example: false
ledgerAccountNumber:
type: string
description: Number of the newly created ledger account.
example: '6279059723920473'
ledgerDetails:
type: object
properties:
ABN:
type: string
example: '33638924339'
closedDateTime:
type: string
example: ''
createdDateTime:
type: string
example: '2024-04-19T10:12:00'
description:
type: string
example: '{"expiryDate": "1-April-2024"}'
financials:
type: object
properties:
actualBalance:
type: number
example: 0.0
availableLoad:
type: number
example: 50000.0
availableSpend:
type: number
example: 50000.0
maximumBalance:
type: number
example: 50000
isClosed:
type: boolean
example: false
lastTransactionDate:
type: string
example: ''
ledgerAccountNumber:
type: string
example: '6279059723920473'
ledgerUniqueReference:
type: string
example: 'Ledger Reference - 694ef498-924d-4788-ad7c-7221ddab3915'
name:
type: string
example: 'Test Ledger Account-99'
examples:
PayBpayRequest:
value:
{
'paymentSource': 'mWallet',
'mWallet': { 'token': '6279059784226976', 'pin': '0000' },
'disbursements':
[
{
'disbursementMethod': 'bpay',
'toBPayDetails': { 'billerCode': '857763', 'referenceNumber': '6279059700010918' },
'amount': 100,
'description': 'Payment for utilities'
}
],
'uniqueReference': 'f484ec18-6e1f-481b-a4bf-bea515d8lk34'
}
description: 'This request, and its response, shows paying bills using Bpay. It requires a biller code and reference number to direct the funds appropriately.'
DebitChildMAccountRequest:
value:
{
'totalAmount': 100,
'paymentSource': 'mAccount',
'mAccount': { 'token': '111111000000000' },
'uniqueReference': 'a6b29123-77cf-4d7e-bd5e-d3ed6a4845b0',
'description': 'Example transfer'
}
description: 'This request, and its response show how to debit funds directly from a specified child mAccount.'
PayChildMAccountRequest:
value:
{
'totalAmount': 100,
'paymentSource': 'mAccount',
'disbursements':
[{ 'disbursementMethod': 'mAccount', 'toMAccount': '6279059700010918', 'amount': 100 }],
'uniqueReference': 'e2c71156-31f9-48e3-ac2f-3a9956335b10'
}
description: 'This request, and its response shows the payment into a child mAccount. It is typically used for depositing funds into sub-accounts under the main account.'
DirectDebitRequest:
value:
{
'totalAmount': 100,
'paymentSource': 'directDebit',
'lodgementReference': 'monoova-123',
'uniqueReference': 'f484ec18-6e1f-481b-a4bf-bea515d8lk34',
'description': 'Direct debit transaction for bills',
'directDebit':
{ 'bsbNumber': '032-000', 'accountNumber': '56654983', 'accountName': 'Monoova' }
}
description: "This request, and its response shows a direct debit from a customer's bank account. It is used for recurring or one-time authorizations to pull funds directly from the account."
BulkDirectDebitRequest:
value:
{
'uniqueReference': 'uniqueReference123',
'totalAmount': 160,
'printUniqueReferenceOnStatement': true,
'description': 'Bulk Direct Debit to mAccount',
'paymentSource': 'bulkDirectDebit',
'directDebits':
[
{
'fromDirectDebitDetail':
{
'bsbNumber': '123-456',
'accountNumber': '34444444',
'accountName': 'Direct Debit to mAccount',
'remitterName': 'Fairvine RoundUp remitterName 1'
},
'amount': 80,
'lodgementReference': 'bulkDirectDebit1'
},
{
'fromDirectDebitDetail':
{
'bsbNumber': '123-456',
'accountNumber': '24444444',
'accountName': 'Direct Debit to mAccount',
'remitterName': 'Fairvine RoundUp remitterName 2'
},
'amount': 80,
'lodgementReference': 'bulkDirectDebit2'
}
]
}
description: "This request, and its response shows processing multiple direct debit transactions in one batch. It's efficient for handling large volumes of collections at once."
DirectCreditRequest:
value:
{
'uniqueReference': 'D29281AB-1E85-4A3D-B5DC-F519631D4F01',
'totalAmount': 100,
'description': 'Fred Smith',
'disbursements':
[
{
'disbursementMethod': 'directCredit',
'toDirectCreditDetails':
{ 'bsbNumber': '032-000', 'accountNumber': '2681849', 'accountName': 'Monoova' },
'sourceAccountBsb': '802-985',
'sourceAccountNumber': '654378888',
'lodgementReference': 'monoova-123',
'amount': 100,
'description': 'Fred Smith'
}
]
}
description: 'This request, and its response shows sending money directly to a bank account via a direct credit method. It is used for straightforward, single beneficiary transactions.'
DirectDebitTokenRequest:
value:
{
'totalAmount': 100,
'paymentSource': 'token',
'lodgementReference': 'monoova-123',
'token': '11111111-0000-0000-0000-000000000000',
'description': 'Direct debit using tokenized payment method'
}
description: 'This request uses a token to initiate a direct debit.'
DirectCreditTokenRequest:
summary: 'Direct credit using a token'
value:
{
'totalAmount': 100,
'paymentSource': 'token',
'token': '00000000-1111-0000-0000-000000000000',
'disbursements':
[
{
'disbursementMethod': 'token',
'toToken': '11111111-0000-0000-0000-000000000000',
'lodgementReference': 'monoova-123',
'amount': 100,
'description': 'Direct credit to beneficiary using tokenized system'
}
],
'description': 'Token-based credit transfer for service payment'
}
description: 'This request, and its response shows using a token to perform a direct credit.'
NppPayBankAccountRequest:
value:
{
'totalAmount': 100,
'disbursements':
[
{
'disbursementMethod': 'NppCreditBankAccount',
'toNppCreditBankAccountDetails':
{
'bsbNumber': '802-985',
'accountNumber': '819877339',
'accountName': 'Monoova',
'endToEndId': 'ABC/123-4356',
'remitterName': 'remitterName'
},
'sourceAccountBsb': '802-985',
'sourceAccountNumber': '654378888',
'lodgementReference': 'test Npp :)',
'amount': 100
}
],
'description': 'Payment via NPP to bank account for contract services'
}
description: 'This request and its response shows payments to a bank account using the New Payments Platform (NPP).'
NppPayIdRequest:
value:
{
'totalAmount': 100,
'disbursements':
[
{
'disbursementMethod': 'NppCreditPayId',
'toNppCreditPayIdDetails':
{
'payId': 'MW9GM4@monoova.com',
'payIdType': 'Email',
'accountName': 'Monoova',
'endToEndId': 'ABC/123-4356',
'remitterName': 'remitterName'
},
'sourceAccountBsb': '802-985',
'sourceAccountNumber': '654378888',
'lodgementReference': 'test npp :)',
'amount': 100
}
],
'description': 'NPP payment to PayID for immediate transaction settlement'
}
description: 'This request and its response shows payments using PayID, which can be an email, phone number, or other identifier.'
PayBpayValidateResponse:
value:
{
'durationMs': 25,
'status': 'Ok',
'statusDescription': 'Operation completed successfully',
'feeAmountExcludingGst': 0.0,
'feeAmountGstComponent': 0.0,
'feeAmountIncludingGst': 0.0,
'callerUniqueReference': 'bpay12345',
'feeBreakdown':
{
'disbursementFees':
[
{
'disbursementArrayIndex': 0,
'disbursementFee':
{
'feeAmountExcludingGst': 0.1,
'feeAmountGstComponent': 0.01,
'feeAmountIncludingGst': 0.11
}
}
]
}
}
DebitChildMAccountValidateResponse:
value:
{
'durationMs': 30,
'status': 'Ok',
'statusDescription': 'Operation completed successfully',
'feeAmountExcludingGst': 0.05,
'feeAmountGstComponent': 0.005,
'feeAmountIncludingGst': 0.055,
'callerUniqueReference': 'childmaccount123',
'feeBreakdown':
{
'debitFee':
{
'feeAmountExcludingGst': 0.05,
'feeAmountGstComponent': 0.005,
'feeAmountIncludingGst': 0.055
}
}
}
PayMAccountValidateResponse:
value:
{
'durationMs': 20,
'status': 'Ok',
'statusDescription': 'Operation completed successfully',
'feeAmountExcludingGst': 0.06,
'feeAmountGstComponent': 0.006,
'feeAmountIncludingGst': 0.066,
'callerUniqueReference': 'maccountpay123',
'feeBreakdown':
{
'debitFee':
{
'feeAmountExcludingGst': 0.06,
'feeAmountGstComponent': 0.006,
'feeAmountIncludingGst': 0.066
}
}
}
DirectDebitValidateResponse:
value:
{
'durationMs': 35,
'status': 'Ok',
'statusDescription': 'Operation completed successfully',
'feeAmountExcludingGst': 0.15,
'feeAmountGstComponent': 0.015,
'feeAmountIncludingGst': 0.165,
'callerUniqueReference': 'directdebit123',
'feeBreakdown':
{
'debitFee':
{
'feeAmountExcludingGst': 0.15,
'feeAmountGstComponent': 0.015,
'feeAmountIncludingGst': 0.165
}
}
}
BulkDirectDebitValidateResponse:
value:
{
'durationMs': 40,
'status': 'Ok',
'statusDescription': 'Operation completed successfully',
'feeAmountExcludingGst': 0.2,
'feeAmountGstComponent': 0.02,
'feeAmountIncludingGst': 0.22,
'callerUniqueReference': 'bulkdebit123',
'feeBreakdown':
{
'bulkDirectDebitFees':
[
{
'directDebitArrayIndex': 0,
'directDebitFee':
{
'feeAmountExcludingGst': 0.1,
'feeAmountGstComponent': 0.01,
'feeAmountIncludingGst': 0.11
}
},
{
'directDebitArrayIndex': 1,
'directDebitFee':
{
'feeAmountExcludingGst': 0.1,
'feeAmountGstComponent': 0.01,
'feeAmountIncludingGst': 0.11
}
}
]
}
}
DirectCreditValidateResponse:
value:
{
'durationMs': 22,
'status': 'Ok',
'statusDescription': 'Operation completed successfully',
'feeAmountExcludingGst': 0.12,
'feeAmountGstComponent': 0.012,
'feeAmountIncludingGst': 0.132,
'callerUniqueReference': 'directcredit123',
'feeBreakdown':
{
'transactionFee':
{
'feeAmountExcludingGst': 0.12,
'feeAmountGstComponent': 0.012,
'feeAmountIncludingGst': 0.132
}
}
}
DirectDebitTokenValidateResponse:
value:
{
'durationMs': 25,
'status': 'Ok',
'statusDescription': 'Operation completed successfully',
'feeAmountExcludingGst': 0.07,
'feeAmountGstComponent': 0.007,
'feeAmountIncludingGst': 0.077,
'callerUniqueReference': 'ddtoken123',
'feeBreakdown':
{
'debitFee':
{
'feeAmountExcludingGst': 0.07,
'feeAmountGstComponent': 0.007,
'feeAmountIncludingGst': 0.077
}
}
}
DirectCreditTokenValidateResponse:
value:
{
'durationMs': 28,
'status': 'Ok',
'statusDescription': 'Operation completed successfully',
'feeAmountExcludingGst': 0.08,
'feeAmountGstComponent': 0.008,
'feeAmountIncludingGst': 0.088,
'callerUniqueReference': 'dctoken123',
'feeBreakdown':
{
'transactionFee':
{
'feeAmountExcludingGst': 0.08,
'feeAmountGstComponent': 0.008,
'feeAmountIncludingGst': 0.088
}
}
}
NppPayBankAccountValidateResponse:
value:
{
'durationMs': 18,
'status': 'Ok',
'statusDescription': 'Operation completed successfully',
'feeAmountExcludingGst': 0.09,
'feeAmountGstComponent': 0.009,
'feeAmountIncludingGst': 0.099,
'callerUniqueReference': 'nppbank123',
'feeBreakdown':
{
'disbursementFees':
[
{
'disbursementArrayIndex': 0,
'disbursementFee':
{
'feeAmountExcludingGst': 0.09,
'feeAmountGstComponent': 0.009,
'feeAmountIncludingGst': 0.099
}
}
]
}
}
NppPayIdValidateResponse:
value:
{
'durationMs': 15,
'status': 'Ok',
'statusDescription': 'Operation completed successfully',
'feeAmountExcludingGst': 0.1,
'feeAmountGstComponent': 0.01,
'feeAmountIncludingGst': 0.11,
'callerUniqueReference': 'npppayid123',
'feeBreakdown':
{
'disbursementFees':
[
{
'disbursementArrayIndex': 0,
'disbursementFee':
{
'feeAmountExcludingGst': 0.1,
'feeAmountGstComponent': 0.01,
'feeAmountIncludingGst': 0.11
}
}
]
}
}
PayBpayExecuteResponse:
value:
{
'durationMs': 25,
'status': 'Ok',
'statusDescription': 'Operation completed successfully',
'transactionId': 1022,
'feeAmountExcludingGst': 0.0,
'feeAmountGstComponent': 0.0,
'feeAmountIncludingGst': 0.0,
'callerUniqueReference': 'bpay12345',
'feeBreakdown':
{
'disbursementFees':
[
{
'disbursementArrayIndex': 0,
'disbursementFee':
{
'feeAmountExcludingGst': 0.1,
'feeAmountGstComponent': 0.01,
'feeAmountIncludingGst': 0.11
}
}
]
}
}
DebitChildMAccountExecuteResponse:
value:
{
'durationMs': 30,
'status': 'Ok',
'statusDescription': 'Operation completed successfully',
'transactionId': 1022,
'feeAmountExcludingGst': 0.05,
'feeAmountGstComponent': 0.005,
'feeAmountIncludingGst': 0.055,
'callerUniqueReference': 'childmaccount123',
'feeBreakdown':
{
'debitFee':
{
'feeAmountExcludingGst': 0.05,
'feeAmountGstComponent': 0.005,
'feeAmountIncludingGst': 0.055
}
}
}
PayMAccountExecuteResponse:
value:
{
'durationMs': 20,
'status': 'Ok',
'statusDescription': 'Operation completed successfully',
'transactionId': 1022,
'feeAmountExcludingGst': 0.06,
'feeAmountGstComponent': 0.006,
'feeAmountIncludingGst': 0.066,
'callerUniqueReference': 'maccountpay123',
'feeBreakdown':
{
'debitFee':
{
'feeAmountExcludingGst': 0.06,
'feeAmountGstComponent': 0.006,
'feeAmountIncludingGst': 0.066
}
}
}
DirectDebitExecuteResponse:
value:
{
'durationMs': 35,
'status': 'Ok',
'statusDescription': 'Operation completed successfully',
'transactionId': 1022,
'feeAmountExcludingGst': 0.15,
'feeAmountGstComponent': 0.015,
'feeAmountIncludingGst': 0.165,
'callerUniqueReference': 'directdebit123',
'feeBreakdown':
{
'debitFee':
{
'feeAmountExcludingGst': 0.15,
'feeAmountGstComponent': 0.015,
'feeAmountIncludingGst': 0.165
}
}
}
BulkDirectDebitExecuteResponse:
value:
{
'durationMs': 40,
'status': 'Ok',
'statusDescription': 'Operation completed successfully',
'transactionId': 1022,
'feeAmountExcludingGst': 0.2,
'feeAmountGstComponent': 0.02,
'feeAmountIncludingGst': 0.22,
'callerUniqueReference': 'bulkdebit123',
'feeBreakdown':
{
'bulkDirectDebitFees':
[
{
'directDebitArrayIndex': 0,
'directDebitFee':
{
'feeAmountExcludingGst': 0.1,
'feeAmountGstComponent': 0.01,
'feeAmountIncludingGst': 0.11
}
},
{
'directDebitArrayIndex': 1,
'directDebitFee':
{
'feeAmountExcludingGst': 0.1,
'feeAmountGstComponent': 0.01,
'feeAmountIncludingGst': 0.11
}
}
]
}
}
DirectCreditExecuteResponse:
value:
{
'durationMs': 22,
'status': 'Ok',
'statusDescription': 'Operation completed successfully',
'transactionId': 1022,
'feeAmountExcludingGst': 0.12,
'feeAmountGstComponent': 0.012,
'feeAmountIncludingGst': 0.132,
'callerUniqueReference': 'directcredit123',
'feeBreakdown':
{
'transactionFee':
{
'feeAmountExcludingGst': 0.12,
'feeAmountGstComponent': 0.012,
'feeAmountIncludingGst': 0.132
}
}
}
DirectDebitTokenExecuteResponse:
value:
{
'durationMs': 25,
'status': 'Ok',
'statusDescription': 'Operation completed successfully',
'transactionId': 1022,
'feeAmountExcludingGst': 0.07,
'feeAmountGstComponent': 0.007,
'feeAmountIncludingGst': 0.077,
'callerUniqueReference': 'ddtoken123',
'feeBreakdown':
{
'debitFee':
{
'feeAmountExcludingGst': 0.07,
'feeAmountGstComponent': 0.007,
'feeAmountIncludingGst': 0.077
}
}
}
DirectCreditTokenExecuteResponse:
value:
{
'durationMs': 28,
'status': 'Ok',
'statusDescription': 'Operation completed successfully',
'transactionId': 1022,
'feeAmountExcludingGst': 0.08,
'feeAmountGstComponent': 0.008,
'feeAmountIncludingGst': 0.088,
'callerUniqueReference': 'dctoken123',
'feeBreakdown':
{
'transactionFee':
{
'feeAmountExcludingGst': 0.08,
'feeAmountGstComponent': 0.008,
'feeAmountIncludingGst': 0.088
}
}
}
NppPayBankAccountExecuteResponse:
value:
{
'durationMs': 18,
'status': 'Ok',
'statusDescription': 'Operation completed successfully',
'transactionId': 1022,
'feeAmountExcludingGst': 0.09,
'feeAmountGstComponent': 0.009,
'feeAmountIncludingGst': 0.099,
'callerUniqueReference': 'nppbank123',
'feeBreakdown':
{
'disbursementFees':
[
{
'disbursementArrayIndex': 0,
'disbursementFee':
{
'feeAmountExcludingGst': 0.09,
'feeAmountGstComponent': 0.009,
'feeAmountIncludingGst': 0.099
}
}
]
}
}
NppPayIdExecuteResponse:
value:
{
'durationMs': 15,
'status': 'Ok',
'statusDescription': 'Operation completed successfully',
'transactionId': 1022,
'feeAmountExcludingGst': 0.1,
'feeAmountGstComponent': 0.01,
'feeAmountIncludingGst': 0.11,
'callerUniqueReference': 'npppayid123',
'feeBreakdown':
{
'disbursementFees':
[
{
'disbursementArrayIndex': 0,
'disbursementFee':
{
'feeAmountExcludingGst': 0.1,
'feeAmountGstComponent': 0.01,
'feeAmountIncludingGst': 0.11
}
}
]
}
}
TransactionStatusResponseComplete:
value:
{
'statusDescription': 'Direct Debit to mAccount',
'completedDate': '2020-06-05',
'creditCardPaymentStatus': null,
'dishonouredDate': null,
'expectedClearanceDateForFunds': null,
'fundsClearedDate': null,
'transactionStatus': 'Complete',
'uniqueReference': 'Reference7817846'
}
description: 'This response signifies a transaction that has successfully completed without any holds or dishonours.'
TransactionStatusResponsePending:
value:
{
'statusDescription': 'Payment is in progress, please do not resubmit the transaction. Use the /financial/v2/status/ API to check the status at a later time.',
'completedDate': null,
'creditCardPaymentStatus': null,
'dishonouredDate': null,
'expectedClearanceDateForFunds': null,
'fundsClearedDate': null,
'transactionStatus': 'Pending',
'uniqueReference': 'NPPPayRef-18853028'
}
description: 'Represents the status of an NPP Payout transaction that is still in the process of being completed, waiting for updates from the banking institution.'
TransactionStatusResponseRejected:
value:
{
'statusDescription': 'Transaction rejected by banking institution.',
'completedDate': '2020-06-05',
'creditCardPaymentStatus': null,
'dishonouredDate': null,
'expectedClearanceDateForFunds': null,
'fundsClearedDate': null,
'transactionStatus': 'Rejected',
'uniqueReference': 'NPPPayRef-44785082'
}
description: 'This response indicates that an NPP Payout transaction which was previously pending has now been rejected by the banking institution.'
TransactionStatusResponseDishonoured:
value:
{
'statusDescription': 'Debit Transaction was Dishonoured on the 2020-06-05',
'completedDate': null,
'creditCardPaymentStatus': null,
'dishonouredDate': '2020-06-05',
'expectedClearanceDateForFunds': null,
'fundsClearedDate': null,
'transactionStatus': 'Dishonoured',
'uniqueReference': 'Reference7817846'
}
description: 'Details a debit transaction that has been dishonoured, including the specific date of dishonour.'
TransactionStatusResponseWaitingOnClearedFunds:
value:
{
'statusDescription': 'Debit Transaction is waiting for funds to clear on the 2020-06-05',
'completedDate': null,
'creditCardPaymentStatus': null,
'dishonouredDate': null,
'expectedClearanceDateForFunds': '2020-06-05',
'fundsClearedDate': null,
'transactionStatus': 'WaitingOnClearedFunds',
'uniqueReference': 'Reference4993008'
}
description: 'This status is given to transactions that are awaiting the clearance of funds, specifying the expected date for clearance.'
TransactionStatusResponseClearedFunds:
value:
{
'statusDescription': 'Direct Debit to mAccount',
'completedDate': null,
'creditCardPaymentStatus': null,
'dishonouredDate': null,
'expectedClearanceDateForFunds': null,
'fundsClearedDate': '2020-06-05',
'transactionStatus': 'Complete',
'uniqueReference': 'Reference7817846'
}
description: 'Represents a transaction where direct debit to an mAccount has been fully processed and funds are considered cleared on the stated date.'