Loan disbursement
This is a step by step tutorial on how you can use Zūm Rails to disburse a new loan payment
Prerequisites
To disburse funds for a new loan, you need to decide which payment method you will use. Each payment method requires different information and has its own particularities in speed, pricing, and KYC requirements.
Authenticate with Zūm APIs
Authenticate with the Zūm Rails API as indicated below, or view more details here
Endpoint: /api/authenticate
Method: POST{
"Username": "abc...123",
"Password": "xyz...321"
}Fund Zūm Wallet
To disburse loans, funds must first be deposited into the Zūm Rails platform. A good idea is to fund the Zūm Wallet at the beginning of the week and then use these funds to issue new loans throughout the week.
Create a transaction to fund the wallet from your funding source. A funding source is your operating bank account from your business with your bank. Make sure you inform the FundingSourceId and the WalletId in the payload, as well as the amount that will be enought to the loans you plan to issue.
If needed, you can check the Zūm Wallet balance before as described here
Endpoint: /api/transaction
Method: POST{
"ZumRailsType": "FundWallet",
"TransactionMethod": "Eft",
"Amount": 123.45,
"Memo": "Fund 01",
"Comment": "Funding Zum Wallet for weekly loan disbursements",
"FundingSourceId": "<your-funding-source-id>",
"WalletId": "<your-wallet-id>"
}Create a user - The loan recipient
Create a user, the recipient of the loan. There are different ways to add a new user. API, Zūm Connect (widget), or manually through the portal. More details can be found here.
Depending on the information stored on Zūm Rails, different payment methods will be enabled. For example, if an email is provided, Interac can be enabled; if bank account information is provided, then EFT or ACH can be enabled; if a credit card is provided, then credit card payments can be enabled.
Endpoint: /api/user
Method: POSTExample of creating a user that will enable Interac e-transfer:
{
"FirstName": "John",
"LastName": "Doe",
"Email": "[email protected]"
}Example of creating a user that will enable EFT payments:
{
"FirstName": "John",
"LastName": "Doe",
"Email": "[email protected]",
"BankAccountInformation": {
"InstitutionNumber": "123",
"TransitNumber": "12345",
"AccountNumber": "1234567"
}
}Example of creating a user that will enable Interac and EFT payments via data aggregation:
To add a user via data aggregation, you can use Zūm Rails data aggregation, either standalone as described here or with PAD consent page as described here.
Create transaction - Disburse the loan
Now, to disburse the loan, you can create a transaction like the example below.
Endpoint: /api/transaction
Method: POSTLoan disbursement via Interac e-transfer
{
"ZumRailsType": "AccountsPayable",
"TransactionMethod": "Interac",
"Amount": 123.45,
"Memo": "Laon 01",
"Comment": "Issuing a loan via Interac e-transfer to John Smith",
"UserId": "<the-user-id-from step 4",
"WalletId": "<your-wallet-id>"
}Loan disbursement via EFT
{
"ZumRailsType": "AccountsPayable",
"TransactionMethod": "Eft",
"Amount": 123.45,
"Memo": "Laon 01",
"Comment": "Issuing a loan via EFT to John Smith",
"UserId": "<the-user-id-from step 4",
"WalletId": "<your-wallet-id>"
}Receive payment updates
The recommended way to receive payment updates is through webhooks.
You can configure your webhook URL and which events you might want to receive in the Zūm Rails portal, under settings/webhook and api settings.

We recommend setting up the transaction status events, selecting all statuses.
When the transaction status changes, we will post to your webhook URL with the transaction GET payload, as described here
Last updated
Was this helpful?
