39
iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential, trade secret information, which is proprietary to Planet Payment, Inc., and its subsidiaries (collectively Planet Payment®) and is provided solely for recipient’s use in connection with recipient’s participation in one of Planet Payment’s Processing Programs. Planet Payment reserves the right to make changes to specifications at any time and without notice. The information furnished by Planet Payment in this publication is believed to be accurate and reliable as of the date of its release; however, no responsibility is assumed by Planet Payment for its use, nor for infringements of patents or other rights of third parties resulting from its use, nor for the violation, misinterpretation, or misapplication of any laws, or any regulation of any credit card association including Visa, Inc., or MasterCard, Inc. No general license is granted under any patents, copyrights or other intellectual property rights owned by Planet Payment and the recipient is only granted an end user license to use this information for the purposes of participating in one of Planet Payment’s Processing Programs, pursuant to an agreement with Planet Payment or one of its authorized Program partners. All modifications or improvements to any of the information and specifications in this document shall belong exclusively to Planet Payment, Inc. No unauthorized copying, disclosure or use of this document is permitted without the express written consent of Planet Payment, Inc. Planet Payment®, Pay in Your Currency®, BuyVoice®, iPAY® and the globe-and-ring logo are trademarks and/or registered trademarks of Planet Payment, Inc.© 2018 Planet Payment, Inc. All Rights Reserved

iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

  • Upload
    others

  • View
    13

  • Download
    0

Embed Size (px)

Citation preview

Page 1: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

Gateway Specification

Version 7.2 | Update 1/16/19

Notice: This document contains confidential, trade secret information, which is proprietary to Planet

Payment, Inc., and its subsidiaries (collectively Planet Payment®) and is provided solely for recipient’s

use in connection with recipient’s participation in one of Planet Payment’s Processing Programs. Planet

Payment reserves the right to make changes to specifications at any time and without notice. The

information furnished by Planet Payment in this publication is believed to be accurate and reliable as of

the date of its release; however, no responsibility is assumed by Planet Payment for its use, nor for

infringements of patents or other rights of third parties resulting from its use, nor for the violation,

misinterpretation, or misapplication of any laws, or any regulation of any credit card association

including Visa, Inc., or MasterCard, Inc. No general license is granted under any patents, copyrights or

other intellectual property rights owned by Planet Payment and the recipient is only granted an end user

license to use this information for the purposes of participating in one of Planet Payment’s Processing

Programs, pursuant to an agreement with Planet Payment or one of its authorized Program partners. All

modifications or improvements to any of the information and specifications in this document shall belong

exclusively to Planet Payment, Inc. No unauthorized copying, disclosure or use of this document is

permitted without the express written consent of Planet Payment, Inc. Planet Payment®, Pay in Your

Currency®, BuyVoice®, iPAY® and the globe-and-ring logo are trademarks and/or registered

trademarks of Planet Payment, Inc.© 2018 Planet Payment, Inc. All Rights Reserved

Page 2: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

Contents

CHAPTER 1 ..................................................................................................................... 1

Introduction .......................................................................................................................... 1

CHAPTER 2 ..................................................................................................................... 2

Recurring Transaction Structure ........................................................................................ 2

Client Elements ................................................................................................................. 2

Account Elements ............................................................................................................. 3

Schedule Elements............................................................................................................ 4

Data Removal .................................................................................................................... 6

CHAPTER 3 ..................................................................................................................... 7

Repository and Template Transaction Structure ............................................................... 7

Repository Service ............................................................................................................... 7

Product Elements .............................................................................................................. 7

Template Service.................................................................................................................. 8

Billing Elements ................................................................................................................. 8

CHAPTER 4 ................................................................................................................... 10

Putting It All Together ........................................................................................................ 10

CHAPTER 5 ................................................................................................................... 11

Repository Transactions ................................................................................................... 11

Repository Product Insert ................................................................................................ 11

Fields for a Repository Product Insert ......................................................................... 11

Repository Product Modify ............................................................................................... 12

Fields for a Repository Product Modify........................................................................ 12

Repository Product Delete ............................................................................................... 13

Fields for a Repository Product Delete ........................................................................ 13

CHAPTER 6 ................................................................................................................... 14

Template Billing Transactions .......................................................................................... 14

Template Billing Insert ..................................................................................................... 14

Fields for a Template Billing Insert .............................................................................. 14

Template Billing Modify ................................................................................................... 16

Page 3: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

Fields for a Template Billing Modify ............................................................................ 16

Template Billing Delete .................................................................................................... 18

Fields for a Template Billing Delete ............................................................................. 18

CHAPTER 7 ................................................................................................................... 19

Recurring Transactions ..................................................................................................... 19

Recur Client Insert – CC .................................................................................................. 20

Fields for a Recur Client Insert - CC ........................................................................... 20

Additional Elements .................................................................................................... 22

Recur Client Insert – ACH ............................................................................................... 23

Fields for a Recur Client Insert - ACH ......................................................................... 23

Recur Client Modify ......................................................................................................... 24

Fields for a Recur Client Modify .................................................................................. 24

Recur Client Delete ......................................................................................................... 25

Fields for a Recur Client Delete .................................................................................. 25

Recur Account Insert – CC .............................................................................................. 26

Fields for a Recur Account Insert – CC ....................................................................... 26

Recur Account Insert - ACH ............................................................................................ 28

Fields for a Recur Account Insert - ACH ..................................................................... 28

Recur Account Modify – CC ............................................................................................ 29

Fields for a Recur Account Modify - CC ...................................................................... 29

Recur Account Modify – ACH .......................................................................................... 30

Fields for a Recur Account Modify - ACH .................................................................... 30

Recur Account Delete ...................................................................................................... 31

Fields for a Recur Account Delete ............................................................................... 31

Recur Schedule Insert ..................................................................................................... 31

Fields for a Recur Schedule Insert .............................................................................. 32

Recur Schedule Modify ................................................................................................... 33

Fields for a Recur Schedule Modify ............................................................................ 33

Recur Schedule Delete .................................................................................................... 34

Fields for a Recur Schedule Delete ............................................................................. 34

Recur Schedule Replace ................................................................................................. 35

Fields for a Recur Schedule Replace .......................................................................... 35

Page 4: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 1

CHAPTER 1

Introduction The iPay Gateway supports both pre-pay and post-pay recurring transactions. In a pre-pay transaction, the customer is charged before consumption of the service for the full amount of the billing cycle; in a post-pay transaction, the customer is charged after the consumption of the product and is billed for the amount of product or service used for that billing cycle.

See the following topics for details:

Note: See the XML Gateway API for complete details on transactions.

Recurring Transaction Structure. Describes the XML elements used in recurring transactions.

Repository and Template Transaction Structure. Describes the two services that provide structures in which data can be stored, referenced, and retrieved.

Putting It All Together. Illustrates how all the pieces are put together to easily create recurring transactions with iPay.

Repository Transactions. Provides details on the transactions that allow a merchant to create, modify, or delete a set of data that can be referenced using the Product ID

Template Billing Transactions. Provides details on creating billing templates, which can be referenced when setting up individual recurring schedules.

Recurring Transactions. Provides details on inserting, modifying, and deleting recurring transactions.

Each transaction example provides the required XML elements to process and the XML transaction format. The examples should be used in conjunction with the XML Gateway API, which provides detailed information on XML elements constraints and optional elements/data that can be included in the transaction.

Note: All fields in the XML examples are required except for those in BOLD, which are conditional.

Page 5: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 2

CHAPTER 2

Recurring Transaction Structure Recurring transactions consist of the XML elements. A recurring transaction consists of three types of elements: CLIENT elements, ACCOUNT elements, and Schedule Elements. Each element contains specific data requirements as well as allowable optional data. Understanding which data belong in each section is crucial to understanding how to create, modify, and delete recurring transactions.

Note: See the XML Gateway API for complete descriptions of all XML elements.

See the following topics for complete details:

Client Elements. Includes the Client name and address, along with several optional fields.

Account Elements. Includes specific information about the Client's account, such as whether the account is a checking or savings account.

Schedule Elements. Includes specific information about the Schedule, such as the billing method and frequency interval.

Data Removal. The Modify transaction, along with the Action attribute set to REMOVE, provides the ability to remove existing data from a selected field.

Client Elements The following fields can be inserted and modified for a Client.

Note: The CLIENT_ID cannot be modified.

RECURRING Description

FIELD ELEMENT

FIRST_NAME Primary account holder's first name.

LAST_NAME Primary account holder's last name.

EMAIL_ ADDRESS Account holder's email address.

ADDRESS Account holder's address.

CITY Account holder's city of residence.

STATE Account holder's state of residence.

POSTAL_CODE Account holder's postal code.

Page 6: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 3

OPERATOR Individual performing the transaction. This is an optional field that can be supplied within each section. When providing this field on a Client Insert, all sections initially contain the "OPERATOR" value supplied and can be modified individually. The Operator field that is passed along with the financial transaction is pulled from the Schedule section.

Note: A test operator is inserted on follow-up transactions.

MEMBER_NUMBER An optional field that is only referenced in the Client schema and reflected on all scheduled financial recurring transactions.

Account Elements Below are the fields that can be inserted and modified for an Account.

Note: The ACCOUNT_ID cannot be modified.

