Path: CnPAPI.Engine.Request.Order.
CardHolder.PaymentMethod
Elements:Â
- PaymentType
- CreditCard
- ReferenceTransaction
- Check
- PurchaseOrder
- Invoice
 Schema
    <xsd:element name="PaymentMethod">
           <xsd:complexType>
                 <xsd:sequence>
                       <xsd:element ref="PaymentType"/>
                       <xsd:element ref="CreditCard" minOccurs="0"/>
                       <xsd:element ref="ReferenceTransaction" minOccurs="0"/>
                       <xsd:element ref="Check" minOccurs="0"/>
                       <xsd:element ref="PurchaseOrder" minOccurs="0"/>
                       <xsd:element ref="Invoice" minOccurs="0"/>
                 </xsd:sequence>
           </xsd:complexType>
     </xsd:element>
Example
<PaymentMethod>
<PaymentType>CreditCard</PaymentType>
<CreditCard>
<NameOnCard>John Smith</NameOnCard>
<CardNumber>4111111111111111</CardNumber>
<Cvv2>123</Cvv2>
<ExpirationDate>04/15</ExpirationDate>
</CreditCard>
</PaymentMethod>
PaymentType
In Release 1.x of the API, credit card is the only payment
method allowed. The additional methods
that are available in the payment system will be added in later releases (e.g.
Invoice, Purchase Order).
|
Name
|
PaymentType
|
|
Path
|
CnPAPI.Engine.Request.Order.
CardHolder.PaymentMethod.PaymentType
|
|
Description
|
Payment method used for the
transaction.
|
|
Data Type
|
String
|
|
Range
|
CreditCard,
ReferenceTransaction, Check, PurchaseOrder, Invoice
|
|
Default
|
|
|
Operation
|
Transaction Operation only
|
|
Input/output
|
Input
|
|
Version/Release
|
1.2
|
|
Required
|
yes
|
|
Example
|
<PaymentType>CreditCard</PaymentType>
|
Schema
    <xsd:element name="PaymentMethod">
           <xsd:complexType>
                 <xsd:sequence>
                       <xsd:element ref="PaymentType"/>
                       <xsd:element ref="CreditCard" minOccurs="0"/>
                       <xsd:element ref="ReferenceTransaction" minOccurs="0"/>
                       <xsd:element ref="Check" minOccurs="0"/>
                       <xsd:element ref="PurchaseOrder" minOccurs="0"/>
                       <xsd:element ref="Invoice" minOccurs="0"/>
                 </xsd:sequence>
           </xsd:complexType>
     </xsd:element>
CreditCard
Path: CnPAPI.Engine.Request.Order.CardHolder.PaymentMethod.CreditCard
Elements:
- NameonCard
- CardNumber
- Cvv2
- ExpirationDate
- TrackData
Schema
 <xsd:element name="CreditCard">
           <xsd:complexType>
                 <xsd:sequence>
                       <xsd:element ref="NameOnCard"/>
                       <xsd:element ref="CardNumber"/>
                       <xsd:element ref="Cvv2"/>
                       <xsd:element ref="ExpirationDate"/>
                       <xsd:element ref="TrackData" minOccurs="0"/>
                 </xsd:sequence>
           </xsd:complexType>
 </xsd:element>
NameOnCard
|
Name
|
NameOnCard
|
|
Path
|
CnPAPI.Engine.Request.Order.CardHolder.PaymentMethod.CreditCard.NameonCard
|
|
Description
|
Name as it appears on the credit
card
|
|
Data Type
|
String
|
|
Range
|
Minimum: 2 characters
Maximum: 50 characters
|
|
Default
|
|
|
Operation
|
Transaction Operation only
|
|
Input/output
|
Input
|
|
Version/Release
|
1.2
|
|
Required
|
yes
|
|
Example
|
<NameOnCard>John
Smith</NameOnCard>
|
Schema
    <xsd:element name="NameOnCard">
           <xsd:simpleType>
                 <xsd:annotation>
                       <xsd:documentation>Name as it appears on credit card</xsd:documentation>
                 </xsd:annotation>
                 <xsd:restriction base="xsd:normalizedString">
                       <xsd:minLength value="2"/>
                       <xsd:maxLength value="50"/>
                 </xsd:restriction>
           </xsd:simpleType>
     </xsd:element>
