- 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.