Three-Step Redirect API

Recurring Operations

Step One
Three-Step: Recurring

Add Subscription to an Existing Plan

Element Description
<add-subscription> Associate payment information with a recurring plan.
api-key* api-key is obtained in the Security Keys section of the Control Panel Settings.
redirect-url* A URL on your web server that the gateway will redirect your customer to after sensitive data collection.
customer-vault-id Load customer details from an existing customer vault record. If set, no payment information is required during step two.
start-date The first day that the customer will be charged.
Format: YYYYMMDD
order-id Order id.
po-number Cardholder's purchase order number.
order-description Order description.
currency Set transaction currency.
Format: ISO 4217
tax-amount The sales tax included in the transaction amount associated with the purchase. Setting tax equal to '-1' indicates an order that is exampt from sales tax.
Default: 0.00'
Format: x.xx
shipping-amount Total shipping amount.
merchant-defined-field-# Merchant specified custom fields.
<plan>
plan-id* The unique plan ID that references only this recurring plan.
</plan>
<billing> The customer's billing information
billing-id Specify billing id. Recommended when using customer vault hybrid action. Will be ignored if no hybrid add/update-customer is done.
first-name Cardholder's first name.
last-name Cardholder's last name.
address1 Cardholder's billing address.
city Card billing city.
state Card billing state/province.
Format: CC
postal Card billing postal code.
country Card billing country code.
Format: CC/ISO 3166
phone Billing phone number.
email Billing email address.
company Cardholder's company.
address2 Card billing address, line 2.
fax Billing fax number.
account-type** The customer's ACH account type.
Values: 'checking' or 'savings'
entity-type** The customer's ACH account entity.
Values: 'personal' or 'business'
</billing>
<shipping> The customer's shipping information.
shipping-id Specify shipping id. Recommended when using customer vault hybrid action. Will be ignored if no hybrid add/update-customer is done.
first-name Shipping first name.
last-name Shipping last name.
address1 Shipping address.
city Shipping city.
state Shipping state/province.
Format: CC
postal Shipping postal code.
country Shipping country code.
Format: CC/ISO 3166
phone Shipping phone number.
email Shipping email address.
company Shipping company.
address2 Shipping address, line 2.
fax Shipping fax number.
</shipping>
* Always required
** Required for ACH transactions

Add Subscription to a Custom Plan

Element Description
<add-subscription> Associate payment information with a recurring plan.
api-key* api-key is obtained in the Security Keys section of the Control Panel Settings.
redirect-url* A URL on your web server that the gateway will redirect your customer to after sensitive data collection.
customer-vault-id Load customer details from an existing customer vault record. If set, no payment information is required during step two.
start-date The first day that the customer will be charged.
Format: YYYYMMDD
order-id Order id.
po-number Cardholder's purchase order number.
order-description Order description.
currency Set transaction currency.
Format: ISO 4217
tax-amount The sales tax included in the transaction amount associated with the purchase. Setting tax equal to '-1' indicates an order that is exampt from sales tax.
Default: '0.00'
Format: x.xx
shipping-amount Total shipping amount.
merchant-defined-field-# Merchant specified custom fields.
<plan>
payments* The number of payments before the recurring plan is complete.
Notes: '0' for until canceled
amount* The plan amount to be charged each billing cycle.
Format: x.xx
day-frequency*** How often, in days, to charge the customer. Cannot be set with 'month-frequency' or 'day-of-month'.
month-frequency**** How often, in months, to charge the customer. Cannot be set with 'day-frequency'. Must be set with 'day-of-month'.
Values: 1 through 24
day-of-month**** The day that the customer will be charged. Cannot be set with 'day-frequency'. Must be set with 'month-frequency'.
Values: 1 through 31 - for months without 29, 30, or 31 days, the charge will be on the last day
</plan>
<billing> The customer's biling information
billing-id Specify billing id. Recommended when using customer vault hybrid action. Will be ignored if no hybrid add/update-customer is done.
first-name Cardholder's first name.
last-name Cardholder's last name.
address1 Cardholder's billing address.
city Card billing city.
state Card billing state/province.
Format: CC
postal Card billing postal code.
country Card billing country code.
Format: CC/ISO 3166
phone Billing phone number.
email Billing email address.
company Cardholder's company.
address2 Card billing address, line 2.
fax Billing fax number.
account-type** The customer's ACH account type.
Values: 'checking' or 'savings'
entity-type** The customer's ACH account entity.
Values: 'personal' or 'business'
</billing>
<shipping> The customer's shipping information.
shipping-id Specify shipping id. Recommended when using customer vault hybrid action. Will be ignored if no hybrid add/update-customer is done.
first-name Shipping first name.
last-name Shipping last name.
address1 Shipping address.
city Shipping city.
state Shipping state/province.
Format: CC
postal Shipping postal code.
country Shipping country code.
Format: CC/ISO 3166
phone Shipping phone number.
email Shipping email address.
company Shipping company.
address2 Shipping address, line 2.
fax Shipping fax number.
</shipping>
* Always required
** Required for ACH transactions
*** Required unless 'month-frequency' and 'day-of-month' is set.
**** Required unless 'day-frequency' is set.