CardNumber
|
Name
|
CardNumber
|
|
Path
|
CnPAPI.Engine.Request.Order.CardHolder.PaymentMethod.CreditCard.CardNumber
|
|
Description
|
Credit card number to be
charged. Use 4111111111111111 if
transacting in Test mode.
|
|
Data Type
|
String
|
|
Range
|
Minimum: 15 digits
Maximum: 17 digits
|
|
Default
|
|
|
Operation
|
Transaction Operation only
|
|
Input/output
|
Input
|
|
Version/Release
|
1.2
|
|
Required
|
yes
|
|
Example
|
<CardNumber>4111111111111111</CardNumber>
|
Schema
<xsd:element name=
"CardNumber"
>
<xsd:simpleType
>
<xsd:annotation
>
<xsd:documentation>
Credit card number to be
charged. Use 4111111111111111 if
transacting in Test mode.</xsd:documentation
>
</xsd:annotation
>
<xsd:restriction base=
"xsd:string"
>
<xsd:minLength value=
"15"
/>
<xsd:maxLength value=
"17"
/>
</xsd:restriction
>
</xsd:simpleType
>
</xsd:element>
Cvv2
|
Name
|
Cvv2
|
|
Path
|
CnPAPI.Engine.Request.Order.CardHolder.PaymentMethod.CreditCard.
Cvv2
|
|
Description
|
Card verification number or
security code on the back of the credit card. Use 123 if transacting in Test mode.
|
|
Data Type
|
String
|
|
Range
|
Minimum: 1 digit
Maximum: 4 digits
|
|
Default
|
|
|
Operation
|
Transaction Operation only
|
|
Input/output
|
Input
|
|
Version/Release
|
1.2
|
|
Required
|
yes
|
|
Example
|
<Cvv2>123</Cvv2>
|
Schema
<xsd:element name=
"Cvv2"
>
<xsd:simpleType
>
<xsd:annotation
>
<xsd:documentation>
Card verification number or security
code on the back of the credit card. Use
123 if transacting in Test mode.</xsd:documentation
>
</xsd:annotation
>
<xsd:restriction base=
"xsd:string"
>
<xsd:minLength value=
"0"
/>
<xsd:maxLength value=
"4"
/>
</xsd:restriction
>
</xsd:simpleType
>
</xsd:element>
ExpirationDate
|
Name
|
ExpirationDate
|
|
Path
|
CnPAPI.Engine.Request.Order.CardHolder.PaymentMethod.CreditCard.ExpirationDate
|
|
Description
|
Credit card expiration
date. Use any date in future if
transacting in Test mode.
|
|
Data Type
|
DateTime
|
|
Range
|
mm/yy format
|
|
Default
|
|
|
Operation
|
Transaction Operation only
|
|
Input/output
|
Input
|
|
Version/Release
|
1.2
|
|
Required
|
yes
|
|
Example
|
<ExpirationDate>04/09</ExpirationDate>
|
Schema
<xsd:element name=
"ExpirationDate"
>
<xsd:simpleType
>
<xsd:annotation
>
<xsd:documentation>
Credit
card expiration date. Use any date in
future if transacting in Test mode.</xsd:documentation
>
</xsd:annotation
>
<xsd:restriction base=
"xsd:string"
>
<xsd:pattern value=
"[0-9][0-9]/[0-9][0-9]"
/>
</xsd:restriction
>
</xsd:simpleType
>
</xsd:element>
Track Data
Name | Track Data |
Path | CnPAPI.Engine.Request.Order.CardHolder.PaymentMethod.CreditCard.TrackData |
Description | Track data information from the credit card reader |
Data Type | Text |
Range | Minimum: 43 Characters Maximum: 226 Characters |
Default |
|
Operation | Transaction Operation only |
Input/output | Input |
Version/Release | 1.2 |
Required | No |
Example | <TrackData>´111111111111111^SIMPSON/HOMER       ^1612101106840000228000000?;4111111111111111=16121011068422800000?</TrackData> |
Schema
    <xsd:element name="TrackData">
           <xsd:simpleType>
                 <xsd:annotation>
                       <xsd:documentation></xsd:documentation>
                 </xsd:annotation>
                 <xsd:restriction base="xsd:string">
                       <xsd:minLength value="43"/>
                       <xsd:maxLength value="226"/>
                 </xsd:restriction>
           </xsd:simpleType>
     </xsd:element>