RECURRING Description

FIELD ELEMENT

ACCOUNT Payment method of recurring transaction.

ACCOUNT_NUMBER Bank/credit card account number.

EXPIRATION Expiration date of account number.

ROUTING_NUMBER Routing number of Client's financial institution.

ACCOUNT_TYPE Indicates whether the consumer account is a checking or savings account.

ACCOUNT_SUBTYPE Indicates whether the account is a personal or business account.

TRANSACTION_INDICATOR Transaction indicator used to identify how the account information was captured between the cardholder and the merchant.

OPERATOR Individual performing the transaction. This is an optional field that can be supplied within each section. When providing this field on a Client Insert, all sections initially contain the "OPERATOR" value supplied and can be modified individually. The Operator field that is passed along with the financial transaction is pulled from the Schedule section.

Note: A test operator is inserted on follow-up transactions.

Page 7: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 4

Schedule Elements Below are the fields that can be inserted and modified for a Schedule. The SCHEDULE_TYPE for the recurring transactions determines which elements are required and which elements can be ignored.

Note: The SCHEDULE_ID cannot be modified.

FIELD ELEMENT Description

AMOUNT The scheduled transaction amount.

BILLING_METHOD The mode for billing a customer's recurring schedule. Values are: PRE and POST. In the pre-pay mode, the customer is charged at the beginning of the billing cycle. In the post-pay mode, the customer is charged at the end of the billing cycle.

CURRENCY_CODE The standard ISO 4217 code used to identify the type of currency in the AMOUNT.

CURRENCY_INDICATOR Identifies how the amount and currency code will be processed. I.e., as a domestic or multi-currency pricing (MCP) transaction.

EFFECTIVE_DATE The date on which the scheduled action becomes effective.

FREQUENCY_INTERVAL The number of frequencies to occur between scheduled billings. This field works with the FREQUENCY_TYPE to define the length of time between billings or the length of a trial period.

FREQUENCY_TYPE The period used for the scheduled billings. Valid values include daily, weekly, monthly, or yearly. If the FREQUENCY_INTERVAL is set to "TRIAL", the interval cannot exceed certain parameters. For example, if the frequency type is set to DAILY, the frequency interval cannot exceed 90.

FREQUENCY_DATE The date of the month when a monthly or yearly frequency is to occur. This field is required if the FREQUENCY_TYPE is monthly or yearly and the frequency day is not present.

FREQUENCY_DAY The day when a weekly, monthly, or yearly frequency is to occur. This field is required if the FREQUENCY_TYPE is weekly, monthly, or yearly and the frequency date is not present.

FREQUENCY_MONTH The month when the yearly frequency is to occur. This field is required if the FREQUENCY_TYPE is set to yearly.

INITIAL_AMOUNT Bills the customer a different amount for the first billing cycle only.

Page 8: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 5

FIELD ELEMENT Description

OPERATOR Individual performing the transaction. This is an optional field that can be supplied within each section. When providing this field on a Client Insert, all sections initially contain the "OPERATOR" value supplied and can be modified individually. The Operator field that is passed along with the financial transaction is pulled from the Schedule section.

Note: A test operator is inserted on follow-up transactions.

PROCESS_RESIDUAL Indicates whether iPay should process a debit or a credit for a deleted or replaced recurring schedule.

RETRY_COUNT Sets the number of times that a specific recurring transaction is resubmitted for payment when a recoverable billing cycle transaction fails.

RETRY_INTERVAL Sets the number of days between rebill attempts. This field is required if the RETRY_COUNT is set.

SCHEDULE_CHARGE_DATE The first payment date of a new schedule or the next payment date of a schedule that has started.

SCHEDULE_DESCRIPTION An optional merchant-generated description for a newly created or modified recurring schedule.

SCHEDULE_END_AMOUNT The amount that must be reached to end the schedule. This field is required if the SCHEDULE_TYPE is set to END_AFTER_AMOUNT.

SCHEDULE_END_COUNT The number of billings that must be reached to end the schedule. This field is required if the SCHEDULE_TYPE is set to END_AFTER_COUNT.

SCHEDULE_END_DATE The date that must be reached to end the schedule. This field is required if the SCHEDULE_TYPE is set to END_AFTER_DATE.

SCHEDULE_START_DATE The start date of a recurring schedule.

SCHEDULE_TYPE The type of schedule requested. The types include the ability to end a schedule after an amount, a number of billings, or a specific date has been reached, or to continue indefinitely.

Page 9: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 6

Data Removal The Modify transaction offers the ability to remove previous data from a selected field. The Action attribute provides the ability to remove data from an existing record. The attribute value to perform this action is REMOVE. This combined attribute and value is only applicable for Modify requests. The Action attribute must only be used when requesting the REMOVAL of existing data within a field.

Note: This only removes data from a specified FIELD. The record as whole is not DELETED.

For example:

<MEMBER_NUMBER ACTION="REMOVE"></MEMBER_NUMBER>

Page 10: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 7

CHAPTER 3

Repository and Template Transaction Structure The iPay Gateway supports two services that provide structures in which data can be stored, referenced, and retrieved:

Repository Service. Provides the ability to set up the characteristics for a merchant’s Product.

Template Service. Allows a merchant set up the parameters for recurring billing cycles.

Products can be referenced in Templates, and Templates, in turn, can be used to build recurring schedules, minimizing the number of elements required. Creating a Billing Template and then referencing it in any Recur Insert transactions can significantly reduce the size of the recurring transaction request. Once a Billing Template is created, a unique Billing ID is generated. This Billing ID is required for future Modify and Delete actions for that template and can also be referenced when performing Recur Insert transactions. If any Billing Element is included within a Recur Insert transaction where the Billing ID is used; that Billing Element value overrides the value referenced in the iPay Gateway.

Note: If merchants do not wish to create Products and Billing Templates programmatically by using the XML API, the Payment Solutions Portal supports a GUI interface that allows them to create Products and Billing Templates. See the iPay Gateway User Guide for the Payment Solutions (PS) Portal for more information.

Repository Service The Repository Service provides the ability to set up the characteristics for a merchant’s Product. Merchants can have N number of unique Products, and each Product can have N number of associated Billing Templates. Once a Product is created, a unique Product ID is generated. This Product ID is required for future Modify and Delete transactions for that Product and is also referenced when performing a Template Billing Insert transaction.

Product Elements The following fields can be inserted or modified for a Product.

Note: The PRODUCT_ID cannot be modified.

FIELD ELEMENT Description

PRODUCT_NAME The name of a product.

PRODUCT_DESCRIPTION A description of the product.

Page 11: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 8

FIELD ELEMENT Description

PHONE TYPE An optional indicator of the customer's phone type. Valid values are DOMESTIC or INTERNATIONAL.

PRODUCT_URL The URL of a product.

Template Service The Template Service allows a merchant set up the parameters for recurring billing cycles. Merchants can have N number of unique billing templates, and each billing template can be referenced by N number of individual customer schedules.

Billing Elements The following fields can be inserted or modified for a Billing Template.

Note: The BILLING_ID cannot be modified.

FIELD ELEMENT Description

AMOUNT See AMOUNT.

BILLING_METHOD See BILLING_METHOD.

BILLING_NAME The name of a billing template.

BILLING_DESCRIPTION The description of a billing template.

CURRENCY_CODE See CURRENCY_CODE.

FREQUENCY_INTERVAL See FREQUENCY_INTERVAL.

FREQUENCY_TYPE See FREQUENCY_TYPE.

FREQUENCY_DATE See FREQUENCY_DATE.

FREQUENCY_DAY See FREQUENCY_DAY.

INITIAL_AMOUNT See INITIAL_AMOUNT.

PROCESS_RESIDUAL See PROCESS_RESIDUAL.

RETRY_COUNT See RETRY_COUNT.

RETRY_INTERVAL See RETRY_INTERVAL.

SCHEDULE_END_AMOUNT See SCHEDULE_END_AMOUNT.

SCHEDULE_END_COUNT See SCHEDULE_END_COUNT.

SCHEDULE_END_DATE See SCHEDULE_END_DATE.

SCHEDULE_TYPE See SCHEDULE_TYPE

Page 12: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 9

FIELD ELEMENT Description

MERCHANT_NAME Optional element that is only referenced in schedule schema. For information on how to use these soft descriptor fields, see the XML Gateway API.

MERCHANT_PHONE Optional element that is only referenced in schedule schema. For information on how to use these soft descriptor fields, see the XML Gateway API.

MERCHANT_STATE Optional element that is only referenced in schedule schema. For information on how to use these soft descriptor fields, see the XML Gateway API.

ACCOUNT_VALIDATION Optional element that provides fraud scrubbing validation on the authorization response. With this field, the merchant can control whether they want to accept transactions that failed the CVV check but otherwise were approved by the card issuer. See the XML Gateway API for more information.

CONSUMER_VALIDATION Optional element that provides fraud scrubbing validation on the authorization response. See the XML Gateway API for more information.

FRAUD_VALIDATION Optional element that provides fraud scrubbing validation on the authorization response. See the XML Gateway API for more information.

Page 13: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 10

CHAPTER 4

Putting It All Together To utilize the functions for recurring transactions, first create a Product and then set up BILLING(s) under each Product. For each Billing, Schedules can be created using the RECUR_xxxxx_INSERT transactions.

