Skip to main content
Skip table of contents

Submitting eCheck/EFT Payments via API - Canada

`Submit eCheck payments via a POST request to the /txns endpoing of the Payrix API.

eCheck payments can be submitted via a POST request to the /txns endpoint of the Payrix API. You can enter a new eCheck account as the payment method, or submit the transaction using the customer’s saved EFT account.

Canada EFT Routing Number Formatting

When accepting Canadian EFT payments, the entered routing number is different from US ACH number formatting.

The routing number in Canada must appear as a 9-digit number in ACH Universal.  If the Institution is only a 3-digit number, you'll add a leading zero.

Example:

If the account number listed is 01144 039

  • 01144 being the branch number (5 digits)

  • 039 being the institution number (3 digits)

 

The number MUST be entered in the following combination:

  • 0 + (Institution number) + (Branch Number) = Payments EFT routing number entry format. See the example below.  

 

Minimum required fields when submitting an eCheck via API:

This information outlines the minimum API requirements for submitting an eCheck/EFT payment. However, there are additional optional fields that can be reviewed in our API reference. Depending on your portfolio’s Risk settings, submitting only the minimum requirements may delay or prevent the approval of an eCheck/EFT payment, and all optional fields should be included, as well.

merchant - enter the merchant’s Payrix Merchant ID number

type - input the value “7” for eCheck transactions

origin - the point of origination for this transaction, i.e. how the merchant received the payment. By default, the value should be set to “2” for eCheck transactions

payment - (required only when using a new payment method) when using a new payment method (EFT account) enter the bank account information in this field. Nested within payment are three required fields:

  1. method - the type of bank account being used for the new eCheck payment method:
    '8' - personal checking account
    '9' - personal savings account
    '10' - business checking account
    '11' - business savings account

  2. number - the bank account number

  3. routing - the 9-digit routing number

token - (required only when using a saved payment method) when using a tokenized bank account for an eCheck payment enter the Payrix Token ID number in this field.

total - the payment amount should be entered in cents (USD). For example, for an $100.00 eCheck payment the value entered in this field should be ‘10000’. No decimals or punctuation are accepted in this field.

first - (required only when using a new payment method) the account holder’s (customer) first name

last - (required only when using a new payment method) the account holder’s (customer) last name

Note: The header with APIKEY should be added for authentication.

Sample minimal fields for an eCheck transaction with a new payment method:

CODE
{
	"merchant": "t1_mer_59efbf4e69b27a4760b885d",
	"type": "7",
	"origin": "2",
	"payment": {
		"method": "8",
		"number": "123456789",
		"routing": "123456789"
	},
	"total": "10000",
	"first": "First",
	"last": "Last"
}

Sample minimum fields for an eCheck transaction with a token:

CODE
{
	"merchant": "t1_mer_59efbf4e69b27a4760b885d",
	"type": "7",
	"origin": "2",
	"token": "944afd0919c5561724f511d4846e40b9",
	"total": "10000"
}

Sample minimum fields for an eCheck transaction with a new payment method that will be saved for later use (tokenized):

CODE
{
	"merchant": "t1_mer_59efbf4e69b27a4760b885d",
	"type": "7",
	"origin": "2",
	"token": {
		"payment": {
			"method": "8",
			"number": "123456789",
			"routing": "123456789"
		},
		"customer": {
			"first": "First",
			"last": "Last"
		}
	},
	"total": "10000"
}

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.