How it works
The initial API call returns immediately with the collection in aPENDING state. Settlement happens asynchronously once the payer approves — you learn the final outcome from the collection webhook, not the initial response.
Prerequisites
- A business with API Services enabled and an active CAD wallet.
- Interac enabled for CAD on your account.
- An OAuth credential that includes the
collection:interac:createscope (part of thecollectionsandfull-accessbundles). See Authentication.
Initiate a money request
Send the amount and the payer’s email. Blaaiz sends the Interac request to that email.Request fields
Unlike Auto Deposit collections, the
email here is the payer’s address (where the request is sent), not your business Auto Deposit email. You don’t need an Auto Deposit email configured for this flow.Handle the collection webhook
When the payer approves the request, Blaaiz credits your CAD wallet and sends acollection webhook to your configured collection_url. Match it to the pending collection using transaction_reference (the reference from the initiate response) or transaction_id.
transaction_status is SUCCESSFUL. See the CAD collection webhook payload for the full schema.
If the payer does not approve before expires_at, Blaaiz sends a collection webhook with transaction_status set to EXPIRED and message set to Transaction Expired. No funds move. Use this webhook to close the pending request in your system. See Expired transactions.
Fees
The standard INTERAC collection fee applies, the same as Auto Deposit collections. Your wallet is credited the net amount (transaction_amount_without_fee); transaction_fee shows the fee deducted.
Money request vs Auto Deposit
Common pitfalls
Treating the 200 response as settlement. The initiate call only confirms the request was sent. The collection isPENDING until the payer approves it — always wait for the SUCCESSFUL collection webhook before releasing value.
Payer doesn’t approve in time. Money requests expire at expires_at — 48 hours after creation by default, or sooner if you set expiry_hours (max 120). If the payer never approves, no funds move. Blaaiz then sends a collection webhook with transaction_status set to EXPIRED, so you can stop waiting and close the request in your system.
No active CAD wallet. The endpoint returns 400 with No active CAD wallet found... if your business has no CAD wallet. Create one first.
APIs used
- Initiate Interac money request
- CAD collection webhook payload
- Authentication & scopes
- Accept incoming Interac money request — for externally received transfers

