My Profile_


Pre-Authorization

Verifies and locks funds on the customer’s credit card. The funds are locked for a specified amount of time based on the card issuer.

To retrieve the funds that have been locked by a Pre-Authorization transaction so that they may be settled in the merchant’s account, a Completion transaction must be performed.

Things to consider:

  • If a Pre-Authorization transaction is not followed by a Completion transaction, it must be reversed via a Completion transaction for 0.00.
  • A Pre-Authorization transaction may only be "completed" once.

Canada Code Sample

<?xml version="1.0"?>
<request>
 <store_id>store3</store_id>
 <api_token>yesguy</api_token>
<preauth>
 <order_id>Moneris_test_june20_2016</order_id>
 <amount>15.00</amount>
 <pan>5454545454545454</pan>
 <expdate>0702</expdate>
 <crypt_type>2</crypt_type>
 <cust_id>some_cust_id</cust_id>
 <cof_info>
  <issuer_id>123456789012345</issuer_id>
  <payment_indicator>U</payment_indicator>
  <payment_information>2</payment_information>
 </cof_info>
</preauth>
</request>

Sample Response:

<?xml version="1.0"?>
<response>
<receipt>
<ReceiptId>Moneris_test_june20_2016</ReceiptId>
<ReferenceNum>660114080018590820</ReferenceNum>
<ResponseCode>027</ResponseCode>
<ISO>01</ISO>
<AuthCode>378146</AuthCode>
<TransTime>10:33:55</TransTime>
<TransDate>2016-06-28</TransDate>
<TransType>01</TransType>
<Complete>true</Complete>
<Message>APPROVED           *                    =</Message>
<TransAmount>15.00</TransAmount>
<CardType>M</CardType>
<TransID>69624-0_10</TransID>
<TimedOut>false</TimedOut>
<BankTotals>null</BankTotals>
<Ticket>null</Ticket>
<IssuerId>123456789012345</IssuerId>
<MessageId>1A6180380353384</MessageId>
<IsVisaDebit>false</IsVisaDebit>
</receipt>
</response>
                

Pre-Authorization mandatory values

Value Type Limits Variable Description
Order ID String 50-character alphanumeric order_id Merchant-defined transaction identifier that must be unique for every Purchase, Pre-Authorization and Independent Refund transaction. No two transactions of these types may have the same order ID.

For Refund, Completion and Purchase Correction transactions, the order ID must be the same as that of the original transaction.

Canada: The last 10 characters of the order ID are displayed in the “Invoice Number” field on the Merchant Direct Reports. However only letters, numbers and spaces are sent to Merchant Direct.

A minimum of 3 and a maximum of 10 valid characters are sent to Merchant Direct. Only the last characters beginning after any invalid characters are sent. For example, if the order ID is 1234-567890, only 567890 is sent to Merchant Direct.

US: The last 32 characters of the order ID are sent on to the Client Line settlement reports.

For either countries, If the order ID has fewer than 3 characters, it may display a blank or 0000000000 in the Invoice Number field.
Amount String 10-character decimal amount Transaction amount This must contain at least 3 digits, two of which are penny values.
The minimum allowable value is $0.01, and the maximum allowable value is $9999999.99. Transaction amounts of $0.00 are not allowed.
Credit card number String 20-character numeric pan Most credit card numbers today are 16 digits, but some 13-digit numbers are still accepted by some issuers. This field has been intentionally expanded to 20 digits in consideration for future expansion and potential support of private label card ranges.
Expiry date String 4-character numeric
YYMM format.
expdate Submit in YYMM format.
Note: This is the reverse of the date displayed on the physical card, which is MMYY.
E-Commerce indicator String 1-character alphanumeric crypt_type

Describes the category of e-commerce transaction being processed. Allowable values are:


  • 1 - Mail Order / Telephone Order—Single
  • 2 - Mail Order / Telephone Order—Recurring
  • 3 - Mail Order / Telephone Order—Instalment
  • 4 - Mail Order / Telephone Order—Unknown classification
  • 5 - Authenticated e-commerce transaction (VBV)
  • 6 - Non-authenticated e-commerce transaction (VBV)
  • 7 - SSL-enabled merchant

In Credential on File transactions where the request field e-commerce indicator is also being sent: the allowable values for e-commerce indicator are dependent on the value sent for payment indicator, as follows:


if payment indicator = R, then allowable values for e-commerce indicator: 2, 5 or 6
if payment indicator = C, then allowable values for e-commerce indicator: 1, 5, 6 or 7
if payment indicator = U, then allowable values for e-commerce indicator: 1 or 7
if payment indicator = Z, then allowable values for e-commerce indicator: 1, 5, 6 or 7

COF Info Object cof_info Refer below for further breakdown and definition.
For more information, see Definitions of Request Fields – Credential on File below.

Definitions of Request Fields – Credential on File

Variable Name Type Limits Decription
Issuer ID

NOTE: This variable is required for all merchant- intiated transactions following the first one; upon sending the first transaction, the Issuer ID value is received in the transaction response and then used in subsequent transaction requests (Issuer ID does not apply for Discover or Union Pay).

String 15-character alphanumeric

Variable length

Unique identifier for the cardholder's stored credentials

Sent back in the response from the card brand when processing a Credential on File transaction

If the cardholder's credentials are being stored for the first time, and the issuer id was returned in the response, you must save the Issuer ID on your system to use in MIT subsequent Credential on File transactions

The IssuerID must be saved to your systems when returned from Moneris Gateway in the response data, regardless if the value was received or not. As a best practice, if the IssuerID is not returned and you received N/A instead, store it and send it in the subsequent transaction.
Payment Indicator String 1-character alphabetic Indicates the current or intended use of the credentials

Possible values for first transactions:
C - unscheduled Credential on File (first transactions only)
R – recurring

Possible values for subsequent transactions:
R - recurring
U - unscheduled merchant-initiated transaction
Z - unscheduled customer-initiated transaction

In Credential on File transactions where the request field e-commerce indicator is also being sent: the allowable values for e-commerce indicator are dependent on the value sent for payment indicator, as follows:

if payment indicator = R, then allowable values for e-commerce indicator: 2, 5 or 6
if payment indicator = C, then allowable values for e-commerce indicator: 1, 5, 6 or 7
if payment indicator = U, then allowable values for e-commerce indicator: 1 or 7
if payment indicator = Z, then allowable values for e-commerce indicator: 1, 5, 6 or 7
Payment Information String 1-character numeric Describes whether the transaction is the first or subsequent in the series
Possible values are:
0 - first transaction in a series (storing payment details provided by the cardholder)
2 - subsequent transactions (using previously stored payment details)

Pre-Authorization optional values

Value Type Limits Variable Decription
Customer Information Object cust_info Refer below for further breakdown and definition.
AVS Object avs_info Refer below for further breakdown and definition.
Customer ID String 50-character alphanumeric cust_id This can be used for policy number, membership number, student ID, invoice number.
This field is searchable from the Moneris Merchant Resource Centre.

Pre-Authorization with Customer Information

The Customer Information object is an optional add-on to a number of transactions. The Customer Information object offers a number of fields to be submitted as part of the financial transaction, and stored by Moneris. These details may be viewed in the future in the Merchant Resource Center.

The Customer Information object holds three types of information:

  • Miscellaneous customer information properties
  • Billing/Shipping information
  • Item information

Things to consider:

  • If you send characters that are not included in the allowed list, these extra transaction details may not be stored.
  • All fields are alphanumeric and allow the following characters: a-z A-Z 0-9 _ - : . @ $ = /
  • All French accents should be encoded as HTML entities, such as é
  • The data sent in Billing and Shipping Address fields will not be used for any address verification.

Canada Code Sample

Sample Request:

<?xml version="1.0"?>
<request>
 <store_id>store3</store_id>
 <api_token>yesguy</api_token>
 <preauth>
  <order_id>Moneris_test_june28_2016</order_id>
  <amount>15.00</amount>
  <pan>5454545454545454</pan>
  <expdate>0702</expdate>
  <crypt_type>2</crypt_type>
  <cust_id>some_cust_id</cust_id>
  <cof_info>
   <issuer_id>123456789012345</issuer_id>
   <payment_indicator>U</payment_indicator>
   <payment_information>2</payment_information>
  </cof_info>
  <cust_info>
   <billing>
    <first_name>Mary</first_name>
    <last_name>Smith</last_name>
    <company_name>None</company_name>
    <address>101 Main St</address>
    <city>Springfield</city>
    <province>YU</province>
    <postal_code>Z1Z1Z1</postal_code>
    <country>CAD</country>
    <phone_number>919-555-5555</phone_number>
    <fax>919-555-5550</fax>
    <tax1>0.10</tax1>
    <tax2>0.20</tax2>
    <tax3>0.00</tax3>
    <shipping_cost>0.00</shipping_cost>
   </billing>
   <shipping>
    <first_name>Bob</first_name>
    <last_name>Smith</last_name>
    <company_name>None</company_name>
    <address>101 Main St</address>
    <city>Springfield</city>
    <province>YU</province>
    <postal_code>Z1Z1Z1</postal_code>
    <country>CAD</country>
    <phone_number>919-555-5555</phone_number>
    <fax>919-555-5550</fax>
    <tax1>0.10</tax1>
    <tax2>0.20</tax2>
    <tax3>0.00</tax3>
    <shipping_cost>0.00</shipping_cost>
   </shipping>
   <email>mary@smith.com</email>
   <instructions>Please package in wrapping paper</instructions>
   <item>
    <name>Blue Shoes</name>
    <quantity>2</quantity>
    <product_code>shooes_002</product_code>
    <extended_amount>10.00</extended_amount>
   </item>
  </cust_info>
 </preauth>
