Bill Onboarding
Monoova's onboarding API flow is modular and lightweight. It allows you to verify a business and its associated individuals (UBOs) without the need to manage application states or workflows. Simply submit the business, retrieve detected individuals, verify them, and continue through to activation. This guide walks you through verifying your business, provisioning your ledger, and enabling PayID and PayTo.
How It Works
- Verify business and individuals via KYB
- Create a Ledger
- Register a PayID against the Ledger
- Create a PayTo Agreement for account funding
- Check Agreement Status
Each step can be tested in Monoova’s sandbox environment.
Step 1: Business and Individual Verification with Monoova KYB API
Base URL: https://dev-api.monoova.com
Monoova’s KYB (Know Your Business) API fits seamlessly into your onboarding flow, verifying businesses and individuals without needing to manage application states.
Authenticate and Get Token
Use your API key to retrieve a 24-hour bearer token for all other KYB steps.
Endpoint: POST /kyb/auth/token
Headers:
Create and Verify Business Entity
Submit the business details to begin KYB verification.
Endpoint: POST /kyb/v1/CreateVerifyEntity
Request Body:
The response will return an applicantId. This identifier is required for all subsequent KYB steps.
Polling for Verification Completion
Endpoint: POST /kyb/v1/EntityStatus
Request Body:
Poll every 2–3 minutes until the status is Completed.
Retrieve UBOs
After the entity is verified, retrieve the beneficial owners (UBOs) detected by Monoova.
Endpoint: POST /kyb/v1/RetrieveUbos
Request Body:
Example Response:
Each UBO returned here must be submitted individually for verification in the next step.
Create and Verify Individual(s)
Submit each UBO for identity verification.
Endpoint: POST /kyb/v1/CreateVerifyInd
Request Body:
Poll POST /kyb/v1/IndStatus every 2–3 minutes using the applicantId.
Once all individuals are verified, the applicantId is eligible to provision a ledger and enable payments.
Step 2: Create a Monoova Ledger - Full Docs
Use your verified applicantId to provision a ledger account.
This API uses basic auth using your sandbox API key as username
Endpoint: POST https://api.m-pay.com.au/ledger/v1/create
Request Body:
Store the following values for future steps:
- ledgerAccountNumber
- automatcherDetails.bsb
- automatcherDetails.bankAccountNumber
These are used in all Transaction requests as either the payer (payout) or payee (inbound).
Step 3: Register PayID - Full Docs
Enable PayID on the ledger to receive instant payments.
Endpoint: POST https://api.m-pay.com.au/receivables/v1/payid/registerpayid
Request Body:
Leave payId blank to auto-generate one like [email protected]. You can provide a custom PayID like @abccorp.com after Monoova enables it.
Store the PayID for displaying to customers.
Step 4: Generate a Bearer Token (PayTo) - Full Docs
Generate a 24-hour bearer token for use with the PayTo API.
This API uses basic auth with your sandbox mAccount as username and sandbox APIKey as password.
Endpoint: POST https://sand-api.monoova.com/au/security/oauth-v1/Token
Authentication:
- Username: Your mAccount number from portal
- Password: Your API key from portal
Returns a Bearer token for use with PayTo endpoints.
Step 5: Create a PayTo Agreement - Full Docs
Endpoint: POST https://sand-api.monoova.com/au/payto/pam-v1/PaymentAgreement
Request Body:
Example Response:
In sandbox:
- Wait ~30 minutes for the agreement to auto-approve
- Or share UID with Monoova on Slack to approve manually
Step 6: Check Agreement Status - Full Docs
Endpoint: GET https://sand-api.monoova.com/au/payto/pam-v1/paymentAgreement/{paymentAgreementUID}
Example Response:
Status Values:
- PendingApproval: Waiting for payer approval
- Approved: Agreement active and ready
- Rejected: Agreement was declined
- Expired: Approval expired
You’re Live
Your business is now fully onboarded with Monoova:
- KYB and UBOs verified
- Ledger provisioned
- PayID registered
- PayTo agreement created
You’re now ready to send and receive money using Monoova’s infrastructure.