ReferenceTransaction
Path: CnPAPI.Engine.Request.Order.CardHolder.PaymentMethod.
ReferenceTransaction
Elements:
Schema
<xsd:element name=
"ReferenceTransaction"
>
<xsd:complexType
>
<xsd:sequence
>
<xsd:element ref=
"OrderNumber"
/>
<xsd:element ref=
"VaultGUID"
/>
</xsd:sequence
>
</xsd:complexType
>
</xsd:element>
OrderNumber
|
Name
|
OrderNumber
|
|
Path
|
CnPAPI.Engine.Request.Order.CardHolder.PaymentMethod.
ReferenceTransaction. OrderNumber
|
|
Description
|
Prior transactions’ order number
|
|
Data Type
|
String
|
|
Range
|
36 characters [value as provided
by previous transaction]
|
|
Default
|
|
|
Operation
|
Transaction Operation only
|
|
Input/output
|
Input
|
|
Version/Release
|
2.14
|
|
Required
|
No
|
|
Example
|
<OrderNumber>
e5ea0f30-8556-42b7-a532-517957d5f1a8</OrderNumber>
|
Schema
<xsd:element name=
"OrderNumber"
>
<xsd:simpleType
>
<xsd:annotation
>
<xsd:documentation
/>
</xsd:annotation
>
<xsd:restriction base=
"xsd:normalizedString"
>
<xsd:maxLength value=
"36"
/>
</xsd:restriction
>
</xsd:simpleType
>
</xsd:element>
VaultGUID
|
Name
|
VaultGUID
|
|
Path
|
CnPAPI.Engine.Request.Order.CardHolder.PaymentMethod.
ReferenceTransaction. VaultGUID
|
|
Description
|
Prior transactions’ VaultGUID
|
|
Data Type
|
String
|
|
Range
|
36 characters [value as provided
by previous transaction]
|
|
Default
|
|
|
Operation
|
Transaction Operation only
|
|
Input/output
|
Input
|
|
Version/Release
|
2.14
|
|
Required
|
No
|
|
Example
|
<VaultGUID>GUID as
reported by previous transaction</VaultGUID>
|
Schema
<xsd:element name=
"VaultGUID"
>
<xsd:simpleType
>
<xsd:annotation
>
<xsd:documentation
/>
</xsd:annotation
>
<xsd:restriction base=
"xsd:normalizedString"
>
<xsd:length value=
"36"
/>
</xsd:restriction
>
</xsd:simpleType
>
</xsd:element>
Check
Path: CnPAPI.Engine.Request.Order.CardHolder.PaymentMethod. Check
Elements:
Schema
<xsd:element name=
"Check"
>
<xsd:complexType
>
<xsd:sequence
>
<xsd:element ref=
"AccountNumber"
/>
<xsd:element ref=
"AccountType "
/>
<xsd:element ref=
"RoutingNumber"
/>
<xsd:element ref=
"CheckNumber"
/>
<xsd:element ref=
"CheckType"
/>
<xsd:element ref=
"NameOnAccount" minOccurs="0"
/>
<xsd:element ref=
"IdType" minOccurs="0"
/>
<xsd:element ref=
"IdNumber" minOccurs="0"
/>
<xsd:element ref=
"IdStateCode" minOccurs="0"
/>
</xsd:sequence
>
</xsd:complexType
>
</xsd:element>
AccountNumber
|
Name
|
AccountNumber
|
|
Path
|
CnPAPI.Engine.Request.Order.CardHolder.PaymentMethod.
Check. AccountNumber
|
|
Description
|
Payee’s bank account number
|
|
Data Type
|
String
|
|
Range
|
Minimum: 1 character
Maximum: 17 characters
|
|
Default
|
|
|
Operation
|
Transaction Operation only
|
|
Input/output
|
Input
|
|
Version/Release
|
2.14
|
|
Required
|
No
|
|
Example
|
<AccountNumber
>123456789</ AccountNumber >
|
Schema
<xsd:element name=
"AccountNumber"
>
<xsd:simpleType
>
<xsd:annotation
>
<xsd:documentation
/>
</xsd:annotation
>
<xsd:restriction base=
"xsd:normalizedString"
>
<xsd:minLength value=
"1"
/>
<xsd:maxLength value=
"17"
/>
</xsd:restriction
>
</xsd:simpleType
>
</xsd:element>
AccountType
|
Name
|
AccountType
|
|
Path
|
CnPAPI.Engine.Request.Order.CardHolder.PaymentMethod.
Check. AccountType
|
|
Description
|
Type of account
|
|
Data Type
|
String
|
|
Range
|
SavingsAccount, CheckingAccount
|
|
Default
|
|
|
Operation
|
Transaction Operation only
|
|
Input/output
|
Input
|
|
Version/Release
|
2.14
|
|
Required
|
No
|
|
Example
|
<AccountType>CheckingAccount</AccountType>
|
Schema
<xsd:element name=
"CheckType"
>
<xsd:simpleType
>
<xsd:annotation
>
<xsd:documentation
/>
</xsd:annotation
>
<xsd:restriction base=
"xsd:normalizedString"
>
<xsd:enumeration value=
"Company"
/>
<xsd:enumeration value=
"Personal"
/>
</xsd:restriction
>
</xsd:simpleType
>
</xsd:element>
RoutingNumber
|
Name
|
RoutingNumber
|
|
Path
|
CnPAPI.Engine.Request.Order.CardHolder.PaymentMethod.
Check. RoutingNumber
|
|
Description
|
Bank routing number
|
|
Data Type
|
String
|
|
Range
|
Maximum 9 characters
|
|
Default
|
|
|
Operation
|
Transaction Operation only
|
|
Input/output
|
Input
|
|
Version/Release
|
2.14
|
|
Required
|
No
|
|
Example
|
<RoutingNumber>123456789</RoutingNumber>
|
Schema
<xsd:element name=
"RoutingNumber"
>
<xsd:simpleType
>
<xsd:annotation
>
<xsd:documentation
/>
</xsd:annotation
>
<xsd:restriction base=
"xsd:normalizedString"
>
<xsd:length value=
"9"
/>
</xsd:restriction
>
</xsd:simpleType
>
</xsd:element>
CheckNumber
|
Name
|
CheckNumber
|
|
Path
|
CnPAPI.Engine.Request.Order.CardHolder.PaymentMethod.
Check. CheckNumber
|
|
Description
|
Check number
|
|
Data Type
|
String
|
|
Range
|
Maximum 10 characters
|
|
Default
|
|
|
Operation
|
Transaction Operation only
|
|
Input/output
|
Input
|
|
Version/Release
|
2.14
|
|
Required
|
No
|
|
Example
|
<CheckNumber>12345</CheckNumber>
|
Schema
<xsd:element name=
"CheckNumber"
>
<xsd:simpleType
>
<xsd:annotation
>
<xsd:documentation
/>
</xsd:annotation
>
<xsd:restriction base=
"xsd:normalizedString"
>
<xsd:maxLength value=
"10"
/>
</xsd:restriction
>
</xsd:simpleType
>
</xsd:element>
CheckType
|
Name
|
CheckType
|
|
Path
|
CnPAPI.Engine.Request.Order.CardHolder.PaymentMethod.
Check. CheckType
|
|
Description
|
Type of account
|
|
Data Type
|
String
|
|
Range
|
Company, Personal
|
|
Default
|
|
|
Operation
|
Transaction Operation only
|
|
Input/output
|
Input
|
|
Version/Release
|
2.14
|
|
Required
|
No
|
|
Example
|
<CheckType
>Personal</CheckType>
|
Schema
<xsd:element name=
"CheckType"
>
<xsd:simpleType
>
<xsd:annotation
>
<xsd:documentation
/>
</xsd:annotation
>
<xsd:restriction base=
"xsd:normalizedString"
>
<xsd:enumeration value=
"Company"
/>
<xsd:enumeration value=
"Personal"
/>
</xsd:restriction
>
</xsd:simpleType
>
</xsd:element
>
NameonAccount
The following nodes are required for ACH transactions
through the Global Payments gateways and will be ignored for TSYS,
ClearCommerce, and Authorize.NET
|
Name
|
NameonAccount
|
|
Path
|
CnPAPI.Engine.Request.Order.CardHolder.PaymentMethod.
Check. NameonAccount
|
|
Description
|
Name as it appears for the
account
|
|
Data Type
|
String
|
|
Range
|
Minimum: 0 character
Maximum: 100 characters
|
|
Default
|
|
|
Operation
|
Transaction Operation only
|
|
Input/output
|
Input
|
|
Version/Release
|
2.21
|
|
Required
|
No
|
|
Example
|
<NameonAccount>John
Smith</NameonAccount>
|
Schema
<xsd:element name=
"NameOnAccount"
>
<xsd:simpleType
>
<xsd:annotation
>
<xsd:documentation
/>
</xsd:annotation
>
<xsd:restriction base=
"xsd:normalizedString"
>
<xsd:maxLength value=
"100"
/>
</xsd:restriction
>
</xsd:simpleType
>
</xsd:element>
IdType
|
Name
|
IdType
|
|
Path
|
CnPAPI.Engine.Request.Order.CardHolder.PaymentMethod.
Check. IdType
|
|
Description
|
Type of ID used
|
|
Data Type
|
String
|
|
Range
|
Minimum: 0 character
Values: Driver, Military, State
|
|
Default
|
|
|
Operation
|
Transaction Operation only
|
|
Input/output
|
Input
|
|
Version/Release
|
2.21
|
|
Required
|
No
|
|
Example
|
<IdType>Driver</IdType>
|
Schema
<xsd:element name=
"IdType"
>
<xsd:simpleType
>
<xsd:annotation
>
<xsd:documentation
/>
</xsd:annotation
>
<xsd:restriction base=
"xsd:normalizedString"
>
<xsd:enumeration value=
"Driver"
/>
<xsd:enumeration value=
"Military"
/>
<xsd:enumeration value=
"State"
/>
</xsd:restriction
>
</xsd:simpleType
>
</xsd:element
>
IdNumber
|
Name
|
IdNumber
|
|
Path
|
CnPAPI.Engine.Request.Order.CardHolder.PaymentMethod.
Check. IdNumber
|
|
Description
|
ID number, e.g. Driver license
number
|
|
Data Type
|
String
|
|
Range
|
Minimum: 0 character
Maximum: 30 characters
|
|
Default
|
|
|
Operation
|
Transaction Operation only
|
|
Input/output
|
Input
|
|
Version/Release
|
2.21
|
|
Required
|
No
|
|
Example
|
<IdNumber>Driver</IdNumber>
|
Schema
<xsd:element name=
"IdNumber"
>
<xsd:simpleType
>
<xsd:annotation
>
<xsd:documentation
/>
</xsd:annotation
>
<xsd:restriction base=
"xsd:normalizedString"
>
<xsd:maxLength value=
"30"
/>
</xsd:restriction
>
</xsd:simpleType
>
</xsd:element>
IdStateCode
|
Name
|
IdStateCode
|
|
Path
|
CnPAPI.Engine.Request.Order.CardHolder.PaymentMethod.
Check. IdStateCode
|
|
Description
|
The state where the ID has been
issued
|
|
Data Type
|
String
|
|
Range
|
Minimum: 0 character
Maximum: 3 characters
|
|
Default
|
|
|
Operation
|
Transaction Operation only
|
|
Input/output
|
Input
|
|
Version/Release
|
2.21
|
|
Required
|
No
|
|
Example
|
<IdStateCode>VA</IdStateCode>
|
Schema
<xsd:element name=
"IdStateCode"
>
<xsd:simpleType
>
<xsd:annotation
>
<xsd:documentation
/>
</xsd:annotation
>
<xsd:restriction base=
"xsd:normalizedString"
>
<xsd:maxLength value=
"3"
/>
</xsd:restriction
>
</xsd:simpleType
>
</xsd:element
>