</request>

Sample Response:

<?xml version="1.0"?>
<response>
 <receipt>
  <ReceiptId>Moneris_test_june28_2016</ReceiptId>
  <ReferenceNum>660109300016904740</ReferenceNum>
  <ResponseCode>027</ResponseCode>
  <ISO>01</ISO>
  <AuthCode>138068</AuthCode>
  <TransTime>10:41:55</TransTime>
  <TransDate>2016-06-28</TransDate>
  <TransType>01</TransType>
  <Complete>true</Complete>
  <Message>APPROVED           *                    =</Message>
  <TransAmount>15.00</TransAmount>
  <CardType>M</CardType>
  <TransID>64848-0_10</TransID>
  <TimedOut>false</TimedOut>
  <BankTotals>null</BankTotals>
  <Ticket>null</Ticket>
  <IssuerId>123456789012345</IssuerId>
  <MessageId>1A6180385154705</MessageId>
  <IsVisaDebit>false</IsVisaDebit>
 </receipt>
</response>
                

Pre-Authorization mandatory values

Value Type Limits Variable Description
Order ID String 50-character alphanumeric order_id Merchant-defined transaction identifier that must be unique for every Purchase, Pre-Authorization and Independent Refund transaction. No two transactions of these types may have the same order ID.

For Refund, Completion and Purchase Correction transactions, the order ID must be the same as that of the original transaction.

Canada: The last 10 characters of the order ID are displayed in the “Invoice Number” field on the Merchant Direct Reports. However only letters, numbers and spaces are sent to Merchant Direct.

A minimum of 3 and a maximum of 10 valid characters are sent to Merchant Direct. Only the last characters beginning after any invalid characters are sent. For example, if the order ID is 1234-567890, only 567890 is sent to Merchant Direct.

US: The last 32 characters of the order ID are sent on to the Client Line settlement reports.

For either countries, If the order ID has fewer than 3 characters, it may display a blank or 0000000000 in the Invoice Number field.
Amount String 10-character decimal amount Transaction amount This must contain at least 3 digits, two of which are penny values.
The minimum allowable value is $0.01, and the maximum allowable value is $9999999.99. Transaction amounts of $0.00 are not allowed.
Credit card number String 20-character numeric pan Most credit card numbers today are 16 digits, but some 13-digit numbers are still accepted by some issuers. This field has been intentionally expanded to 20 digits in consideration for future expansion and potential support of private label card ranges.
Expiry date String 4-character numeric
YYMM format.
expdate Submit in YYMM format.
Note: This is the reverse of the date displayed on the physical card, which is MMYY.
E-Commerce indicator String 1-character alphanumeric crypt_type

Describes the category of e-commerce transaction being processed. Allowable values are:


  • 1 - Mail Order / Telephone Order—Single
  • 2 - Mail Order / Telephone Order—Recurring
  • 3 - Mail Order / Telephone Order—Instalment
  • 4 - Mail Order / Telephone Order—Unknown classification
  • 5 - Authenticated e-commerce transaction (VBV)
  • 6 - Non-authenticated e-commerce transaction (VBV)
  • 7 - SSL-enabled merchant

In Credential on File transactions where the request field e-commerce indicator is also being sent: the allowable values for e-commerce indicator are dependent on the value sent for payment indicator, as follows:


if payment indicator = R, then allowable values for e-commerce indicator: 2, 5 or 6
if payment indicator = C, then allowable values for e-commerce indicator: 1, 5, 6 or 7
if payment indicator = U, then allowable values for e-commerce indicator: 1 or 7
if payment indicator = Z, then allowable values for e-commerce indicator: 1, 5, 6 or 7