Update Subscription Information

Element Description
<update-subscription> Update Customer's information for a subscription.
api-key* api-key is obtained in the Security Keys section of the Control Panel Settings.
redirect-url* A URL on your web server that the gateway will redirect your customer to after sensitive data collection.
subscription-id* The subscription that will be updated.
order-id Order id.
po-number Cardholder's purchase order number.
order-description Order description.
currency Set transaction currency.
Format: ISO 4217
merchant-defined-field-# Merchant specified custom fields.
<billing> The customer's billing information
first-name Cardholder's first name.
last-name Cardholder's last name.
address1 Cardholder's billing address.
city Card billing city.
state Card billing state/province.
Format: CC
postal Card billing postal code.
country Card billing country code.
Format: CC/ISO 3166
phone Billing phone number.
email Billing email address.
company Cardholder's company.
address2 Card billing address, line 2.
fax Billing fax number.
account-type** The customer's ACH account type.
Values: 'checking' or 'savings'
entity-type** The customer's ACH account entity.
Values: 'personal' or 'business'
</billing>
<shipping> The customer's shipping information.
first-name Shipping first name.
last-name Shipping last name.
address1 Shipping address.
city Shipping city.
state Shipping state/province.
Format: CC
postal Shipping postal code.
country Shipping country code.
Format: CC/ISO 3166
phone Shipping phone number.
email Shipping email address.
company Shipping company.
address2 Shipping address, line 2.
fax Shipping fax number.
</shipping>
* Always Required.
** Required for ACH subscriptions.
Collapse Step #1

Step Two
Three-Step: Recurring

HTML Form Fields Request