N number of Billings can be created for each Product, and N number of Clients can be created for each Billing. N number of separate Accounts can be set up for each existing Client, and N number of separate Schedules can be set up for each Account.

Once the initial Insert of a Product, Template, and Client are performed, any Modify, Delete, or Replace transactions can be performed.

REPOSITORY_PRODUCT_INSERT

TEMPLATE_BILLING_INSERT

Reference PRODUCT_ID

Individual transactions are created and sent according to the SCHEDULE

Create a complete schedule using RECUR_CLIENT_INSERT and reference the BILLING_ID

N number of ACCOUNTS can be created under an existing CLIENT

Reference the CLIENT_ID

N number of SCHEDULES can be created under an existing ACCOUNT

Reference the ACCOUNT_ID

Page 14: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 11

CHAPTER 5

Repository Transactions Repository transactions allow a merchant to create, modify, or delete a set of data that can be referenced using the Product ID.

The Repository transactions include:

Repository Product Insert. This transaction inserts a new Product.

Repository Product Modify. This transaction modifies an existing Product.

Repository Product Delete. This transaction deletes an existing Product.

Note: All fields in the XML examples are required except for those in BOLD, which are conditional.

Repository Product Insert The Repository Product Insert transaction inserts a new Product.

Fields for a Repository Product Insert

<TRANSACTION> <FIELDS> <SERVICE>REPOSITORY</SERVICE> <SERVICE_TYPE>PRODUCT</SERVICE_TYPE> <SERVICE_SUBTYPE>INSERT</SERVICE_SUBTYPE> <SERVICE_FORMAT>0000</SERVICE_FORMAT> <TERMINAL_ID>6177</TERMINAL_ID> <PRODUCT_NAME>Test Product</PRODUCT_NAME> <PRODUCT_DESCRIPTION>for testing</PRODUCT_DESCRIPTION> <PRODUCT_URL>http://www.testurl.com</PRODUCT_URL> <PHONE" TYPE=”DOMESTIC>3025551234</PHONE> <PHONE" TYPE=”INTERNATIONAL></PHONE> </FIELDS> </TRANSACTION> <RESPONSE> <FIELDS> <COMPANY_KEY>6990</COMPANY_KEY> <TRANSACTION_ID>0Y5D406WY8MZBKTEXEL</TRANSACTION_ID> <LOCAL_DATE>04172015</LOCAL_DATE> <LOCAL_TIME>114435</LOCAL_TIME> <MRC>00</MRC> <ARC>00</ARC>

Page 15: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 12

<RESPONSE_TEXT>PRODUCT ACCEPTED</RESPONSE_TEXT> <PRODUCT_ID>0EPD406WYA799XXV000</PRODUCT_ID> <TERMINAL_ID>6177</TERMINAL_ID> </FIELDS> </RESPONSE>

Repository Product Modify The Repository Product Modify transaction modifies an existing Product. At a minimum, one optional field must be supplied when performing a Modify transaction.

Fields for a Repository Product Modify

<TRANSACTION> <FIELDS> <SERVICE>REPOSITORY</SERIVCE> <SERVICE_TYPE>PRODUCT</SERVICE_TYPE> <SERVICE_SUBTYPE>MODIFY</SERVICE_SUBTYPE> <SERVICE_FORMAT>0000</SERVICE_FORMAT> <TERMINAL_ID>6177</TERMINAL_ID> <PRODUCT_ID>0EPD406WYA799XXV000</PRODUCT_ID> <PRODUCT_NAME></PRODUCT_NAME> <PRODUCT_DESCRIPTION>TESTING123</PRODUCT_DESCRIPTION> <PRODUCT_URL></PRODUCT_URL> <PHONE" TYPE=”DOMESTIC></PHONE> <PHONE" TYPE=”INTERNATIONAL></PHONE> </FIELDS> </TRANSACTION> <RESPONSE> <FIELDS>

<COMPANY_KEY>6990</COMPANY_KEY> <TRANSACTION_ID>0Y3D406PYT243PF8XXJ</TRANSACTION_ID> <LOCAL_DATE>04172015</LOCAL_DATE> <LOCAL_TIME>115142</LOCAL_TIME> <MRC>00</MRC> <ARC>00</ARC> <RESPONSE_TEXT>PRODUCT MODIFIED</RESPONSE_TEXT> <TERMINAL_ID>6177</TERMINAL_ID>

</FIELDS> </RESPONSE>

Page 16: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 13

Repository Product Delete The Repository Product Delete transaction deletes an existing Product.

Note: A Product cannot be deleted if it has any associated billing templates. All templates must be deleted before the Product can be deleted. An error message will be received if a Product deletion is attempted while billing templates are associated with it.

Fields for a Repository Product Delete

<TRANSACTION> <FIELDS> <SERVICE>REPOSITORY</SERVICE> <SERVICE_TYPE>PRODUCT</SERVICE_TYPE> <SERVICE_SUBTYPE>DELETE</SERVICE_SUBTYPE> <SERVICE_FORMAT>0000</SERVICE_FORMAT> <TERMINAL_ID>6177</TERMINAL_ID> <PRODUCT_ID>0EPD406WYA799XXV000</PRODUCT_ID> </FIELDS> </TRANSACTION> <RESPONSE> <FIELDS> <COMPANY_KEY>6990</COMPANY_KEY> <TRANSACTION_ID>0Y5D406THURN6ZH3XFU</TRANSACTION_ID> <LOCAL_DATE>04172015</LOCAL_DATE> <LOCAL_TIME>115346</LOCAL_TIME> <MRC>00</MRC> <ARC>00</ARC> <RESPONSE_TEXT>PRODUCT DELETED</RESPONSE_TEXT> <TERMINAL_ID>6177</TERMINAL_ID> </FIELDS> </RESPONSE>

Page 17: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 14

CHAPTER 6

Template Billing Transactions Template Billing transactions allow merchants to create billing templates, which can be referenced (using the Billing ID) when setting up individual recurring schedules.

Note: Template Billing transactions are not performed in real time. Please allow 15-20 minutes before attempting to use the Billing ID in recurring transactions.

Template Billing transactions include the following:

Template Billing Insert. This transaction inserts a new billing template.

Template Billing Modify. This transaction modifies an existing billing template.

Template Billing Delete. This transaction deletes an existing billing template.

Note: All fields in the XML examples are required except for those in BOLD, which are conditional.

Template Billing Insert The Template Billing Insert transaction inserts a new billing template.

Fields for a Template Billing Insert

Additional fields can be included.

<TRANSACTION> <FIELDS> <SERVICE>TEMPLATE</SERVICE> <SERVICE_TYPE>BILLING</SERVICE_TYPE> <SERVICE_SUBTYPE>INSERT</SERVICE_SUBTYPE> <SERVICE_FORMAT>0000</SERVICE_FORMAT> <TERMINAL_ID>6177</TERMINAL_ID> <BILLING_NAME>RECUR TEST</BILLING_NAME> <PRODUCT_ID>0EPD408B2VKZTWNY001</PRODUCT_ID> <BILLING_DESCRIPTION>TEST BILLING TEMPLATE</BILLING_DESCRIPTION> <BILLING_METHOD>PRE</BILLING_METHOD> <BILLING_TRANSACTION></BILLING_TRANSACTION> <PROCESS_RESIDUAL>N</PROCESS_RESIDUAL> <AMOUNT>2.99</AMOUNT> <CURRENCY_CODE>840</CURRENCY_CODE> <CURRENCY_INDICATOR>0</CURRENCY_INDICATOR> <SCHEDULE_TYPE>NO_END</SCHEDULE_TYPE> <SCHEDULE_END_AMOUNT></SCHEDULE_END_AMOUNT> <SCHEDULE_END_COUNT></SCHEDULE_END_COUNT>

Page 18: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 15

<SCHEDULE_END_DATE></SCHEDULE_END_DATE> <FREQUENCY_INTERVAL TYPE=”TRIAL”>7</FREQUENCY_INTERVAL> <FREQUENCY_TYPE TYPE=”TRIAL”>DAILY</FREQUENCY_TYPE> <FREQUENCY_INTERVAL>1</FREQUENCY_INTERVAL> <FREQUENCY_TYPE >MONTHLY</FREQUENCY_TYPE> <FREQUENCY_DATE></FREQUENCY_DATE> <FREQUENCY_DAY></FREQUENCY_DAY> <FREQUENCY_MONTH></FREQUENCY_MONTH> <RETRY_COUNT>3</RETRY_COUNT> <RETRY_INTERVAL>2</RETRY_INTERVAL> <MIN_PAYMENT_AMOUNT></MIN_PAYMENT_AMOUNT> <MERCHANT_NAME></MERCHANT_NAME> <MERCHANT_STATE></MERCHANT_STATE> <MERCHANT_PHONE></MERCHANT_PHONE> <CONSUMER_VALIDATION TYPE=”AVS”>EXACT</CONSUMER_VALIDATION> <ACCOUNT_VALIDATION TYPE=”CVV”>EXACT</ACCOUNT_VALIDATION> <FRAUD_VALIDATION></FRAUD_VALIDATION> </FIELDS> </TRANSACTION> <RESPONSE> <FIELDS> <COMPANY_KEY>6990</COMPANY_KEY> <TRANSACTION_ID>0Y4D408PU0HEA6FJGJE</TRANSACTION_ID> <LOCAL_DATE>04172015</LOCAL_DATE> <LOCAL_TIME>122644</LOCAL_TIME> <EXCHANGE_RATE>1</EXCHANGE_RATE> <MRC>00</MRC> <ARC>00</ARC> <RESPONSE_TEXT>BILLING ACCEPTED</RESPONSE_TEXT> <BILLING_ID>0HZD408PUUAZU27H009</BILLING_ID> <TERMINAL_ID>6177</TERMINAL_ID> <AMOUNT>2.99</AMOUNT> </FIELDS> </RESPONSE>