COF Info Object cof_info Refer below for further breakdown and definition.
For more information, see Definitions of Request Fields – Credential on File below.

Pre-Authorization optional values

Value Type Limits Variable Decription
Customer Information Object cust_info Refer below for further breakdown and definition.
AVS Object avs_info Refer below for further breakdown and definition.
Customer ID String 50-character alphanumeric cust_id This can be used for policy number, membership number, student ID, invoice number.
This field is searchable from the Moneris Merchant Resource Centre.

CustInfo mandatory properties

Value Type Limits Set method Decription
Email Address String 60-character alphanumeric email Customer email address.
Instructions String 100-character alphanumeric instructions Instructions or notes.
Billing Information Object billing(first_name, last_name, company_name, address, city, province, postal_code, country, phone, fax, tax1, tax2, tax3, shipping_cost) Billing information is stored as part of the CustInfo object. A maximum of 1 billing set. Refer below for further breakdown and definition.
Shipping Information Object shipping(first_name, last_name, company_name, address, city, province, postal_code, country, phone, fax, tax1, tax2, tax3, shipping_cost) Shipping information is stored as part of the CustInfo object. A maximum of 1 shipping set. Refer below for further breakdown and definition.
Items Array Object item(name, quantity, product_code, extended_amount) Item information is stored as part of the CustInfo object. Multiple items may be set. Refer below for further breakdown and definition.

Billing & Shipping mandatory values

Value Type Limits Variable/Hash Table Key Description
First Name String 30-character alphanumeric first_name Customer first name
Last Name String 30-character alphanumeric last_name Customer last name
Company Name String 50-character alphanumeric company_name Customer 's company name
Address String 70-character alphanumeric address Customer's address
City String 30-character alphanumeric city Customer's city
Province / State String 30-character alphanumeric province Customer's province or state
Postal / Zip Code String 30-character alphanumeric postal_code Customer's postal or zip code
Country String 30-character alphanumeric country Customer's country
Phone Number String 30-character alphanumeric phone Customer's phone number
Fax Number String 30-character alphanumeric fax Customer's fax number
Federal Tax String 10-character alphanumeric tax1 Federal tax amount. Amount is not used for calculating total amount.
Provincial / State Tax String 10-character alphanumeric tax2 Provincial or state tax amount. Amount is not used for calculating total amount.
Country / Local / Specialty Tax String 10-character alphanumeric tax3 County, local or specialty tax amount. Amount is not used for calculating total amount.
Shipping Cost String 10-character alphanumeric shipping_cost Shipping cost. Amount is not used for calculating total amount.

Item mandatory values

Value Type Limits Variable/Hash Table Key Description
Item Name String 45-character alphanumeric name Item name or description.
Item Quantity String 5-character numeric quantity You must send a quantity > 0 or the item will not be added to the item list (i.e. minimum 1, maximum 99999)
Item Product Code String 20-character alphanumeric product_code Item product code or SKU.
Item Extended Amount String 9-character decimal extended_amount Must contain at least 3 digits and 2 penny values.
0.01-999999.99

Pre-Authorization with Vault

This transaction uses the data key to identify a previously registered credit card profile. The details saved within the profile are then submitted to perform a Purchase transaction.

The Vault feature allows merchants to create long term customer profiles, edit those profiles, and use them to process transactions without having to enter financial information each time.

Canada Code Sample

Sample Request:

<?xml version="1.0"?>
<request>
 <store_id>store3</store_id>
 <api_token>yesguy</api_token>
 <res_preauth_cc>
  <data_key>JZFDKFtiYvxLFXcQlEfN3EEJ2</data_key>
  <order_id>Moneris_test_20160628_1</order_id>
  <cust_id>My_Customer_Name</cust_id>
  <amount>10.30</amount>
  <crypt_type>7</crypt_type>
  <cof_info>
   <issuer_id>123456789012345</issuer_id>
   <payment_indicator>U</payment_indicator>
   <payment_information>2</payment_information>
  </cof_info>
 </res_preauth_cc>
</request>

Sample Response:

<?xml version="1.0"?>
<response>
 <receipt>
  <DataKey>JZFDKFtiYvxLFXcQlEfN3EEJ2</DataKey>
  <ReceiptId>Moneris_test_20160628_1</ReceiptId>
  <ReferenceNum>660144980011921170</ReferenceNum>
  <ResponseCode>027</ResponseCode>
  <ISO>01</ISO>
  <AuthCode>273084</AuthCode>
  <Message>APPROVED           *                    =</Message>
  <TransTime>11:13:26</TransTime>
  <TransDate>2016-06-28</TransDate>
  <TransType>01</TransType>
  <Complete>true</Complete>
  <TransAmount>10.30</TransAmount>
  <CardType>V</CardType>
  <TransID>62417-0_10</TransID>
  <TimedOut>false</TimedOut>
  <CorporateCard>false</CorporateCard>
  <RecurSuccess>null</RecurSuccess>
  <AvsResultCode>null</AvsResultCode>
  <CvdResultCode>null</CvdResultCode>
  <ResSuccess>true</ResSuccess>
  <PaymentType>cc</PaymentType>
  <IsVisaDebit>false</IsVisaDebit>
  <IssuerId>123456789012345</IssuerId>
  <ResolveData>
   <cust_id>Batch Test</cust_id>
   <phone></phone>
   <email></email>
   <note></note>
   <expdate>1912</expdate>
   <masked_pan>4242***4242</masked_pan>
   <crypt_type>1</crypt_type>
  </ResolveData>
 </receipt>
</response>
                

Pre-Authorization with Vault mandatory values

VALUE TYPE LIMITS VARIABLE DESCRIPTION
Data Key String 25-character alphanumeric data_key The data key is the token that points to a previously stored profile. Profile identifier that all future financial Vault transactions (that is, they occur after the profile was registered by a ResAddCC or ResTokenizeCC transaction) will use to associate with the saved information.
The data key is generated by Moneris, and is returned to the merchant (via the Receipt object) when the profile is first registered.
Order ID String 50-character alphanumeric order_id Merchant-defined transaction identifier that must be unique for every Purchase, Pre-Authorization and Independent Refund transaction. No two transactions of these types may have the same order ID.

For Refund, Completion and Purchase Correction transactions, the order ID must be the same as that of the original transaction.

Canada: The last 10 characters of the order ID are displayed in the “Invoice Number” field on the Merchant Direct Reports. However only letters, numbers and spaces are sent to Merchant Direct.

A minimum of 3 and a maximum of 10 valid characters are sent to Merchant Direct. Only the last characters beginning after any invalid characters are sent. For example, if the order ID is 1234-567890, only 567890 is sent to Merchant Direct.

US: The last 32 characters of the order ID are sent on to the Client Line settlement reports.

For either countries, If the order ID has fewer than 3 characters, it may display a blank or 0000000000 in the Invoice Number field.
Amount String 10-character decimal amount Transaction amount This must contain at least 3 digits, two of which are penny values.
The minimum allowable value is $0.01, and the maximum allowable value is $9999999.99. Transaction amounts of $0.00 are not allowed.
E-Commerce indicator String 1-character alphanumeric crypt_type

Describes the category of e-commerce transaction being processed. Allowable values are:


  • 1 - Mail Order / Telephone Order—Single
  • 2 - Mail Order / Telephone Order—Recurring
  • 3 - Mail Order / Telephone Order—Instalment
  • 4 - Mail Order / Telephone Order—Unknown classification
  • 5 - Authenticated e-commerce transaction (VBV)
  • 6 - Non-authenticated e-commerce transaction (VBV)
  • 7 - SSL-enabled merchant

In Credential on File transactions where the request field e-commerce indicator is also being sent: the allowable values for e-commerce indicator are dependent on the value sent for payment indicator, as follows:


if payment indicator = R, then allowable values for e-commerce indicator: 2, 5 or 6
if payment indicator = C, then allowable values for e-commerce indicator: 1, 5, 6 or 7
if payment indicator = U, then allowable values for e-commerce indicator: 1 or 7
if payment indicator = Z, then allowable values for e-commerce indicator: 1, 5, 6 or 7

COF Info Object cof_info Refer below for further breakdown and definition.
For more information, see Definitions of Request Fields – Credential on File below.

Pre-Authorization with Vault optional values

VALUE TYPE LIMITS VARIABLE DECRIPTION
Customer ID String 50-character alphanumeric cust_id This can be used for policy number, membership number, student ID, invoice number.
This field is searchable from the Moneris Merchant Resource Centre.
Customer Information Object cust_info Refer below for further breakdown and definition.
AVS Information Object avs_info Refer below for further breakdown and definition.

Vault Response Fields