HTML Form Fields Description
billing-cc-number* Credit card number.
billing-cc-exp* Credit card expiration.
Format: MMYY
billing-account-name** The name on the customer's ACH Account.
billing-account-number** The customer's bank account number.
billing-routing-number** The customer's bank routing number.
billing-cvv Card security code.
billing-track-1*** Raw magnetic stripe data, track 1.
billing-track-2*** Raw magnetic stripe data, track 2.
billing-track-3*** Raw magnetic stripe data, track 3.
billing-magnesafe-track-1*** Raw MagTek Magensa encrypted reader data.
billing-magnesafe-track-2*** Raw MagTek Magensa encrypted reader data.
billing-magnesafe-track-3*** Raw MagTek Magensa encrypted reader data.
billing-magnesafe-ksn*** Raw MagTek Magensa encrypted reader data.
billing-magnesafe-magneprint-status*** Raw MagTek Magensa encrypted reader data.
billing-social-security-number**** Customer's social security number, checked against bad check writers database if check verification is enabled.
billing-drivers-license-number**** Drivers license number, checked against bad check writers database if check verification is enabled.
billing-drivers-license-dob**** Drivers license date of birth.
billing-drivers-license-state**** Customer's drivers license state.
Format: CC
billing-micr Physical check's Magnetic ink strip, on supported check processors. For use with 'POP' or 'ARC' sec-code.
billing-account-type The customer's ACH account type.
Values: 'checking' or 'savings'
billing-entity-type The customer's ACH account entity.
Values: 'personal' or 'business'
billing-first-name Cardholder's first name. Overwrites value if passed during step one.
billing-last-name Cardholder's last name. Overwrites value if passed during step one.
billing-address1 Cardholder's billing address. Overwrites value if passed during step one.
billing-city Card billing city. Overwrites value if passed during step one.
billing-state Card billing state/province. Overwrites value if passed during step one.
billing-postal Card billing postal code. Overwrites value if passed during step one.
billing-country Card billing country code. Overwrites value if passed during step one.
billing-phone Billing phone number. Overwrites value if passed during step one.
billing-email Billing email address. Overwrites value if passed during step one.
billing-company Cardholder's company. Overwrites value if passed during step one.
billing-address2 Card billing address, line 2. Overwrites value if passed during step one.
billing-fax Billing fax number. Overwrites value if passed during step one.
shipping-first-name Shipping first name. Overwrites value if passed during step one.
shipping-last-name Shipping last name. Overwrites value if passed during step one.
shipping-address1 Shipping address. Overwrites value if passed during step one.
shipping-city Shipping city. Overwrites value if passed during step one.
shipping-state Shipping state/province. Overwrites value if passed during step one.
shipping-postal Shipping postal code. Overwrites value if passed during step one.
shipping-country Shipping country code. Overwrites value if passed during step one.
shipping-phone Shipping phone number. Overwrites value if passed during step one.
shipping-email Shipping email address. Overwrites value if passed during step one.
shipping-company Shipping company. Overwrites value if passed during step one.
shipping-address2 Shipping address, line 2. Overwrites value if passed during step one.
shipping-fax Shipping fax number. Overwrites value if passed during step one.
* Required for keyed credit card transactions.
** Required for ACH transactions.
*** Used for retail transactions. Variables used dependant on swipe device.
**** Required for check verification.
Required for check scanning.

HTML Form Fields Response

Once the Payment Gateway has collected the customer's sensitive payment details, the customer's browser will immediately be redirected back to the redirect-url on your web server. A variable named token-id will be appended to the redirect-url in the GET query string as described below:

https://redirect-url/?token-id=[token]


Collapse Step #2

Step Three
Three-Step: Recurring

Complete Action XML Request

XML Element Description
<complete-action>
api-key* api-key is obtained in the security keys section of the control panel settings.
token-id* Customer payment token returned during step two.
</complete-action>
* Required

Complete Action XML Response