Page 19: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 16

Template Billing Modify The Template Billing Modify transaction modifies an existing billing template.

Note: Schedules referencing a template that is modified after the schedule is created do not inherit the changes to the template.

Fields for a Template Billing Modify

Additional fields can be included. At a minimum, one optional field must be supplied when performing a Template Billing Modify transaction.

This example modifies the previous BILLING_TEMPLATE_INSERT, and removes the TRIAL values, as well as ACCOUNT/CONSUMER_VALIDATION values.

<TRANSACTION> <FIELDS> <SERVICE>TEMPLATE</SERVICE> <SERVICE_TYPE>BILLING</SERVICE_TYPE> <SERVICE_SUBTYPE>MODIFY</SERVICE_SUBTYPE> <SERVICE_FORMAT>0000</SERVICE_FORMAT> <TERMINAL_ID>6177</TERMINAL_ID> <BILLING_ID>0HZD408PUUAZU27H009</BILLING_ID> <BILLING_NAME> </BILLING_NAME> <BILLING_DESCRIPTION> </BILLING_DESCRIPTION> <BILLING_METHOD></BILLING_METHOD> <BILLING_TRANSACTION></BILLING_TRANSACTION> <PROCESS_RESIDUAL></PROCESS_RESIDUAL> <AMOUNT></AMOUNT> <CURRENCY_CODE></CURRENCY_CODE> <CURRENCY_INDICATOR></CURRENCY_INDICATOR> <SCHEDULE_TYPE></SCHEDULE_TYPE> <SCHEDULE_END_AMOUNT></SCHEDULE_END_AMOUNT> <SCHEDULE_END_COUNT></SCHEDULE_END_COUNT> <SCHEDULE_END_DATE></SCHEDULE_END_DATE> <FREQUENCY_INTERVAL TYPE=”TRIAL” ACTION=”REMOVE”></FREQUENCY_INTERVAL> <FREQUENCY_TYPE TYPE=”TRIAL” ACTION=”REMOVE”></FREQUENCY_TYPE> <FREQUENCY_INTERVAL></FREQUENCY_INTERVAL> <FREQUENCY_TYPE > </FREQUENCY_TYPE> <FREQUENCY_DATE></FREQUENCY_DATE> <FREQUENCY_DAY></FREQUENCY_DAY> <FREQUENCY_MONTH></FREQUENCY_MONTH> <RETRY_COUNT></RETRY_COUNT> <RETRY_INTERVAL></RETRY_INTERVAL> <MIN_PAYMENT_AMOUNT></MIN_PAYMENT_AMOUNT> <MERCHANT_NAME></MERCHANT_NAME> <MERCHANT_STATE></MERCHANT_STATE> <MERCHANT_PHONE></MERCHANT_PHONE>

Page 20: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 17

<CONSUMER_VALIDATION TYPE=”AVS” ACTION=”REMOVE”></CONSUMER_VALIDATION> <ACCOUNT_VALIDATION TYPE=”CVV” ACTION=”REMOVE”></ACCOUNT_VALIDATION> <FRAUD_VALIDATION></FRAUD_VALIDATION> </FIELDS> </TRANSACTION> <RESPONSE> <FIELDS> <COMPANY_KEY>6990</COMPANY_KEY> <TRANSACTION_ID>0Y4D409ZKYZ3F0AHGJH</TRANSACTION_ID> <LOCAL_DATE>04172015</LOCAL_DATE> <LOCAL_TIME>124542</LOCAL_TIME> <EXCHANGE_RATE>1</EXCHANGE_RATE> <MRC>00</MRC> <ARC>00</ARC> <RESPONSE_TEXT>BILLING MODIFIED</RESPONSE_TEXT> <TERMINAL_ID>6177</TERMINAL_ID> <AMOUNT>2.99</AMOUNT> </FIELDS> </RESPONSE>

Page 21: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 18

Template Billing Delete The Template Billing Delete transaction deletes an existing Billing Template.

Note: A Billing Template cannot be deleted if it has any associated active Schedules (i.e., Schedules that are still actively billing customers). All schedules must all be inactivated (i.e., deleted) before a Billing Template can be deleted.

Fields for a Template Billing Delete

<TRANSACTION> <FIELDS> <SERVICE>TEMPLATE</SERVICE> <SERVICE_TYPE>BILLING</SERVICE_TYPE> <SERVICE_SUBTYPE>DELETE</SERVICE_SUBTYPE> <SERVICE_FORMAT>0000</SERVICE_FORMAT> <TERMINAL_ID>6177</TERMINAL_ID> <BILLING_ID>0HZD408PUUAZU27H009</BILLNG_ID> </FIELDS> </TRANSACTION> <RESPONSE> <FIELDS> <COMPANY_KEY>6990</COMPANY_KEY> <TRANSACTION_ID>0Y5D40XW7UFK6X06JWK</TRANSACTION_ID> <LOCAL_DATE>04172015</LOCAL_DATE> <LOCAL_TIME>151401</LOCAL_TIME> <MRC>00</MRC> <ARC>00</ARC> <RESPONSE_TEXT>BILLING DELETED</RESPONSE_TEXT> <TERMINAL_ID>6177</TERMINAL_ID> </FIELDS> </RESPONSE>

Page 22: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 19

CHAPTER 7

Recurring Transactions Recurring transactions include the following:

Recur Client Insert – CC. This transaction inserts a new Client, Account, and Schedule for recurring credit card transactions.

Recur Client Insert – ACH. This transaction inserts a new Client, Account, and Schedule for recurring ACH transactions.

Recur Client Modify. This transaction modifies an existing Client record.

Recur Client Delete. This transaction deletes the Client record, as well as all related Account and Schedule records.

Recur Account Insert – CC. This transaction inserts a new credit card Account. Schedule Elements are also required, as every Account must have a related Schedule.

Recur Account Insert - ACH. This transaction inserts a new ACH Account. Schedule data are also required, as every Account must have a related Schedule.

Recur Account Modify – CC. This transaction modifies an existing credit card Account record.

Recur Account Modify – ACH. This transaction modifies an existing ACH Account record.

Recur Account Delete. This transaction deletes the Account record, as well as all Schedule records.

Recur Schedule Insert. This transaction inserts a new Schedule.

Recur Schedule Modify. This transaction modifies an existing Schedule record.

Recur Schedule Delete. This transaction deletes a Schedule record.

Recur Schedule Replace. This transaction replaces an existing schedule with a new Schedule.

Note: All fields in the XML examples are required except for those in BOLD, which are conditional.

Page 23: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 20

Recur Client Insert – CC The Recur Client Insert - CC transaction inserts a new Client, Account, and Schedule for recurring transactions.

Conditional fields are dependent on the merchant’s AVS and CVV setting, as follows:

Note: For more information, refer to the CVV_RESPONSE and AVS_RESPONSE sections in the XML Gateway API.

AVS data (FIRST_NAME, LAST_NAME, ADDRESS, CITY, STATE, POSTAL_CODE) are dependent on the internal merchant profile settings, which are assigned by Planet Payment.

CVV is conditional based on the merchant’s contract with the acquiring financial institution. The transaction assumes a Full AVS level and required CVV data.

BILLING_ID is used to reference a stored Product and Billing Template. If present then Schedule Elements and Billing Elements are not required. If elements that are stored in the Billing Template are included, they override the stored values for that element

Fields for a Recur Client Insert - CC

<TRANSACTION> <FIELDS> <SERVICE>RECUR</SERVICE> <SERVICE_TYPE>CLIENT</SERVICE_TYPE> <SERVICE_SUBTYPE>INSERT</SERVICE_SUBTYPE> <SERVICE_FORMAT>1010</SERVICE_FORMAT> <TERMINAL_ID>6177</TERMINAL_ID> <AMOUNT>5.99</AMOUNT> <ACCOUNT_NUMBER>4111111111111111</ACCOUNT_NUMBER> <ACCOUNT>CC</ACCOUNT> <CURRENCY_CODE>840</CURRENCY_CODE> <EXPIRATION>0317</EXPIRATION> <TRANSACTION_INDICATOR>7</TRANSACTION_INDICATOR> <ADDRESS>123 Some Street</ADDRESS> <POSTAL_CODE>19720</POSTAL_CODE> <FIRST_NAME>John</FIRST_NAME> <LAST_NAME>Doe</LAST_NAME> <CITY>New Castle</CITY> <STATE>DE</STATE> <EMAIL_ADDRESS TYPE="PRIMARY">[email protected]</EMAIL _ADDRESS> <PHONE>3021234567</PHONE> <COUNTRY>USA</COUNTRY> <SCHEDULE_CHARGE_DATE>20150420</SCHEDULE_CHARGE_DATE> <SCHEDULE_TYPE>NO_END</SCHEDULE_TYPE> *<SCHEDULE_END_AMOUNT></SCHEDULE_ END_AMOUNT> *<SCHEDULE_END_COUNT></SCHEDULE_ END_COUNT> *<SCHEDULE_END_DATE></SCHEDULE_ END_DATE> <FREQUENCY_DATE>20</FREQUENCY_DATE>