Value Limits Variable Description
Data Key 25-character alphanumeric DataKey This field is created when a profile is created and a token is returned.
It is a unique profile identifier, and is a required value for all future Vault transactions.
Vault Success true/false ResSuccess Indicates whether Vault transaction was successful.
PaymentType cc/ach PaymentType Indicates the payment type associated with a Vault profile.
Customer ID 30-character alphanumeric cust_id Returns the customer ID saved in the profile.
Phone Number 30-character alphanumeric phone Returns the phone number saved in the profile.
Email Address 30-character alphanumeric email Returns the email address saved in the profile.
Note 30-character alphanumeric note Returns the note saved in the profile.
Credit Card Fields
Masked PAN 20-character numeric masked_pan Returns the first 4 last 4 of the card number saved in the profile.
Expiry Date 4-character numeric expdate Returns the expiry date of the card number saved in the profile. YYMM format.
E-Commerce Indicator 1-character numeric crypt_type Returns the e-commerce indicator saved in the profile.
AVS Street Number 19-character alphanumeric avs_street_number Returns the AVS street number saved in the profile. If no other AVS street number is passed in the transaction request, this value will be submitted along with the financial transaction to the issuer.
AVS Street Name 19-character alphanumeric avs_street_name Returns the AVS street name saved in the profile. If no other AVS street number is passed in the transaction request, this value will be submitted along with the financial transaction to the issuer.
AVS Zip/Postal Code 9-character alphanumeric avs_street_zipcode Returns the AVS zip/postal code saved in the profile. If no other AVS street number is passed in the transaction request, this value will be submitted along with the financial transaction to the issuer.

Pre-Authorization with Vault and Customer Information

The Vault feature allows merchants to create customer profiles, edit those profiles, and use them to process transactions without having to enter financial information each time.

The Vault is a complement to the recurring payment module. It securely stores customer account information on Moneris secure servers. This allows merchants to bill customers for routine products or services when an invoice is due.

An optional add-on to a number of transactions the Customer Information object. The Customer Information object offers a number of fields to be submitted as part of the financial transaction, and stored by Moneris. These details may be viewed in the future in the Merchant Resource Center.

Canada Code Sample

Sample Request:

<?xml version="1.0"?>
<request>
 <store_id>store3</store_id>
 <api_token>yesguy</api_token>
 <res_preauth_cc>
  <data_key>JZFDKFtiYvxLFXcQlEfN3EEJ2</data_key>
  <order_id>Moneris_test_20160628Pre_v_ci</order_id>
  <cust_id>My_Customer_Name</cust_id>
  <amount>10.30</amount>
  <crypt_type>7</crypt_type>
  <cof_info>
   <issuer_id>123456789012345</issuer_id>
   <payment_indicator>U</payment_indicator>
   <payment_information>2</payment_information>
  </cof_info>
  <cust_info>
   <billing>
    <first_name>Bob</first_name>
    <last_name>Smith</last_name>
    <company_name>None</company_name>
    <address>101 Main St</address>
    <city>Springfield</city>
    <province>YU</province>
    <postal_code>Z1Z1Z1</postal_code>
    <country>CAD</country>
    <phone_number>919-555-5555</phone_number>
    <fax>919-555-5550</fax>
    <tax1>0.10</tax1>
    <tax2>0.20</tax2>
    <tax3>0.00</tax3>
    <shipping_cost>0.00</shipping_cost>
   </billing>
   <shipping>
    <first_name>Bob</first_name>
    <last_name>Smith</last_name>
    <company_name>None</company_name>
    <address>101 Main St</address>
    <city>Springfield</city>
    <province>YU</province>
    <postal_code>Z1Z1Z1</postal_code>
    <country>CAD</country>
    <phone_number>919-555-5555</phone_number>
    <fax>919-555-5550</fax>
    <tax1>0.10</tax1>
    <tax2>0.20</tax2>
    <tax3>0.00</tax3>
    <shipping_cost>0.00</shipping_cost>
   </shipping>
   <email>bob@smith.com</email>
   <instructions>Please deliver to back door</instructions>
   <item>
    <name>Red Shoes</name>
    <quantity>1</quantity>
    <product_code>shoes_101</product_code>
    <extended_amount>1.00</extended_amount>
   </item>
  </cust_info>
 </res_preauth_cc>
</request>

Sample Response: 

