- METHOD TYPEBank Transfer
- PAYMENTS
- PAYOUTS
- REFUNDS
- RECURRING
Introduction
Interac e-Transfer is a fast and secure way to send money from within the security of your online banking service (see Payment (Deposit) Flow). It uses email for fast notification to the recipient that a transfer has been sent, while the participating financial institutions transfer the funds using established and secure banking procedures.
Interac e-Transfer Outbound allows merchants to send funds to their customers quickly and easily (see Payout (Withdrawal) Flow). It uses email and SMS for fast notification to the recipient that a transfer has been sent, while the participating financial institutions transfer the funds using established and secure banking procedures.
This guide describes the steps to integrate Interac e-Transfer as a Nuvei APM into your payment flows, enabling customer payments, and allowing you to perform payouts, using Nuvei’s server-to-server REST API methods.
Interac e-Transfer allows your customers to link any number of their Canadian bank accounts to their email address. The Nuvei platform encrypts your customer’s bank account details securely, and provides a userPaymentOptionId (UPO) representing the account, for you to use in transactions.
Prerequisites and Notes
- This guide assumes you have completed all account setup prerequisites, and are ready to integrate Interac e-Transfer into your payment flow.
- Interac e-Transfer only supports Canadian based IPs.
- Payments (deposits) and payout (withdrawal) transactions are conducted in Canadian Dollars between Canadian bank accounts.
- Nuvei handles Interac e-Transfer transactions in “redirection mode”.
- A UPO (user payment option) is an encrypted customer payment method record stored in the Nuvei system, representing a customer bank account or other payment method.
- Test credentials and testing scenarios can be provided by Nuvei if necessary. You can contact Nuvei support for assistance.
Supported Countries
- Canada
Supported Currencies
- CAD
Payment (Deposit) Flow
1. Generate a sessionToken
Press here for details.
2. Send a /payment Request
Send a /payment request with its mandatory parameters, including the following:
userTokenIdamountcurrencypaymentOption.alternativePaymentMethodclass containing:paymentMethod: “apmgw_Interac_eTransfer”emailmobilePhone
billingAddressclass containing:firstName,lastName,phone,country,email,address,citydeviceDetailsclass containing:ipAddress
Example /payment Request
{
"sessionToken": "<sessionToken from /getSessionToken>",
"merchantId": "<your merchantId>",
"merchantSiteId": "<your merchantSiteId>",
"userTokenId": "<unique customer identifier in merchant system>",
"clientRequestId": "<unique request ID in merchant system>",
"clientUniqueId": "<unique transaction ID in merchant system>",
"currency": "CAD",
"amount": "100",
"paymentOption": {
"alternativePaymentMethod": {
"paymentMethod": "apmgw_Interac_eTransfer"
"email": "[email protected]"
"mobilePhone": "4162477671"
}
},
"billingAddress": {
"firstName": "John",
"lastName": "Smith",
"phone": "4162477671",
"address": "2 Eireann Quay",
"city": "Toronto",
"country": "CA",
"email": "[email protected]"
},
"deviceDetails": {
"ipAddress": "<customer's IP address>"
},
"urlDetails": {
"notificationUrl": "<URL to which DMNs are sent>"
},
"timeStamp": "<YYYYMMDDHHmmss>",
"checksum": "<calculated checksum>"
}
The response generates and returns a redirect URL (redirectUrl) to redirect the customer to the payment page, as well as a UPO (userPaymentOptionId) for use in future transactions.
Example /payment Response
{
"internalRequestId":712597608,
"status":"SUCCESS",
"errCode":0,
"reason":"",
"merchantId":"8860255768659021142",
"merchantSiteId":"119823",
"version":"1.0",
"clientRequestId":"20230707165257",
"sessionToken":"44922e4a-20bd-4137-a937-8deb53e4c8c2",
"clientUniqueId":"20180327175242",
"orderId":"375620058",
"userTokenId":"6fa38ea2-6f1a-4620-85ae-7deaf0d5f8f1",
"paymentOption":{
"redirectUrl":"https"://interac.express-connect.com/webflow?transaction=C5C51E99607D4F151EF9345EC94D91C2&token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzaXRlIjoiSUNFIERlbW8gVGVzdCIsImFtb3VudCI6NTAsInNhbmRib3giOnRydWUsIm5hbWUiOiJKb2huIFNtaXRoIiwibW9iaWxlIjoiNDE2MjQ3NzY3MSIsInVzZXJJcCI6IjEyNy4wLjAuMSIsImN1cnJlbmN5IjoiQ0FEIiwibGFuZyI6ImVuIiwidHlwZSI6IkNQSSIsInVzZXJJZCI6IlRlc3RUb2tlbiIsInRyYW5zYWN0aW9uaWQiOiJDNUM1MUU5OTYwN0Q0RjE1MUVGOTM0NUVDOTREOTFDMiIsImVtYWlsIjoidGVzdEBudXZlaS5jb20iLCJ1c2VyIjoiYmYwZGE4NWJmODI5MzJlZWYyMWFjZmE3MzRiNmY2MDUiLCJjYW1wYWlnbiI6IjM3NzJjMzU5MGY5NWRmYzJjYTAyZWU2YjU1MDBmNzhlIiwiZW50aXR5SWQiOjEsImlhdCI6MTY4ODczNzk3NywiZXhwIjoxNjg4ODI0Mzc3fQ.VTCu38L_SLYbWJ6iEhmHB2D3Ke57o1mL89X5NcNo8iA,
"userPaymentOptionId":"92469538",
"card":{
}
},
"transactionStatus":"REDIRECT"
}
After the transaction is processed, Nuvei sends a Direct Merchant Notification (DMN) that includes the result of the transaction to the URL provided in urlDetails.notification, which Nuvei recommends including in the /payment request.
Example /payment DMN with status=PENDING
...'ppp_status=PENDING&Status=PENDING&ExErrCode=0&ErrCode=0&errApmCode=0&errApmDescription=&errScCode=0&errScDescription=&Reason=&ReasonCode=0&PPP_TransactionID=44210475288&userid=833050838&merchant_unique_id=634508427854001&customData=&productId=&first_name=KARINE&last_name=SAINT+PIERRE&email=test%40test.com¤cy=CAD&clientUniqueId=634508427854001&customField1=&customField2=&customField3=&customField4=&customField5=&customField6=&customField7=&customField8=&customField9=&customField10=&customField11=&customField12=&customField13=&customField14=&customField15=&invoice_id=&address1=&address2=&country=Canada&state=&city=&zip=&phone1=14383544808&phone2=&phone3=&client_ip=174.93.180.245&nameOnCard=&cardNumber=&bin=&noCVV=&acquirerId=&acquirerBank=Interac-PI&expMonth=&expYear=&Token=&tokenId=&AuthCode=tylerparker8887%40hotmail.com&AvsCode=&Cvv2Reply=&shippingCountry=&shippingState=&shippingCity=&shippingAddress=&shippingZip=&shippingFirstName=&shippingLastName=&shippingPhone=&shippingCell=&shippingMail=&total_discount=0.00&total_handling=0.00&total_shipping=0.00&total_tax=0.00&buyButtonProductBundleId=&merchant_site_id=179768&merchant_status=&action=&requestVersion=&message=PENDING&merchantLocale=&unknownParameters=&payment_method=apmgw_Interac_eTransfer&ID=&merchant_id=7468175716266556934&responseTimeStamp=2023-07-19.21%3A00%3A45&buyButtonProductId=&webMasterId=&appliedPromotions=&uniqueCC=&transactionType=Sale&externalEmail=&cardCompany=&eci=&user_token_id=833050838&userPaymentOptionId=2840334706&TransactionID=1130000004628769536&externalTransactionId=1689800439&APMReferenceID=D74402627B01601118423AC17F901BF8&orderTransactionId=42753246748&totalAmount=49.75&dynamicDescriptor=vglobal+dsl&item_name_1=name&item_number_1=&item_amount_1=49.75&item_quantity_1=1&item_discount_1=0.00&item_handling_1=0.00&item_shipping_1=0.00&feeAmount=&amountWithoutFee=&houseNumber=&customCurrency=&upoRegistrationDate=20230713&type=DEPOSIT&clientRequestId=634508427854001&relatedTransactionId=&apmPayerInfo=aquirer%3A+3%2C+name%3A+null%2C+trackingId%3A+null%2C+refId%3A+null%2C+bankName%3A+null%2C+replyTo%3A+null&sessionId=ff472b250c9a0c94e96f1d72c930&responsechecksum=be0ab96bd60a050e424d1bd2d69630b152023fbf7005f5e53bbb023d33fe88e5&advanceResponseChecksum=1f8719a640a795f858bfca9d75aa6c81bcdbafa5d22e977cd81f29fd2d3d8d85',
Example /payment DMN with status=APPROVED
...'ppp_status=OK&Status=APPROVED&ExErrCode=0&ErrCode=0&errApmCode=0&errApmDescription=&errScCode=0&errScDescription=&Reason=&ReasonCode=0&PPP_TransactionID=44210475288&userid=833050838&merchant_unique_id=634508427854001&customData=&productId=&first_name=KARINE&last_name=SAINT+PIERRE&email=test%40test.com¤cy=CAD&clientUniqueId=634508427854001&customField1=&customField2=&customField3=&customField4=&customField5=&customField6=&customField7=&customField8=&customField9=&customField10=&customField11=&customField12=&customField13=&customField14=&customField15=&invoice_id=&address1=&address2=&country=Canada&state=&city=&zip=&phone1=14383548808&phone2=&phone3=&client_ip=174.93.180.245&nameOnCard=&cardNumber=&bin=&noCVV=&acquirerId=&acquirerBank=Interac-PI&expMonth=&expYear=&Token=&tokenId=&AuthCode=tylerparker8887%40test.com&AvsCode=&Cvv2Reply=&shippingCountry=&shippingState=&shippingCity=&shippingAddress=&shippingZip=&shippingFirstName=&shippingLastName=&shippingPhone=&shippingCell=&shippingMail=&total_discount=0.00&total_handling=0.00&total_shipping=0.00&total_tax=0.00&buyButtonProductBundleId=&merchant_site_id=179768&merchant_status=&action=&requestVersion=&message=APPROVED&merchantLocale=&unknownParameters=&payment_method=apmgw_Interac_eTransfer&ID=&merchant_id=7468175716266556934&responseTimeStamp=2023-07-19.21%3A02%3A08&buyButtonProductId=&webMasterId=&appliedPromotions=&uniqueCC=&transactionType=Sale&externalEmail=&cardCompany=&eci=&user_token_id=833050838&userPaymentOptionId=2840334706&TransactionID=1130000004628769536&externalTransactionId=1689800439&APMReferenceID=D74402627B01601118423AC17F901BF8&orderTransactionId=42753246748&totalAmount=49.75&dynamicDescriptor=vglobal+dsl&item_name_1=name&item_number_1=&item_amount_1=49.75&item_quantity_1=1&item_discount_1=0.00&item_handling_1=0.00&item_shipping_1=0.00&feeAmount=&amountWithoutFee=&houseNumber=&customCurrency=&upoRegistrationDate=20230713&type=DEPOSIT&clientRequestId=634508427854001&relatedTransactionId=&apmPayerInfo=aquirer%3A+3%2C+name%3A+JASMINE+SAINT-PIERRE%2C+trackingId%3A+e20afdf6%2C+refId%3A+CA3FVzkF%2C+bankName%3A+Desjardins%2C+replyTo%3A+lil.jasmine%40test.com&sessionId=ff472b250c9a0c94e96f1d72c930&responsechecksum=3f9cb0fa8414d20ab2780298f8c20ddee1a6233d54f3ea4984a1da8238642a0d&advanceResponseChecksum=eeecd1079e91a511f60b5e407323c33e4fa6d37e2cd57dc6a68c545ba2990c53',
Example /payment DMN with status=DECLINED
...'ppp_status=FAIL&Status=DECLINED&ExErrCode=0&ErrCode=0&errApmCode=0&errApmDescription=STATUS_EXPIRED&errScCode=2022&errScDescription=Transaction+expired.&Reason=Transaction+expired.&ReasonCode=2022&PPP_TransactionID=378917548&userid=707835907&merchant_unique_id=104463777729001&customData=&productId=&first_name=UsrMgoWPh&last_name=UsrMqLLcG&email=2e5cab83-4bf5-461c-9990-d476adcc78c1%40sparkware.ro¤cy=CAD&clientUniqueId=104463777729001&customField1=&customField2=&customField3=&customField4=&customField5=&customField6=&customField7=&customField8=&customField9=&customField10=&customField11=&customField12=&customField13=&customField14=&customField15=&invoice_id=&address1=&address2=&country=Canada&state=&city=&zip=&phone1=12345678&phone2=&phone3=&client_ip=85.9.60.26&nameOnCard=&cardNumber=&bin=&noCVV=&acquirerId=&acquirerBank=Interac-PI&expMonth=&expYear=&Token=&tokenId=&AuthCode=2e5cab83-4bf5-461c-9990-d476adcc78c1%40sparkware.ro&AvsCode=&Cvv2Reply=&shippingCountry=&shippingState=&shippingCity=&shippingAddress=&shippingZip=&shippingFirstName=&shippingLastName=&shippingPhone=&shippingCell=&shippingMail=&total_discount=0.00&total_handling=0.00&total_shipping=0.00&total_tax=0.00&buyButtonProductBundleId=&merchant_site_id=167863&merchant_status=&action=&requestVersion=&message=DECLINED&merchantLocale=&unknownParameters=&payment_method=apmgw_Interac_eTransfer&ID=&merchant_id=5438714187435458602&responseTimeStamp=2023-07-20.19%3A02%3A01&buyButtonProductId=&webMasterId=&appliedPromotions=&uniqueCC=&transactionType=Sale&externalEmail=&cardCompany=&eci=&user_token_id=707835907&userPaymentOptionId=73992938&TransactionID=811000000003287493&externalTransactionId=1689793269&APMReferenceID=7F594EF0A6C5A3C6D031DDF36A27BF35&orderTransactionId=1211496968&totalAmount=100.00&dynamicDescriptor=%3F&item_name_1=name&item_number_1=&item_amount_1=100.00&item_quantity_1=1&item_discount_1=0.00&item_handling_1=0.00&item_shipping_1=0.00&feeAmount=&amountWithoutFee=&houseNumber=&customCurrency=&upoRegistrationDate=20220315&type=DEPOSIT&clientRequestId=104463777729001&relatedTransactionId=&apmPayerInfo=aquirer%3A+null%2C+name%3A+null%2C+trackingId%3A+null%2C+refId%3A+null%2C+bankName%3A+null%2C+replyTo%3A+null&sessionId=f870390a0317e0766b4196cdb62f&responsechecksum=953b5f35060b9867effd8a1eca05b9486a69745ea914ea54089cf729ee70b852&advanceResponseChecksum=1f0a43b7f73753ea26fe652c2ad0dc5ddeb19385774631d7cc8e73a38601a603',
Payout (Withdrawal) Flow
Follow these steps to perform a payout:
1. Register a userTokenId
A userTokenId is a field in the Nuvei system containing the user’s identifier in the merchant system.
If you do not have a userTokenId registered in the Nuvei system for this user, then register one by sending a /createUser request, including email, countryCode, firstName, and lastName.
Example /createUser Request
{
"merchantId": "<your merchantId>",
"merchantSiteId": "<your merchantSiteId>",
"userTokenId": "<unique customer identifier in merchant system>",
"clientUniqueId": "<unique transaction ID in merchant system>",
"clientRequestId": "<unique request ID in merchant system>",
"currency": "CAD",
"amount": "100",
"userPaymentOption": {
"userPaymentOptionId": "<UPO received from previous deposit>"
},
"deviceDetails": {
"ipAddress": "<customer's IP address>"
},
"urlDetails": {
"notificationUrl": "<URL to which DMNs are sent>"
},
"timeStamp": "<YYYYMMDDHHmmss>",
"checksum": "<calculated checksum>"
}
Example /createUser Response
{
"transactionStatus": "APPROVED",
"clientRequestId": "W1Q3SBGE4",
"internalRequestId": 17817071,
"version": "1.0",
"transactionId": "2110000000004333013",
"merchantSiteId": "126006",
"merchantId": "2502136204546424962",
"clientUniqueId": "695701003",
"errCode": 0,
"userPaymentOptionId": "8054521",
"paymentMethodErrorCode": 0,
"userTokenId": "CEBQK9OVSLJA",
"externalTransactionId": "2110000000068709",
"status": "SUCCESS"
}
2. Create the UPO
Create a UPO by sending an /addUPOAPM request and include:
userTokenId– The unique user identifier in your system."paymentMethodName":"apmgw_Interac_eTransfer"apmDataclass containing:"personal_id"billingAddressclass containing:countryandemail
Example /addUPOAPM Request
{
"merchantSiteId":"<your merchantSiteId>",
"merchantId":"<your merchantId>",
"userTokenId":"<unique customer identifier in merchant system>",
"clientRequestId":"<unique request ID in merchant system>",
"paymentMethodName":"apmgw_Interac_eTransfer",
"apmData":{
"personal_id":"<personal ID>"
},
"billingAddress":{
"country":"CA",
"email":"[email protected]"
},
"timeStamp":"<YYYYMMDDHHmmss>",
"checksum":"<calculated checksum>"
}
Example /addUPOAPM Response
{
"userPaymentOptionId":2152829771,
"internalRequestId":25129841,
"status":"SUCCESS",
"errCode":0,
"reason":"",
"merchantId":"1102398682906145682",
"merchantSiteId":"228311",
"version":"1.0",
"clientRequestId":"20230228133537"
}
3. Send a /payout Request
Send a /payout request and include the userPaymentOptionId, which contains the user’s previously stored APM account details. Press here for an example.
After the transaction is processed, Nuvei sends a DMN that includes the result of the transaction to the URL provided in urlDetails.notification, which Nuvei recommends including in the /payout request.
Use Experience
Deposit
- The user is redirected to the Gigadat’s hosted payment page. The user gets access to their personal banking (RBC in this scenario).

- The user logs in and selects Send an Interac e-Transfer.

- On the Interac e-Transfer page, the user needs to add a new recipient by pressing the dropdown menu next to To.

- The user fills in the required information and presses Continue.

- The user verifies that all the information is correct and presses Send Now.
- The transaction is now complete, and the user returns to the Gigadat’s hosted payment page.

- The user selects the Gigadat tab.

- The user presses Return to merchant to go back to the merchant’s website.
Withdrawal
- The user enter their email account (or uses the one saved from the deposits) and mobile number in the payment page.
- Withdrawal request is created.
- Merchant processes the withdrawal from the back office and receives status Pending.
- User needs to complete the withdrawal process offline. The user has up to 15 days to do this and 4 attempts to put the correct password.
- The user receives an email that the funds have been sent to him.

- The user logs in the bank.

- The user has to answer the security question to get the funds.

Testing
Deposit and Withdrawal need to be approved manually by Interac.