Page 24: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 21

<SCHEDULE_START_DATE>20150420</SCHEDULE_START_DATE> <CVV>123</CVV> <BILLING_ID></BILLING_ID> <BILLING_METHOD>PRE</BILLING_METHOD> <BILLING_TRANSACTION>1</BILLING_TRANSACTION> <PROCESS_RESIDUAL>N</PROCESS_RESIDUAL> <CURRENCY_INDICATOR>0</CURRENCY_INDICATOR> <FREQUENCY_TYPE>MONTHLY</FREQUENCY_TYPE> <FREQUENCY_INTERVAL>1</FREQUENCY_INTERVAL> ^<FREQUENCY_DATE></FREQUENCY_DATE> ^<FREQUENCY_DAY></FREQUENCY_DAY> ^<FREQUENCY_MONTH></FREQUENCY_MONTH> </FIELDS> </TRANSACTION> * Used based on SCHEDULE_TYPE ^ Used based on FREQUENCY_TYPE

<RESPONSE> <FIELDS> <COMPANY_KEY>6990</COMPANY_KEY> <TRANSACTION_ID>0Y5D47V5LQLK5AV5811</TRANSACTION_ID> <LOCAL_DATE>04202015</LOCAL_DATE> <LOCAL_TIME>121219</LOCAL_TIME> <EXCHANGE_RATE>1</EXCHANGE_RATE> <FINANCIAL_TRAN_ID>0Y5D47V5M2F3KAN9814</FINANCIAL_TRAN_ID> <AVS_RESPONSE>Y</AVS_RESPONSE> <CVV_RESPONSE>M</CVV_RESPONSE> <APPROVAL_CODE>23050A</APPROVAL_CODE> <ACCOUNT_CHAR_IND>W</ACCOUNT_CHAR_IND> <REFERENCE_NUMBER>511004834610</REFERENCE_NUMBER> <TRANS_ID>005008123456789</TRANS_ID> <CLIENT_ID>0BLD47V5M10WGFFQ000</CLIENT_ID> <ACCOUNT_ID>0BLD47V5M10G83DL001</ACCOUNT_ID> <SCHEDULE_ID>0BLD47V5M10751LM002</SCHEDULE_ID> <ACCOUNT_DESCRIPTION>VISA 1111</ACCOUNT_DESCRIPTION> <MRC>00</MRC> <ARC>00</ARC> <RESPONSE_TEXT>CLIENT ACCEPTED</RESPONSE_TEXT> <TERMINAL_ID>6177</TERMINAL_ID> <AMOUNT>5.99</AMOUNT> </FIELDS> </RESPONSE>

Page 25: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 22

If a BILLING_ID is not submitted, or the Billing Template does not include all required information, a valid combination of FREQUENCY_TYPE and SCHEDULE_TYPE must be submitted to set the parameters of the Schedule. The frequency chosen dictates the required Schedule Elements. Only elements that comprise a valid frequency should be supplied.

If a free trial period is not offered in the transaction request or BILLING_ID, the SCHEDULE_CHARGE_DATE is required.

Additional Elements

Additional elements can be included and could include, fraud scrubbing elements, minimum payment amount, free trial elements, retry elements for recoverable failures, merchant descriptors, market specific ID, and user data fields, among others. Additional elements included are attached with all scheduled recurring transactions and the authorization response from the recurring scheduled transaction is subject to fraud scrubbing if supplied in the Insert transaction.

The sample XML below shows all additional fields that can be included in a Recur Client Insert – CC, Recur Account Insert – CC, Recur Schedule Insert, and Recur Schedule Modify for a credit card sale.

<MIN_PAYMENT_AMOUNT></MIN_PAYMENT_AMOUNT> <FREQUENCY_INTERVAL TYPE=”TRIAL”></FREQUENCY_INTERVAL> <FREQUENCY_TYPE TYPE=”TRIAL”></FREQUENCY_TYPE> <CONSUMER_VALIDATION TYPE=”AVS”></CONSUMER_VALIDATION> <ACCOUNT_VALIDATION TYPE=”CVV”></ACCOUNT_VALIDATION> <FRAUD_VALIDATION></FRAUD_VALIDATION> <RETRY_COUNT></RETRY_COUNT> <RETRY_INTERVAL></RETRY_INTERVAL> <INITIAL_AMOUNT></INITIAL_AMOUNT> <MERCHANT_NAME></MERCHANT_NAME> <MERCHANT_STATE></MERCHANT_STATE> <MERCHANT_PHONE></MERCHANT_PHONE> <MARKET_SPECIFIC_ID></MARKET_SPECIFIC_ID> <USER_DATA_0></USER_DATA_0> <USER_DATA_1></USER_DATA_1> <USER_DATA_2></USER_DATA_2> <USER_DATA_3></USER_DATA_3> <USER_DATA_4></USER_DATA_4> <USER_DATA_5></USER_DATA_5> <USER_DATA_6></USER_DATA_6> <USER_DATA_7></USER_DATA_7> <USER_DATA_8></USER_DATA_8> <USER_DATA_9></USER_DATA_9> <USER_DATA_10></USER_DATA_10> <USER_DATA_11></USER_DATA_11> <USER_DATA_12></USER_DATA_12> <USER_DATA_13></USER_DATA_13> <USER_DATA_14></USER_DATA_14> <USER_DATA_15></USER_DATA_15>

Page 26: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 23

<USER_DATA_16></USER_DATA_16> <USER_DATA_17></USER_DATA_17> <USER_DATA_18></USER_DATA_18> <USER_DATA_19></USER_DATA_19>

Recur Client Insert – ACH The Recur Client Insert - ACH transaction inserts a new Client, Account, and Schedule for recurring transactions.

Conditional fields include the following:

AVS data (FIRST_NAME, LAST_NAME, ADDRESS, CITY, STATE, POSTAL_CODE) are dependent on the internal merchant profile settings, which are assigned by Planet Payment.

The BILLING_ID is used to reference stored Product and Billing Template. If present, Schedule Elements and Billing Elements are not required. If elements that are stored in the Billing Template are included, they override the stored values for that element.

Fields for a Recur Client Insert - ACH

<TRANSACTION> <FIELDS> <TERMINAL_ID>6177</TERMINAL_ID> <SERVICE>WALLET</SERVICE> <SERVICE_TYPE>CLIENT</SERVICE_TYPE> <SERVICE_SUBTYPE>INSERT</SERVICE_SUBTYPE> <SERVICE_FORMAT>1010</SERVICE_FORMAT> <ACCOUNT_NUMBER>123456</ACCOUNT_NUMBER> <ACCOUNT>ACH</ACCOUNT> <ROUTING_NUMBER>123123123</ROUTING_NUMBER> <ACCOUNT_TYPE>C</ACCOUNT_TYPE> <ACCOUNT_SUBTYPE>P</FIELD> <COUNTRY>USA</COUNTRY> <ADDRESS>123 Some Street</ADDRESS> <POSTAL_CODE>19720</POSTAL_CODE> <FIRST_NAME>John</FIRST_NAME> <LAST_NAME>Doe</LAST_NAME> <CITY>New Castle</CITY> <STATE>DE</STATE> <TRANSACTION_INDICATOR>7</TRANSACTION_INDICATOR> <AMOUNT>5.99</AMOUNT> <CURRENCY_CODE>840</CURRENCY_CODE> <CURRENCY_INDICATOR>0</CURRENCY_INDICATOR> <BILLING_TRANSACTION>1</BILLING_TRANSACTION> </FIELDS> </TRANSACTION>

Page 27: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 24

<RESPONSE> <FIELDS> <COMPANY_KEY>6990</COMPANY_KEY> <TRANSACTION_ID>0Y4D4AU4HB8KT0UJGJN</TRANSACTION_ID> <LOCAL_DATE>04212015</LOCAL_DATE> <LOCAL_TIME>155156</LOCAL_TIME> <EXCHANGE_RATE>1</EXCHANGE_RATE> <FINANCIAL_TRAN_ID>0Y4D4AU4HD7N15UUGJQ</FINANCIAL_TRAN_ID> <APPROVAL_CODE>1JHJIV</APPROVAL_CODE> <ACCOUNT_DESCRIPTION>CHECKING 3456</ACCOUNT_DESCRIPTION> <CLIENT_ID>0L0D4AU4HWNL7JRQ0Q2</CLIENT_ID> <ACCOUNT_ID>0L0D4AU4HWNV9D5V0Q3</ACCOUNT_ID> <MRC>00</MRC> <ARC>00</ARC> <RESPONSE_TEXT>CLIENT ACCEPTED</RESPONSE_TEXT> <TERMINAL_ID>6177</TERMINAL_ID> <AMOUNT>5.99</AMOUNT> </FIELDS> </RESPONSE> If a BILLING_ID is not submitted, or the Billing Template does not include all required information, a valid combination of FREQUENCY_TYPE and SCHEDULE_TYPE must be submitted to set the parameters of the Schedule. The frequency chosen dictates the required Schedule Elements. Only elements that comprise a valid frequency should be supplied.