<?xml version="1.0"?>
<response>
 <receipt>
  <DataKey>JZFDKFtiYvxLFXcQlEfN3EEJ2</DataKey>
  <ReceiptId>Moneris_test_20160628Pre_v_ci</ReceiptId>
  <ReferenceNum>660144980011921190</ReferenceNum>
  <ResponseCode>027</ResponseCode>
  <ISO>01</ISO>
  <AuthCode>699878</AuthCode>
  <Message>APPROVED           *                    =</Message>
  <TransTime>11:24:27</TransTime>
  <TransDate>2016-06-28</TransDate>
  <TransType>01</TransType>
  <Complete>true</Complete>
  <TransAmount>10.30</TransAmount>
  <CardType>V</CardType>
  <TransID>62419-0_10</TransID>
  <TimedOut>false</TimedOut>
  <CorporateCard>false</CorporateCard>
  <IssuerId>123456789012345</IssuerId>
  <RecurSuccess>null</RecurSuccess>
  <AvsResultCode>null</AvsResultCode>
  <CvdResultCode>null</CvdResultCode>
  <ResSuccess>true</ResSuccess>
  <PaymentType>cc</PaymentType>
  <IsVisaDebit>false</IsVisaDebit>
  <ResolveData>
   <cust_id>Batch Test</cust_id>
   <phone></phone>
   <email></email>
   <note></note>
   <expdate>1912</expdate>
   <masked_pan>4242***4242</masked_pan>
   <crypt_type>1</crypt_type>
  </ResolveData>
 </receipt>
</response>
                

Pre-Authorization with Vault mandatory values

VALUE TYPE LIMITS VARIABLE DESCRIPTION
Data Key String 25-character alphanumeric data_key The data key is the token that points to a previously stored profile. Profile identifier that all future financial Vault transactions (that is, they occur after the profile was registered by a ResAddCC or ResTokenizeCC transaction) will use to associate with the saved information.
The data key is generated by Moneris, and is returned to the merchant (via the Receipt object) when the profile is first registered.
Order ID String 50-character alphanumeric order_id Merchant-defined transaction identifier that must be unique for every Purchase, Pre-Authorization and Independent Refund transaction. No two transactions of these types may have the same order ID.

For Refund, Completion and Purchase Correction transactions, the order ID must be the same as that of the original transaction.

Canada: The last 10 characters of the order ID are displayed in the “Invoice Number” field on the Merchant Direct Reports. However only letters, numbers and spaces are sent to Merchant Direct.

A minimum of 3 and a maximum of 10 valid characters are sent to Merchant Direct. Only the last characters beginning after any invalid characters are sent. For example, if the order ID is 1234-567890, only 567890 is sent to Merchant Direct.

US: The last 32 characters of the order ID are sent on to the Client Line settlement reports.

For either countries, If the order ID has fewer than 3 characters, it may display a blank or 0000000000 in the Invoice Number field.
Amount String 10-character decimal amount Transaction amount This must contain at least 3 digits, two of which are penny values.
The minimum allowable value is $0.01, and the maximum allowable value is $9999999.99. Transaction amounts of $0.00 are not allowed.
E-Commerce indicator String 1-character alphanumeric crypt_type

Describes the category of e-commerce transaction being processed. Allowable values are:


  • 1 - Mail Order / Telephone Order—Single
  • 2 - Mail Order / Telephone Order—Recurring
  • 3 - Mail Order / Telephone Order—Instalment
  • 4 - Mail Order / Telephone Order—Unknown classification
  • 5 - Authenticated e-commerce transaction (VBV)
  • 6 - Non-authenticated e-commerce transaction (VBV)
  • 7 - SSL-enabled merchant

In Credential on File transactions where the request field e-commerce indicator is also being sent: the allowable values for e-commerce indicator are dependent on the value sent for payment indicator, as follows:


if payment indicator = R, then allowable values for e-commerce indicator: 2, 5 or 6
if payment indicator = C, then allowable values for e-commerce indicator: 1, 5, 6 or 7
if payment indicator = U, then allowable values for e-commerce indicator: 1 or 7
if payment indicator = Z, then allowable values for e-commerce indicator: 1, 5, 6 or 7

COF Info Object cof_info Refer below for further breakdown and definition.
For more information, see Definitions of Request Fields – Credential on File below.

Pre-Authorization with Vault optional values

VALUE TYPE LIMITS VARIABLE DECRIPTION
Customer ID String 50-character alphanumeric cust_id This can be used for policy number, membership number, student ID, invoice number.
This field is searchable from the Moneris Merchant Resource Centre.
Customer Information Object cust_info Refer below for further breakdown and definition.
AVS Information Object avs_info Refer below for further breakdown and definition.