XML Element Description
<response>
result 1=Transaction Approved
2=Transction Declined
3=Error in transaction data or system error
result-text Textual response.
result-code Numeric mapping of processor responses. (See Appendix 3)
action-type Action type that was initially specified.
subscription-id Subscription ID used or created during action.
merchant-defined-field-# Merchant specified custom fields.
<plan>
payments The number of payments before the recurring plan is complete.
Notes: '0' for until canceled
amount The plan amount to be charged each billing cycle.
Format: x.xx
name The display name of the plan.
plan-id The plan ID that is associated with this subscription.
day-frequency How often, in days, to charge the customer. Cannot be set with 'month-frequency' or 'day-of-month'.
month-frequency How often, in months, to charge the customer. Cannot be set with 'day-frequency'. Must be set with 'day-of-month'.
Values: 1 through 24
day-of-month The day that the customer will be charged. Cannot be set with 'day-frequency'. Must be set with 'month-frequency'.
Values: 1 through 31 - for months without 29, 30, or 31 days, the charge will be on the last day
</plan>
<billing> The customer's billing information.
billing-id Billing id used or created for this action.
first-name Cardholder's first name.
last-name Cardholder's last name.
address1 Cardholder's billing address.
city Card billing city.
state Card billing state/province.
Format: CC
postal Card billing postal code.
country Card billing country code.
Format: CC/ISO 3166
phone Billing phone number.
email Billing email address.
company Cardholder's company.
address2 Card billing address, line 2.
fax Billing fax number.
social-security-number Customer's social security number
drivers-license-number Drivers license number.
drivers-license-dob Drivers license date of birth.
drivers-license-state Customer's drivers license state.
Format: CC
cc-number Masked credit card number.
Format: XXXXXX********XXXX
cc-exp Credit card expiration.
Format: MMYY
account-name The name on the customer's bank account.
account-number Masked bank account number.
Format: X****XXXX
routing-number Masked bank routing number.
Format: X****XXXX
account-type The customer's ACH account type.
Values: 'checking' or 'savings'
entity-type The customer's ACH account entity.
Values: 'personal' or 'business'
priority Billing id priority.
Format: Numeric, 1-255
</billing>
<shipping> The customer's shipping information.
shipping-id Shipping id used or created during action.
first-name Shipping first name.
last-name Shipping last name.
address1 Shipping address.
city Shipping city.
state Shipping state/province.
Format: CC
postal Shipping postal code.
country Shipping country code.
Format: CC/ISO 3166
phone Shipping phone number.
email Shipping email address.
company Shipping company.
address2 Shipping address, line 2.
fax Shipping fax number.
priority Shipping id priority.
Format: Numeric, 1-255
</shipping>
</response>
Collapse Step #3

Additional Operations
Three-Step: Recurring

Add Plan XML Request

Element Description
<add-plan> Add a recurring plan that subscriptions can be added to in the future.
api-key* api-key is obtained in the Security Keys section of the Control Panel Settings.
<plan>
payments* The number of payments before the recurring plan is complete.
Notes: '0' for until canceled
amount* The plan amount to be charged each billing cycle.
Format: x.xx
name* The display name of the plan.
plan-id* The unique plan ID that references only this recurring plan.
day-frequency** How often, in days, to charge the customer. Cannot be set with 'month-frequency' or 'day-of-month'.
month-frequency*** How often, in months, to charge the customer. Cannot be set with 'day-frequency'. Must be set with 'day-of-month'.
Values: 1 through 24
day-of-month*** The day that the customer will be charged. Cannot be set with 'day-frequency'. Must be set with 'month-frequency'.
Values: 1 through 31 - for months without 29, 30, or 31 days, the charge will be on the last day
</plan>
</add-plan>
* Always required
** Required unless 'month-frequency' and 'day-of-month' is set.
*** Required unless 'day-frequency' is set.


Delete a Subscription

Element Description
<delete-subscription> Delete the subscription. Customer will no longer be charged.
api-key* api-key is obtained in the Security Keys section of the Control Panel Settings.
subscription-id* The subscription ID that will be deleted.
</delete-subscription>
* Always required
Collapse Additional Operations



Apply for a Merchant Account Signup for the Payment Gateway


Retail & Internet Merchant Accounts

An Internet Merchant Account is sometimes referred to as a "MOTO" (Mail Order & Telephone Order) Account because they all require the ability to process a credit card payment when there is no physical credit card present to be swiped. A standard retail "swipe" merchant account does not allow processing of these "card-not-present" transactions.

View details »

High Risk Merchant Accounts

If the domestic banks are denying your merchant application because they believe your industry is considered high risk, CyoGate can help! We have an offshore network of merchant processing partners that enable us to provide low cost, high risk merchant solutions to a much wider range of businesses and industries.

View details »

Internet Payment Gateway

The CyoGate Internet Payment Gateway offers one of the quickest and most cost effective ways to accept and process credit card and electronic check payments online. Our payment gateway works with most existing merchant accounts and supports hundreds of popular web shopping carts and eCommerce platforms.

View details »