If a free trial period is not offered in the transaction request or BILLING_ID, the SCHEDULE_CHARGE_DATE is required.

USER_DATA elements can be included and will be applied to scheduled recurring transactions.

Recur Client Modify The Recur Client Modify transaction modifies an existing Client record. At a minimum, one conditional field must be supplied when performing a Modify transaction. AVS fields are conditional and depend on the merchant’s AVS setting.

Fields for a Recur Client Modify

<TRANSACTION> <FIELDS> <SERVICE>RECUR</SERVICE> <SERVICE_TYPE>CLIENT</SERVICE_TYPE> <SERVICE_SUBTYPE>MODIFY</SERVICE_SUBTYPE> <SERVICE_FORMAT>1010</SERVICE_FORMAT> <TERMINAL_ID>6177</TERMINAL_ID> <CLIENT_ID>0BLD47V5M10WGFFQ000</CLIENT_ID> <FIRST_NAME></FIRST_NAME> <LAST_NAME></LAST_NAME>

Page 28: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 25

<ADDRESS>123 Main St</ADDRESS> <CITY></CITY> <STATE></STATE> <POSTAL_CODE></POSTAL_CODE> <COUNTRY></COUNTRY> <PHONE></PHONE> <MEMBER_NUMBER></MEMBER_NUMBER> <OPERATOR></OPERATOR> </FIELDS> </TRANSACTION> <RESPONSE> <FIELDS> <COMPANY_KEY>6990</COMPANY_KEY > <TRANSACTION_ID>0Y3D4B03VLURAERGX8F</TRANSACTION_ID> <LOCAL_DATE>04212015</LOCAL_DATE> <LOCAL_TIME>162635</LOCAL_TIME> <MRC>00</MRC> <ARC>00</ARC> <RESPONSE_TEXT>CLIENT MODIFIED</RESPONSE_TEXT> <TERMINAL_ID>6177</TERMINAL_ID> </FIELDS> </RESPONSE>

Recur Client Delete The Recur Client Delete transaction deletes the Client record, as well as all related Account and Schedule records.

Fields for a Recur Client Delete

<TRANSACTION> <FIELDS> <SERVICE>RECUR</SERVICE> <SERVICE_TYPE>CLIENT</SERVICE_TYPE> <SERVICE_SUBTYPE>DELETE</SERVICE_SUBTYPE> <SERVICE_FORMAT>1010</SERVICE_FORMAT> <TERMINAL_ID>6177</TERMINAL_ID> <CLIENT_ID>0BLD4B0YRYN4J85L003</CLIENT_ID> </FIELDS> </TRANSACTION> <RESPONSE> <FIELDS> <COMPANY_KEY>6990</COMPANY_KEY> <TRANSACTION_ID>0Y3D4B0PR6WFYHRYXA4</TRANSACTION_ID> <LOCAL_DATE>04212015</LOCAL_DATE>

Page 29: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 26

<LOCAL_TIME>163831</LOCAL_TIME> <MRC>00</MRC> <ARC>00</ARC> <RESPONSE_TEXT>CLIENT DELETED</RESPONSE_TEXT> <TERMINAL_ID>6177</TERMINAL_ID> </FIELDS> </RESPONSE>

Recur Account Insert – CC The Recur Account Insert - CC transaction inserts a new Account. Schedule Elements are also required, as every Account must have a related Schedule.

Conditional fields include the following:

CVV is conditional based on the merchant’s contract with the acquiring financial institution. Transaction assumes required CVV data.

Billing ID is used to reference stored Product and Billing Template. If present, Schedule Elements and Billing Elements are not required. If elements that are stored in the Billing Template are included, they override the stored values for that element.

Additional elements can be included and could include, fraud scrubbing elements, minimum payment amount, free trial elements, retry elements for recoverable failures, merchant descriptors, market specific ID, and user data fields, among others. Additional elements included are attached with all scheduled recurring transactions, and the authorization response from the recurring scheduled transaction is subject to fraud scrubbing if supplied in the Insert transaction.

Fields for a Recur Account Insert – CC

<TRANSACTION> <FIELDS> <TERMINAL_ID>6177</TERMINAL_ID> <SERVICE>RECUR</SERVICE> <SERVICE_TYPE>ACCOUNT</SERVICE_TYPE> <SERVICE_SUBTYPE>INSERT</SERVICE_SUBTYPE> <SERVICE_FORMAT>1010</SERVICE_FORMAT> <CLIENT_ID>0BLD47V5M10WGFFQ000</CLIENT_ID> <ACCOUNT>CC</ACCOUNT> <ACCOUNT_NUMBER>5204730000008404</ACCOUNT_NUMBER> <EXPIRATION>0317</EXPIRATION> <TRANSACTION_INDICATOR>7</TRANSACTION_INDICATOR> <AMOUNT>1</AMOUNT> <CURRENCY_CODE>840</CURRENCY_CODE> <CVV>123</CVV> <SCHEDULE_CHARGE_DATE>20150423</SCHEDULE_CHARGE_DATE> <SCHEDULE_TYPE>NO_END</SCHEDULE_TYPE>

Page 30: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 27

<FREQUENCY_DATE>23</FREQUENCY_DATE> <BILLING_METHOD>PRE</BILLING_METHOD> <PROCESS_RESIDUAL>N</PROCESS_RESIDUAL> <SCHEDULE_START_DATE>20150423</SCHEDULE_START_DATE> <CURRENCY_INDICATOR>0</CURRENCY_INDICATOR> <FREQUENCY_TYPE>MONTHLY</FREQUENCY_TYPE> <FREQUENCY_INTERVAL>1</FREQUENCY_INTERVAL> </FIELDS> </TRANSACTION> <RESPONSE> <FIELDS> <COMPANY_KEY>6990</COMPANY_KEY> <TRANSACTION_ID>0Y3D4G31MA2N309E1VG</TRANSACTION_ID> <LOCAL_DATE>04232015</LOCAL_DATE> <LOCAL_TIME>155358</LOCAL_TIME> <EXCHANGE_RATE>1</EXCHANGE_RATE> <FINANCIAL_TRAN_ID>0Y3D4G31N3FHYDNJ1VJ</FINANCIAL_TRAN_ID> <AVS_RESPONSE>Y</AVS_RESPONSE> <CVV_RESPONSE>M</CVV_RESPONSE> <APPROVAL_CODE>003533</APPROVAL_CODE> <REFERENCE_NUMBER>511304844553</REFERENCE_NUMBER> <TRANS_ID>MCC000103</TRANS_ID> <ACCOUNT_ID>0BJD4G31N0H18ZWM001</ACCOUNT_ID> <SCHEDULE_ID>0BJD4G31N0HGEET7002</SCHEDULE_ID> <ACCOUNT_DESCRIPTION>MC 8404</ACCOUNT_DESCRIPTION> <MRC>00</MRC> <ARC>00</ARC> <RESPONSE_TEXT>ACCOUNT ACCEPTED</RESPONSE_TEXT> <TERMINAL_ID>6177</TERMINAL_ID> <AMOUNT>1</AMOUNT> </FIELDS> </RESPONSE>

If a BILLING_ID is not submitted, or the Billing Template does not include all required information, a valid combination of FREQUENCY_TYPE and SCHEDULE_TYPE must be submitted to set the parameters of the Schedule. The frequency chosen dictates the required Schedule Elements. Only elements that comprise a valid frequency should be supplied.

If a free trial period is not offered in the transaction request or BILLING_ID, the SCHEDULE_CHARGE_DATE is required.

USER_DATA elements may be included and will be applied to scheduled recurring transactions.

Page 31: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 28

Recur Account Insert - ACH The Recur Account Insert - ACH transaction inserts a new Account. Schedule data are also required, as every Account must have a related Schedule.

BILLING_ID is used to reference stored PRODUCT and BILLING TEMPLATE. If present then Schedule Elements and Billing Elements are not required. If elements which are stored in the BILLING TEMPLATE are included they will override the stored values for that element

Fields for a Recur Account Insert - ACH

