Resources
This page contains many of the supported values and resources for Interac e-Transfer® payment parameters.
Back-dated and future-dated transactions
Interac e-Transfer supports back-dated and future-dated transactions. Future-dated transactions are marked as SCHEDULED
until the requested execution date and then released for continued processing.
The following table contains the supported past and future execution date ranges for Interac e-Transfer:
Region | Country | Past date range | Future date range |
---|---|---|---|
North America (NA) | Canada | One calendar day | Five calendar days |
Currency codes
A currency code identifies a payment’s currency.
The following table contains the supported currency code for Interac e-Transfer:
Region |
Country |
Currency code |
---|---|---|
NA |
Canada |
|
Duplicate logic
An Interac e-Transfer payment is irrevocable. If the same payment is sent twice, the status of the duplicate payment is rejected. To confirm the status of any payment, get the status of a Interac e-Transfer payment.
Duplicate transactions
The Global Payments API supports the ability for idempotent calls, which is useful when you initiate a payment, create a client, make a change, or retry a failed request for some reason, such as a network issue.
If an Interac e-Transfer payment has the same endToEndId
and debtor.account.accountNumber
as another Interac e-Transfer payment within the last 30 days, the Global Payments API deems it duplicative.
Payment options
Interac e-Transfer payments can be sent to a beneficiary's fully formed bank account number, email address, or Canadian mobile phone number.
The following table provides more information about each of these options:
Payment option | Notes |
---|---|
Canadian bank account number |
|
Email address or Canadian mobile phone number |
|
Payment validation question and response
You define the payment validation question and response when you send a payment to the beneficiary’s email address or Canadian mobile phone number. The question can be sent as clear text, but the response needs to follow the following pseudocode:
- Answer to the security question (as provided by the customer) with leading and trailing whitespace trimmed, uppercased, postfixed with hashSalt, if present.
- Hashed using the algorithm identified by hashType and then Base64 encoded.
- ISO-8859-1 encoding to be used when the hash is generated. A string up to 64 characters.
- Original input (the answer) is a string up to 25 characters.
- Single word with a minimum size of 3 characters. May include letters, digits, and/or hyphens, French characters.
- Allowed characters in plain text answer: 0-9, a-z, hyphen.
- Both lower- and upper-case letters are allowed.
- Ensure a single word answer is created.
- Following characters are not allowed:
- Characters that are not letters or digits, or hyphens. For example, http:, https:, JavaScript, function, return, any form of the string www.
- Hashtype: Secure Hash Algorithm (SHA2)
- Hashsalt: Contact your implementation manager. J.P. Morgan will provide the salt. As Hash salt can change over time period, please create provision to make the required change.
- Security answer should be sent in the following way:
- Base 64(Sha-256(ISO-8859-1(Uppercase(answer))+Hashsalt))
Example
- Question: What is your policy number?
- Answer: ABC123
- Hash salt: 98765421
- Answer (encrypted):
l88fqsH39/P2m7NaRZRB/Ko6DHXP2f24oNoFrBPhHyk=
- Answer (encrypted):
Sample code for security responses
The following sample Java code illustrates the use of SHA2. The sample isn't created by J.P. Morgan and without warranty, doesn't include validation and exception handling that would be expected in production.
package com.acxsys.emt.interacServices;
import org.apache.commons.codec.binary.Base64;
import java.io.UnsupportedEncodingException;
import java.nio.charset.Charset;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.security.SecureRandom;
/* * This is a sample Java code to generate password (such as Answer) using SHA2 */
public class SHA2Encoder {
private final static int SALT_BYTE_SIZE = 32;
public static void main(String args[]){
String pwd = "testPwd";
String salt = null;
String encodedPwd = null;
Charset = Charset.defaultCharset();
System.out.println(" def charset:"+ charset.name());
try {
salt = getSalt();
encodedPwd = encodeSHA2(pwd.toUpperCase(), salt);
}
catch(Exception e){
System.out.println(" Exception encoding pwd." +e.getMessage()); e.printStackTrace(); }
System.out.println("encodedPwd: "+ encodedPwd);
}
/* * This method will encode the password using SHA2 algorithm. The hash is encoded using charset ISO-8859-1 * */
public static String encodeSHA2(String password, String saltString) throws NoSuchAlgorithmException, UnsupportedEncodingException {
MessageDigest md = MessageDigest.getInstance("SHA-256"); System.out.println("using salt: "+saltString);
String encodedPwd= null;
encodedPwd = new String( Base64.encodeBase64( md.digest( (password+saltString).getBytes("ISO-8859-1") ) ) ,"ISO-8859-1");
System.out.println("encodedPwd: "+ encodedPwd); return encodedPwd;
Purpose codes
A purpose code identifies a payment's purpose and ensures compliance with regulatory requirements.
The following table contains the supported purpose codes for Interac e-Transfer:
Region | Country | Purpose code | Name | Description |
---|---|---|---|---|
NA | Canada |
|
BonusPayment |
Payment of a bonus. |
|
CashManagementTransfer |
General cash-management instruction. |
||
|
CardBulkClearing |
Bulk settlement of card transactions that refers to a specific transaction file or other information, like a terminal ID, card acceptor ID, or other transaction details. |
||
|
CreditCardPayment |
Payment of a credit card. |
||
|
TradeSettlementPayment |
Trade settlement, such as a foreign exchange deal or a securities transaction. |
||
|
DebitCardPayment |
Payment of a debit card. |
||
|
Dividend |
Payment of a dividend. |
||
|
DeliverAgainstPayment |
Notice to account servicer of forthcoming delivery against payment instruction. |
||
|
Epayment |
ePayment. |
||
|
FeeCollectionAndInterest |
Payment of fees and interest. |
||
|
FeeCollection |
Settlement of card transaction fees between two parties. |
||
|
PersontoPersonPayment |
Person-to-person (P2P) payment in which the sender and beneficiary are natural persons. |
||
|
GovernmentPayment |
Payment to or from a government department. |
||
|
Hedging |
Payment of a hedging operation. |
||
|
IrrevocableCreditCardPayment |
Reimbursement of a credit-card payment. |
||
|
IrrevocableDebitCardPayment |
Reimbursement of a debit-card payment. |
||
|
IntraCompanyPayment |
Intra-company payment, or a payment between two companies that belong to the same group. |
||
|
Interest |
Payment of interest. |
||
|
LockboxTransactions |
Transaction is related to identify cash handling via Night Safe or Lockbox by bank or vendor on behalf of a physical store. |
||
|
Loan |
Transfer of a loan to a borrower. |
||
|
Commercial |
Mobile person-to-business (P2B) payment. |
||
|
Consumer |
Mobile P2P payment. |
||
|
OtherPayment |
Other payment purpose. |
||
|
PensionPayment |
Payment of a pension. |
||
|
Represented |
Collection used to represent previously reversed or returned direct debit transactions. |
||
|
ReimbursementReceivedCreditTransfer |
Reimbursement of a correctly received credit transfer for commercial reasons. |
||
|
ReceiveAgainstPayment |
Notice to account servicer of forthcoming reception against payment instruction. |
||
|
SalaryPayment |
Payment of salaries. |
||
|
Securities |
Payment of securities. |
||
|
SocialSecurityBenefit |
Payment of a Social Security benefit. |
||
|
SupplierPayment |
Payment to a supplier. |
||
|
TaxPayment |
Payment of taxes. |
||
|
Trade |
Payment of a trade finance transaction. |
||
|
TreasuryPayment |
Payment related to treasury operations, such as a financial contract settlement. |
||
|
ValueAddedTaxPayment |
Payment of value added tax. |
||
|
WithHolding |
Payment of withholding tax. |
||
|
TaxRefund |
Refund of a tax payment or obligation. |
||
|
TrailerFeePayment |
Payment of a United States mutual fund trailer fee (12b-1). |
||
|
TrailerFeeRebate |
Payment of a United States mutual fund trailer fee (12b-1) rebate. |
||
|
NonUSMutualFundTrailerFeePayment |
|
||
|
NonUSMutualFundTrailerFeeRebatePayment |
|
||
|
Air |
Payment for air transport-related business. |
||
|
Bus |
Payment for bus transport-related business. |
||
|
Ferry |
Payment for ferry-related business. |
||
|
Railway |
Payment for railway transport-related business. |
||
|
RoadPricing |
Payment to top-up prepaid card and electronic road pricing for the purpose of transportation. |
||
|
CableTVBill |
Payment of cable TV bill. |
||
|
ElectricityBill |
Payment of electricity bill. |
||
|
Energies |
Payment related to a utility operation. |
||
|
GasBill |
Payment of gas bill. |
||
|
NetworkCharge |
Payment of network charges. |
||
|
NetworkCommunication |
Payment of network communication. |
||
|
OtherTelecomRelatedBill |
Payment of other telecom-related bill. |
||
|
TelephoneBill |
Payment of telephone bill. |
||
|
Utilities |
Payment to common utility provider that provides gas, water, and/or electricity. |
||
|
WaterBill |
Payment of water bill. |
||
|
Bonds |
Securities Lending-Settlement of Bond. |
||
|
CorporateActions-Bonds |
Securities Lending-Settlement of Corporate Actions: Bonds. |
||
|
CorporateActions-Equities |
Securities Lending-Settlement of Corporate Actions: Equities. |
||
|
CreditCard |
Card Settlement-Settlement of Credit Card. |
||
|
DebitCard |
Card Settlement-Settlement of Debit Card. |
||
|
Diners |
Card Settlement-Settlement of Diners. |
||
|
Equities |
Securities Lending-Settlement of Equities. |
||
|
FleetCard |
Card Settlement-Settlement of Fleet. |
||
|
LowValueCredit |
Utilities-Settlement of Low-value Credit. |
||
|
LowValueDebit |
Utilities-Settlement of Low-value Debit. |
||
|
MoneyMarket |
Securities Lending-settlement of Money Market PCH. |
||
|
RapidPaymentInstruction |
Instant Payments-Settlement of Rapid Payment Instruction (RPI). |
||
|
GamblingOrWageringPayment |
General-Payment toward a purchase or winnings received from gambling, betting, or other wagering activities. |
||
|
LotteryPayment |
General-Payment toward a purchase or winnings received from lottery activities. |
||
|
GovernmentFamilyAllowance |
Salary and benefits allowance from government to support family. |
||
|
GovernmentHousingAllowance |
Salary and benefits allowance from government to individuals to support housing. |
||
|
Amex |
Card Settlement-Settlement of American Express transactions. |
||
|
ATM |
Card Settlement-Settlement of ATM transactions. |
||
|
AuthenticatedCollections |
Utilities-Settlement of Authenticated Collections transactions. |
||
|
PropertyCompletionPayment |
Final payment to complete the purchase of a property. |
||
|
PropertyDeposit |
Payment of the deposit required toward the purchase of a property. |
||
|
PropertyLoanDisbursement |
Payment of funds from a lender as part of the issuance of a property loan. |
||
|
PropertyLoanRefinancing |
Transfer or extension of a property financing arrangement to a new deal or loan provider without a change in ownership of the property. |
||
|
CollateralManagement |
Relates to collateral management. |
||
|
SecuritiesLending |
Relates to securities lending. |
||
|
Settlements |
Relates to settlements. |
||
|
ANN/REN Annuity |
|||
|
INV/PLA Investment |
|||
|
CCB/ACE Canada Child Benefit |
|||
|
OAS/SV Old Age Security |
|||
|
EI/AE Employment Insurance |
|||
|
INS/ASS Insurance |
|||
|
MTG/HYP Mortgage |
|||
|
RLS/LOY Rent/Leases |
|||
|
BPY/FAC Bill Payment |
|||
|
EXP/RDD Expense Payment |
|||
|
AP/CC Accounts Payable |
|||
|
DON/DON Donations |
Sanctions screening
J.P. Morgan screens the remittance information and ultimate debtor information to comply with United States Office of Foreign Assets Control (OFAC) regulations, applicable non-United States sanctions, and national and international anti-terrorism laws.
Status responses
A status response identifies a payment’s status. A status response includes one or more sub-status responses that provide more information about a payment's status.
The following table provides the statuses, sub-statuses, and their descriptions for Interac e-Transfer:
Status |
Sub-status |
Description |
---|---|---|
Processing |
Processing by J.P. Morgan |
The payment is being processed by J.P. Morgan. |
Scheduled |
The payment is scheduled for future execution. |
|
Rejected |
Rejected |
The payment was rejected. |
Completed |
Completed by J.P. Morgan |
The payment was fully processed. |
Value-amount limits
A value-amount limit identifies the maximum amount of money permitted in a payment.
The following table contains each country’s supported value-amount limits for Interac e-Transfer:
Region |
Country |
Value-amount limit |
---|---|---|
NA |
Canada |
25000 |
Related
- For more information about Interac e-Transfer, see Overview.
- For more information about Interac e-Transfer payment parameters, see Payment parameters.
Next steps
Learn how to initiate an Interac e-Transfer payment.