CustInfo mandatory properties

Value Type Limits Set method Decription
Email Address String 60-character alphanumeric email Customer email address.
Instructions String 100-character alphanumeric instructions Instructions or notes.
Billing Information Object billing(first_name, last_name, company_name, address, city, province, postal_code, country, phone, fax, tax1, tax2, tax3, shipping_cost) Billing information is stored as part of the CustInfo object. A maximum of 1 billing set. Refer below for further breakdown and definition.
Shipping Information Object shipping(first_name, last_name, company_name, address, city, province, postal_code, country, phone, fax, tax1, tax2, tax3, shipping_cost) Shipping information is stored as part of the CustInfo object. A maximum of 1 shipping set. Refer below for further breakdown and definition.
Items Array Object item(name, quantity, product_code, extended_amount) Item information is stored as part of the CustInfo object. Multiple items may be set. Refer below for further breakdown and definition.

Billing & Shipping mandatory values

Value Type Limits Variable/Hash Table Key Description
First Name String 30-character alphanumeric "first_name" Customer first name
Last Name String 30-character alphanumeric "last_name" Customer last name
Company Name String 50-character alphanumeric "company_name" Customer 's company name
Address String 70-character alphanumeric "address" Customer's address
City String 30-character alphanumeric "city" Customer's city
Province / State String 30-character alphanumeric "province" Customer's province or state
Postal / Zip Code String 30-character alphanumeric "postal_code" Customer's postal or zip code
Country String 30-character alphanumeric "country" Customer's country
Phone Number String 30-character alphanumeric "phone" Customer's phone number
Fax Number String 30-character alphanumeric "fax" Customer's fax number
Federal Tax String 10-character alphanumeric "tax1" Federal tax amount. Amount is not used for calculating total amount.
Provincial / State Tax String 10-character alphanumeric "tax2" Provincial or state tax amount. Amount is not used for calculating total amount.
Country / Local / Specialty Tax String 10-character alphanumeric "tax3" County, local or specialty tax amount. Amount is not used for calculating total amount.
Shipping Cost String 10-character alphanumeric "shipping_cost" Shipping cost. Amount is not used for calculating total amount.

Item mandatory values

Value Type Limits Variable/Hash Table Key Description
Item Name String 45-character alphanumeric "name" Item name or description.
Item Quantity String 5-character numeric "quantity" You must send a quantity > 0 or the item will not be added to the item list (i.e. minimum 1, maximum 99999)
Item Product Code String 20-character alphanumeric "product_code" Item product code or SKU.
Item Extended Amount String 9-character decimal "extended_amount" Must contain at least 3 digits and 2 penny values.
0.01-999999.99

Vault Response Fields

Value Limits Variable Description
Data Key 25-character alphanumeric DataKey This field is created when a profile is created and a token is returned.
It is a unique profile identifier, and is a required value for all future Vault transactions.
Vault Success true/false ResSuccess Indicates whether Vault transaction was successful.
PaymentType cc/ach PaymentType Indicates the payment type associated with a Vault profile.
Customer ID 30-character alphanumeric cust_id Returns the customer ID saved in the profile.
Phone Number 30-character alphanumeric phone Returns the phone number saved in the profile.
Email Address 30-character alphanumeric email Returns the email address saved in the profile.
Note 30-character alphanumeric note Returns the note saved in the profile.
Credit Card Fields
Masked PAN 20-character numeric masked_pan Returns the first 4 last 4 of the card number saved in the profile.
Expiry Date 4-character numeric expdate Returns the expiry date of the card number saved in the profile. YYMM format.
E-Commerce Indicator 1-character numeric crypt_type Returns the e-commerce indicator saved in the profile.
AVS Street Number 19-character alphanumeric avs_street_number Returns the AVS street number saved in the profile. If no other AVS street number is passed in the transaction request, this value will be submitted along with the financial transaction to the issuer.
AVS Street Name 19-character alphanumeric avs_street_name Returns the AVS street name saved in the profile. If no other AVS street number is passed in the transaction request, this value will be submitted along with the financial transaction to the issuer.
AVS Zip/Postal Code 9-character alphanumeric avs_street_zipcode Returns the AVS zip/postal code saved in the profile. If no other AVS street number is passed in the transaction request, this value will be submitted along with the financial transaction to the issuer.