<TRANSACTION> <FIELDS> <TERMINAL_ID>6177</TERMINAL_ID> <SERVICE>RECUR</SERVICE> <SERVICE_TYPE>ACCOUNT</SERVICE_TYPE> <SERVICE_SUBTYPE>INSERT</SERVICE_SUBTYPE> <SERVICE_FORMAT>1010</SERVICE_FORMAT> <CLIENT_ID>0BLD47V5M10WGFFQ000</CLIENT_ID> <ACCOUNT>ACH</ACCOUNT> <ACCOUNT_NUMBER>654321</ACCOUNT_NUMBER> <ROUTING_NUMBER>123123123</ROUTING_NUMBER> <ACCOUNT_TYPE>C</ACCOUNT_TYPE> <ACCOUNT_SUBTYPE>P</ACCOUNT_SUBTYPE> <TRANSACTION_INDICATOR>7</TRANSACTION_INDICATOR> <AMOUNT>1</AMOUNT> <CURRENCY_CODE>840</CURRENCY_CODE> <SCHEDULE_CHARGE_DATE>20150423</SCHEDULE_CHARGE_DATE> <SCHEDULE_TYPE>NO_END</SCHEDULE_TYPE> <FREQUENCY_DATE>23</FREQUENCY_DATE> <BILLING_METHOD>PRE</BILLING_METHOD> <PROCESS_RESIDUAL>N</PROCESS_RESIDUAL> <SCHEDULE_START_DATE>20150423</SCHEDULE_START_DATE> <CURRENCY_INDICATOR>0</CURRENCY_INDICAOR> <FREQUENCY_TYPE>MONTHLY</FREQUENCY_TYPE> <FREQUENCY_INTERVAL>1</FREQUENCY_INTERVAL> </FIELDS> </TRANSACTION> <RESPONSE> <FIELDS> <COMPANY_KEY">6990</COMPANY_KEY> <TRANSACTION_ID">0Y3D4G489428FFKD22B</TRANSACTION_ID> <LOCAL_DATE">04232015</LOCAL_DATE> <LOCAL_TIME">161502</LOCAL_TIME> <EXCHANGE_RATE">1</EXCHANGE_RATE> <FINANCIAL_TRAN_ID">0Y3D4G4894XJJNK022E</FINANCIAL_TRAN_ID> <APPROVAL_CODE">5DTBN0</APPROVAL_CODE>

Page 32: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 29

<ACCOUNT_ID">0BJD4G489426557P004</ACCOUNT_ID> <SCHEDULE_ID">0BJD4G48942XWNLJ005</SCHEDULE_ID> <ACCOUNT_DESCRIPTION">CHECKING 4321</ACCOUNT_DESCRIPTION> <MRC">00</MRC> <ARC">00</ARC> <RESPONSE_TEXT">ACCOUNT ACCEPTED</RESPONSE_TEXT> <TERMINAL_ID">6177</TERMINAL_ID> <AMOUNT">1</AMOUNT> </FIELDS> </RESPONSE>

If a BILLING_ID is not submitted, or the Billing Template does not include all required information, a valid combination of FREQUENCY_TYPE and SCHEDULE_TYPE must be submitted to set the parameters of the Schedule. The frequency chosen dictates the required Schedule Elements. Only elements that comprise a valid frequency should be supplied.

If a free trial period is not offered in the transaction request or BILLING_ID, the SCHEDULE_CHARGE_DATE is required.

USER_DATA elements may be included and will be applied to scheduled recurring transactions.

Recur Account Modify – CC The Recur Account Modify - CC transaction modifies an existing ACCOUNT record. At a minimum, one conditional field must be supplied when performing a MODIFY transaction.

Fields for a Recur Account Modify - CC

<TRANSACTION> <FIELDS> <EXPIRATION>1020</EXPIRATION> <ACCOUNT_NUMBER></ACCOUNT_NUMBER> <EXPIRATION>1020</EXPIRATION> <SERVICE>RECUR</SERVICE> <SERVICE_TYPE>ACCOUNT</SERVICE_TYPE> <SERVICE_SUBTYPE>MODIFY</SERVICE_SUBTYPE> <SERVICE_FORMAT>1010</SERVICE_FORMAT> <TERMINAL_ID>6177</TERMINAL_ID> <TRANSACTION_INDICATOR>7</TRANSACTION_INDICATOR> <ACCOUNT_ID>0BJD4G31N0H18ZWM001</ACCOUNT_ID> </FIELDS> </TRANSACTION> <RESPONSE KEY="6990"> <RESPONSE> <FIELDS> <COMPANY_KEY>6990</COMPANY_KEY> <TRANSACTION_ID>0Y5D4G5QE6A0MAF728R</TRANSACTION_ID>

Page 33: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 30

<LOCAL_DATE>04232015</LOCAL_DATE> <LOCAL_TIME>164226</LOCAL_TIME> <MRC>00</MRC> <ARC>00</ARC> <RESPONSE_TEXT>ACCOUNT MODIFIED</RESPONSE_TEXT> <TERMINAL_ID>6177</TERMINAL_ID> </FIELDS> </RESPONSE> </RESPONSE>

Recur Account Modify – ACH The Recur Account Modify - ACH transaction modifies an existing ACCOUNT record. At a minimum, one conditional field must be supplied when performing a MODIFY transaction.

Fields for a Recur Account Modify - ACH

<TRANSACTION> <FIELDS> <ACCOUNT_NUMBER>123654</ACCOUNT_NUMBER> <ROUTING_NUMBER></ROUTING_NUMBER> <ACCOUNT_TYPE></ACCOUNT_TYPE> <ACCOUNT_SUBTYPE></ACCOUNT_SUBTYPE> <SERVICE>RECUR</SERVICE> <SERVICE_TYPE>ACCOUNT</SERVICE_TYPE> <SERVICE_SUBTYPE>MODIFY</SERVICE_SUBTYPE> <SERVICE_FORMAT>1010</SERVICE_FORMAT> <TERMINAL_ID>6177</TERMINAL_ID> <TRANSACTION_INDICATOR>7</TRANSACTION_INDICATOR> <ACCOUNT_ID>0BJD4G489426557P004</ACCOUNT_ID> </FIELDS> </TRANSACTION> <RESPONSE KEY="6990"> <RESPONSE> <FIELDS> <COMPANY_KEY>6990</COMPANY_KEY> <TRANSACTION_ID>0Y3D4G6BG63Y7DW6288</TRANSACTION_ID> <LOCAL_DATE>04232015</LOCAL_DATE> <LOCAL_TIME>165145</LOCAL_TIME> <MRC>00</MRC> <ARC>00</ARC> <RESPONSE_TEXT>ACCOUNT MODIFIED</RESPONSE_TEXT> <TERMINAL_ID>6177</TERMINAL_ID> </FIELDS> </RESPONSE> </RESPONSE>

Page 34: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 31

Recur Account Delete The Recur Account Delete transaction deletes the ACCOUNT record as well as all SCHEDULE records. If the ACCOUNT record is the only ACCOUNT related to a corresponding CLIENT, the transaction will be rejected due to data integrity violations.

Fields for a Recur Account Delete

<TRANSACTION> <FIELDS>

<SERVICE>RECUR</SERVICE> <SERVICE_TYPE>ACCOUNT</SERVICE_TYPE> <SERVICE_SUBTYPE>DELETE</SERVICE_SUBTYPE>

<SERVICE_FORMAT>1010</SERVICE_FORMAT> <TERMINAL_ID>6177</TERMINAL_ID> <ACCOUNT_ID>0BJD4G489426557P004</ACCOUNT_ID>

</FIELDS> </TRANSACTION>

<RESPONSE> <FIELDS>

<COMPANY_KEY>6990</COMPANY_KEY> <TRANSACTION_ID>0Y3D4B0PR6GSYHRYXB8</TRANSACTION_ID> <LOCAL_DATE>04242015</LOCAL_DATE> <LOCAL_TIME>164531</LOCAL_TIME> <MRC>00</MRC> <ARC>00</ARC> <RESPONSE_TEXT>ACCOUNT DELETED</RESPONSE_TEXT> <TERMINAL_ID>6177</TERMINAL_ID>

</FIELDS> </RESPONSE>

Recur Schedule Insert The Recur Schedule Insert transaction inserts a new SCHEDULE.

BILLING_ID is used to reference stored PRODUCT and BILLING TEMPLATE. If present, Schedule Elements and Billing Elements are not required. If elements stored in the BILLING TEMPLATE are included, they override the stored values for that element.

Page 35: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 32

Fields for a Recur Schedule Insert <TRANSACTION>

<FIELDS> <PIN>1234</PIN> <TERMINAL_ID>6177</TERMINAL_ID> <SERVICE>RECUR</SERVICE> <SERVICE_TYPE>SCHEDULE</SERVICE_TYPE> <SERVICE_SUBTYPE>INSERT</SERVICE_SUBTYPE> <SERVICE_FORMAT>1010</SERVICE_FORMAT> <ACCOUNT_ID>0BJD4G31N0H18ZWM001</ACCOUNT_ID> <AMOUNT>5.99</AMOUNT> <CURRENCY_CODE>840</CURRENCY_CODE> <SCHEDULE_CHARGE_DATE>20150602</SCHEDULE_CHARGE_DATE> <SCHEDULE_TYPE>NO_END</SCHEDULE_TYPE> <RETRY_COUNT>3</RETRY_COUNT> <RETRY_INTERVAL>1</RETRY_INTERVAL> <INITIAL_AMOUNT>9.99</INITIAL_AMOUNT> <BILLING_METHOD>PRE</BILLING_METHOD> <PROCESS_RESIDUAL>N</PROCESS_RESIDUAL> <SCHEDULE_START_DATE>20150602</SCHEDULE_START_DATE> <FREQUENCY_DATE>2</FREQUENCY_DATE> <CURRENCY_INDICATOR>0</CURRENCY_INDICATOR> <FREQUENCY_TYPE>MONTHLY</FREQUENCY_TYPE> <FREQUENCY_INTERVAL>1</FREQUENCY_INTERVAL>

</FIELDS> </TRANSACTION>

<RESPONSE>

