Skip to Content
CanadaCollect (Canada CAD)

Collect (Canada CAD)

Create one deposit per API call. The payer completes Interac using the returned payment instructions. Live API keys only. Scope: payin:create.

Idempotency-Key is required (16–255 chars). Replaying the same key + same body returns the first response.

Create deposit

POST/v1/cad/collectspayin:create

Request fields

FieldRequiredNotes
methodyesrequest_money | interac_email
amountyes for request_moneyDecimal string, 1–50,000 CAD
amountno for interac_emailOptional cap/hint; payer may send a different credited amount
senderEmailyes for interac_emailPayer / sender email
phoneNumberyes for interac_email+1XXXXXXXXXX (Canadian E.164)
messagenoShown in Interac flow when supported
merchantReferencenoYour id (max 128); defaults to Transacty transaction id
metadatanoOpaque JSON stored on the transaction

Request Money (fixed amount)

{ "method": "request_money", "amount": "150.00", "merchantReference": "order-9001", "message": "Invoice 9001", "metadata": { "orderId": "9001" } }

Store transactionId. Your checkout UI is paymentInstructions — Transacty does not host a CAD checkout page.

Interac email

Interac email does not send a payment email to the payer. Create the deposit, then show paymentInstructions and have the payer send the e-transfer to recipientEmail using securityQuestion and securityAnswer.

{ "method": "interac_email", "senderEmail": "payer@example.com", "phoneNumber": "+14165551234", "merchantReference": "order-9002", "message": "Pay your invoice" }

paymentInstructions (Interac email):

{ "type": "interac_email", "depositId": "51", "amountCad": "2.00", "status": "awaiting_payment", "recipientEmail": "collect@bank.example", "securityQuestion": "Invoice?", "securityAnswer": "9002" }
FieldWhat to show the payer
recipientEmailWhere they send the Interac e-transfer
securityQuestionQuestion they must use on the e-transfer
securityAnswerAnswer they must use — sensitive, payer session only
amountCadAmount hint when present

The same three fields (recipientEmail, securityQuestion, securityAnswer) are on GET /v1/cad/collects/:transactionId while the deposit is open.

Treat securityAnswer as sensitive — show it only in the intended payer session. Do not log it, email it, or put it in merchant-facing dashboards.

For interac_email, amount is optional. The credited amount is what the payer sends (within 1–50,000 CAD).

Poll collect status

GET/v1/cad/collects/:transactionIdpayin:create

No body. Sign with {timestamp}..

curl -X GET https://api.transacty.ai/v1/cad/collects/{transactionId} \
  -H "X-Transacty-Key: $TRANSACTY_KEY" \
  -H "X-Transacty-Timestamp: $TS" \
  -H "X-Transacty-Signature: $SIG" \
  -H "Content-Type: application/json"
status / settledMeaning
awaiting_payment, pending, processingStill open
credited, settled: trueCAD wallet credited (net of Transacty fees)
failed, expiredTerminal failure — no credit

Poll after create until terminal, or rely on payin.completed.

While an Interac email deposit is still open, paymentInstructions on this GET includes recipientEmail, securityQuestion, and securityAnswer so you can re-render checkout if the payer reloads.

Next steps

Last updated on