<FIELDS> <COMPANY_KEY>6990</FIELD> <TRANSACTION_ID>0Y3D7MTNNNE89WGFKN5</FIELD> <LOCAL_DATE>06022015</FIELD> <LOCAL_TIME>142255</FIELD> <EXCHANGE_RATE>1</FIELD> <FINANCIAL_TRAN_ID>0Y3D7MTNPPB099Z4KN8</FIELD> <AVS_RESPONSE>Y</FIELD> <APPROVAL_CODE>003707</FIELD> <REFERENCE_NUMBER>515304984062</FIELD> <SCHEDULE_ID>0BJD7MTNPNTQK7NK002</FIELD> <MRC>00</FIELD> <ARC>00</FIELD> <RESPONSE_TEXT>SCHEDULE ACCEPTED</FIELD> <TERMINAL_ID>6177</FIELD> <AMOUNT>5.99</FIELD>

</FIELDS> </RESPONSE>

Page 36: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 33

If a BILLING_ID is not submitted, or the BILLING TEMPLATE does not include all required information, a valid combination of lines 11-27 must be submitted to set the parameters of the SCHEDULE. The frequency chosen dictates the required Schedule Elements. Only elements that comprise a valid frequency should be supplied.

If a free trial period is not offered in the transaction request or BILLING_ID, SCHEDULE_CHARGE_DATE (line 27) is required.

Additional elements can be included and could include, fraud scrubbing elements, minimum payment amount, free trial elements, retry elements for recoverable failures, merchant descriptors, market specific ID, and user data fields, among others. Additional elements included will be attached with all scheduled recurring transactions and the authorization response from the recurring scheduled transaction is subject to fraud scrubbing if supplied in the INSERT transaction

Recur Schedule Modify The Recur Schedule Modify transaction modifies an existing SCHEDULE record. At a minimum, one conditional field must be supplied when performing a MODIFY transaction.

Additional elements can be included and modified if applicable.

Fields for a Recur Schedule Modify

<TRANSACTION> <FIELDS> <PIN>1234</PIN> <TERMINAL_ID>6177</TERMINAL_ID> <SERVICE>RECUR</SERVICE> <SERVICE_TYPE>SCHEDULE</SERVICE_TYPE> <SERVICE_SUBTYPE>MODIFY</SERVICE_SUBTYPE> <SERVICE_FORMAT>1010</SERVICE_FORMAT> <SCHEDULE_ID>0BJD7MTNPNTQK7NK002</SCHEDULE_ID> <AMOUNT>1.99</AMOUNT> <CURRENCY_CODE>840</CURRENCY_CODE> <SCHEDULE_CHARGE_DATE>20150702</SCHEDULE_CHARGE_DATE> <SCHEDULE_TYPE>NO_END</SCHEDULE_TYPE> <FREQUENCY_DATE>2</FREQUENCY_DATE> <RETRY_COUNT>3</RETRY_COUNT> <RETRY_INTERVAL>1</RETRY_INTERVAL> <INITIAL_AMOUNT>9.99</INITIAL_AMOUNT> <BILLING_METHOD>PRE</BILLING_METHOD> <PROCESS_RESIDUAL>N</PROCESS_RESIDUAL> <CURRENCY_INDICATOR>0</CURRENCY_INDICATOR> <FREQUENCY_TYPE>MONTHLY</FREQUENCY_TYPE> <FREQUENCY_INTERVAL>1</FREQUENCY_INTERVAL> </FIELDS> </TRANSACTION>

Page 37: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 34

<RESPONSE> <FIELDS> <COMPANY_KEY>6990</COMPANY_KEY> <TRANSACTION_ID>0Y4D7MV5N14HGKUYGK6</TRANSACTION_ID> <LOCAL_DATE>06022015</LOCAL_DATE> <LOCAL_TIME>144802</LOCAL_TIME> <MRC>00</MRC> <ARC>00</ARC> <RESPONSE_TEXT>SCHEDULE MODIFIED</RESPONSE_TEXT> <TERMINAL_ID>6177</TERMINAL_ID> <AMOUNT>1.99</AMOUNT> </FIELDS> </RESPONSE>

Recur Schedule Delete The Recur Schedule Delete transaction deletes the SCHEDULE record.

Fields for a Recur Schedule Delete

<TRANSACTION> <FIELDS> <PIN>1234</PIN> <TERMINAL_ID>6177</TERMINAL_ID> <SERVICE>RECUR</SERVICE> <SERVICE_TYPE>SCHEDULE</SERVICE_TYPE> <SERVICE_SUBTYPE>DELETE</SERVICE_SUBTYPE> <SERVICE_FORMAT>1010</SERVICE_FORMAT> <SCHEDULE_ID>0BJD7MTNPNTQK7NK002</SCHEDULE_ID> <EFFECTIVE_TYPE>DATE</EFFECTIVE_TYPE> <EFFECTIVE_DATE>20150602</EFFECTIVE_DATE> <PROCESS_RESIDUAL>N</PROCESS_RESIDUAL> </FIELDS> </TRANSACTION> <RESPONSE> <FIELDS> <COMPANY_KEY>6990</COMPANY_KEY> <TRANSACTION_ID>0Y5D7N10G2W541XHK27</TRANSACTION_ID> <LOCAL_DATE>06022015</LOCAL_DATE> <LOCAL_TIME>152008</LOCAL_TIME> <MRC>00</MRC> <ARC>00</ARC> <RESPONSE_TEXT>SCHEDULE DELETED</RESPONSE_TEXT> <TERMINAL_ID>6177</TERMINAL_ID> </FIELDS> </RESPONSE>

Page 38: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 35

Recur Schedule Replace The Recur Schedule Replace transaction replaces an existing schedule with a new schedule. Conditional fields are dependent on the new schedule information that will replace the existing schedule.

The rest of the information in the transaction is for the new SCHEDULE. If a BILLING_ID is submitted, then the information for the new schedule is pulled from the referenced BILLING_ID, and lines 14–28 do not need to be included if all required information is in the template. If a specific field element and value are included when a BILLING_ID is referenced, then the value in the billing template will be overwritten with the value submitted in the transaction.

Fields for a Recur Schedule Replace

<TRANSACTION> <FIELDS> <FIELD KEY="PIN">1234</FIELD> <FIELD KEY="TERMINAL_ID">6177</FIELD> <FIELD KEY="SERVICE">RECUR</FIELD> <FIELD KEY="SERVICE_TYPE">SCHEDULE</FIELD> <FIELD KEY="SERVICE_SUBTYPE">REPLACE</FIELD> <FIELD KEY="SERVICE_FORMAT">1010</FIELD> <FIELD KEY="SCHEDULE_ID">0BKD7MNY5RW1LJN2252</FIELD> <FIELD KEY="AMOUNT">10</FIELD> <FIELD KEY="CURRENCY_CODE">840</FIELD> <FIELD KEY="SCHEDULE_CHARGE_DATE">20150602</FIELD> <FIELD KEY="SCHEDULE_TYPE">NO_END</FIELD> <FIELD KEY="FREQUENCY_DATE">2</FIELD> <FIELD KEY="BILLING_METHOD">PRE</FIELD> <FIELD KEY="PROCESS_RESIDUAL">N</FIELD> <FIELD KEY="SCHEDULE_START_DATE">20150602</FIELD> <FIELD KEY="EFFECTIVE_TYPE">DATE</FIELD> <FIELD KEY="EFFECTIVE_DATE">20150602</FIELD> <FIELD KEY="CURRENCY_INDICATOR">0</FIELD> <FIELD KEY="FREQUENCY_TYPE">MONTHLY</FIELD> <FIELD KEY="FREQUENCY_INTERVAL">1</FIELD> </FIELDS> </TRANSACTION>

Page 39: iPay Gateway API Guide for Recurring Payments...iPay Gateway API Guide for Recurring Payments Gateway Specification Version 7.2 | Update 1/16/19 Notice: This document contains confidential,

iPay Gateway API Guide for Recurring Payments

P a g e | 36

<RESPONSE> <FIELDS> <FIELD KEY="COMPANY_KEY">6990</FIELD> <FIELD KEY="TRANSACTION_ID">0Y3D7N1TYDH9QT06L37</FIELD> <FIELD KEY="LOCAL_DATE">06022015</FIELD> <FIELD KEY="LOCAL_TIME">153607</FIELD> <FIELD KEY="EXCHANGE_RATE">1</FIELD> <FIELD KEY="SCHEDULE_ID">0BJD7N1TYEUPBKED005</FIELD> <FIELD KEY="MRC">00</FIELD> <FIELD KEY="ARC">00</FIELD> <FIELD KEY="RESPONSE_TEXT">SCHEDULE REPLACED</FIELD> <FIELD KEY="TERMINAL_ID">6177</FIELD> <FIELD KEY="AMOUNT">10</FIELD> </FIELDS> </RESPONSE>

If a free trial period is not offered (in the transaction request or the BILLING_ID), then SCHEDULE_CHARGE_ DATE (line 28) is required.

Additional elements may be included and could include, fraud scrubbing elements, minimum payment amount, free trial elements, retry elements for recoverable failures, merchant descriptors, market specific ID, and user data fields, among others. Additional elements included will be attached with all scheduled recurring transactions and the authorization response from the recurring scheduled transaction is subject to fraud scrubbing if supplied in the REPLACE transaction.