[go: up one dir, main page]

0% found this document useful (0 votes)
136 views47 pages

API-NeoGatewayReferenceGuide v2.1 wISP

The document provides information about making transactions using the Neo Gateway API. It describes two methods for communicating with the API - HTTP GET/POST and web services (XML/SOAP). It includes details on transaction types, required parameters, sample requests and responses, and error codes. Common transaction flows are also illustrated for standard and verified by Visa transactions.

Uploaded by

juan pablo lopez
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
136 views47 pages

API-NeoGatewayReferenceGuide v2.1 wISP

The document provides information about making transactions using the Neo Gateway API. It describes two methods for communicating with the API - HTTP GET/POST and web services (XML/SOAP). It includes details on transaction types, required parameters, sample requests and responses, and error codes. Common transaction flows are also illustrated for standard and verified by Visa transactions.

Uploaded by

juan pablo lopez
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 47

1

Table of Contents
Introduction .................................................................................................................................................. 3
VBV Transaction ........................................................................................................................................ 4
Difference between VBV Transaction and Simple Transaction ................................................................ 5
Getting Started.............................................................................................................................................. 6
Transaction Types ......................................................................................................................................... 7
Communicating Using HTTP GET/POST .................................................................................................... 8
Parameters ............................................................................................................................................ 8
Sample Transaction Requests with HTTP Get/Post ............................................................................ 10
Response Protocol (HTTPS) ................................................................................................................. 18
Communicating Using Web Service (XML/SOAP) ................................................................................... 19
Parameters .......................................................................................................................................... 19
EMV Parameters: ................................................................................................................................ 22
Industry Specific Parameters: ............................................................................................................. 22
Sample Transaction Requests with Web Service (XML/SOAP) ........................................................... 26
Response Protocol (XML/SOAP) ......................................................................................................... 35
Accessing the Web Service ................................................................................................................. 36
Card Entry Method Codes ....................................................................................................................... 37
Terminal Capability Codes ...................................................................................................................... 37
Account Type .......................................................................................................................................... 37
Response codes....................................................................................................................................... 38
Appendix A .................................................................................................................................................. 46
VBV Sample Verification Screen ............................................................................................................. 46

2
Introduction
This document is a reference point for general information on the Neo Gateway API service.
One of the following process can be used to process a transaction.

In a typical Neo Gateway usage scenario, a merchant captures the card information from the
user and sends that information to the Neo Gateway. The transaction usually follows the
pattern illustrated in the image below:

In order to be processed properly, all transactions are required to be in a proper format. This
document is intended to help you in understanding the proper format of transactions to be
submitted to Neo Gateway.

3
VBV Transaction
3DSecure is a process that allows a card holder to authenticate himself while making an online payment.
The implementation of 3D Secure by Visa is called Verified by Visa (VBV).

The VBV transaction usually follows the pattern illustrated in the image below:

1. At merchant’s payment page, the customer clicks the “Process” button after entering the credit
card information (card number/expiration/amount etc.)
2. On click of the Process button, the merchant creates a POST request (using the card
information) and redirects the customer’s browser to Neo Gateway payment URL.
For Details, check Sample Transaction Requests with HTTP Get/Post.
3. In the POST request, the merchant also includes Return URL parameter. This is the URL where
the customer would eventually be returned.
4. VBV verification screen would display. For details, see VBV Sample Verification Screen.
5. Customer enters the password, and clicks continue, Neo Gateway would try to process the
transaction.
6. After processing the transaction, the customer is redirected back to the Return URL (that the
merchant provided earlier), with the response and reference code for the transaction.

4
7. Based on preference and the response sent by Neo Gateway, merchant’s page could show a
success or failure message.

Difference between VBV Transaction and Simple Transaction


For VBV transactions, the message creation procedure is essentially the same with following marked
differences:

✓ VBV transactions only support GET/POST method of communicating with Neo Gateway (POST is
the preferred mode).
✓ VBV transactions request cannot be an internal request from the webserver. i.e. The merchant
has to actually redirect the customer’s browser to Neo Gateway transaction URL.
✓ For VBV transaction, “Return URL” is the compulsory parameter, which is sent as part of the
request message.

5
Getting Started
Based on your application setup and preference, you may choose to send the transaction
information to Neo Gateway by using one of the following methods:

• HTTP Get/Post or
• Web Service

Even though the method of communication affects the programming on your end, it doesn’t
have any impact on the internal validation and processing of Neo Gateway.
After you decide the way you wish to communicate, you would need to use one of the
following URLs to communicate with Neo Gateway:
URL Used for Web Service
URL for Test API = https://gatewaysandbox.merchantprocess.net/neogateway.asmx
URL for Production = https://gateway.merchantprocess.net/v2/neogateway.asmx

URL Used for HTTP Get/Post


URL for Test API = https://gatewaysandbox.merchantprocess.net/transaction.aspx
URL for Production = https://gateway.merchantprocess.net/v2/transaction.aspx

Wherever the notation [URL] is used, you may substitute this with the one you are using
for test/production.

Neo Gateway waits up to 30 seconds for a response from the network. Your process
should accommodate patience periods of at least 45 seconds to receive a response.

Important Information:
The IP of the computer used to submit transactions must be registered in NeoGateway system.
Do not confuse this with the client IP which is the IP of the Cardholder‘s machine that is
effecting the purchase.

Transactions can only be generated by the approved web-site. Multiple web-sites may submit
transactions through a common portal but each website must be individually approved for
processing using the portal’s IP(s).

6
Transaction Types
Neo Gateway API supports the following transaction types:

Sale
The Sale transaction is used for immediate purchase of goods or services. The sale transaction charges
the specified amount against the account.

PreAuthorization
The PreAuthorization transaction authorizes a specified amount for a transaction and places a hold on
the card holders account equal to the transaction amount for a limited time. Depending on the
cardholder’s issuing bank, the reserve can be in place for several days. In order to capture this reserve,
the merchant needs to invoke the Adjustment transaction type.

Adjustment
The Adjustment transaction captures a previously authorized transaction (PreAuthorization) that is
pending settlement and submits it for clearing and settlement.

Void
The Void transaction prevents an approved transaction from being settled. This transaction type must
be invoked if the merchant wishes to cancel the transaction within hours of transaction request. Void
transaction is only applicable on a transaction if it is not settled yet (it usually takes few hours for the
transaction to be set as settled in the banking system).

Credit
The Credit transaction is used to refund a specified amount to the card holder’s account. This can only
be applied after the transaction has been settled (Usually after one day of the creation of transaction).

Rebill
The Rebill transaction allows the submission of recurring charges. The Rebill transaction charges the
customer's payment account using details from the Initial transaction and prolongs the period for
maintaining the payment account details in the system.

7
Communicating Using HTTP GET/POST
Parameters
Parameters are parts of information that the merchant would send or expect to receive from the
gateway page. The level of integration and programming effort on the merchant’s side varies on the
type of parameters selected.

Based on a transaction’s needs, the Neo Gateway may expect the following parameters via HTTP
GET/POST method:

Field Description Length

AccCode 10 character string unique to Max: 10


merchant.
ProcCode Code defining the type of Max: 6
transaction. For Sales the processing
code is 000000.
Merchant This is the merchant id provided by Max: 30
the bank and must be used for all
defined terminals.
Terminal Identifier of a Terminal from where Max: 30
transactions originated.
CardNumber Card number for the transaction. No Min: 13, Max: 20
field separators or blank spaces are
allowed, just the number.
Expiration Credit card expiration date, in the Min: 3
format mmyy.
Amount The transaction amount. Max: 12
Format: nnnnnnn.nn, which can be a
number up to length 12, no
thousands separators and only two
decimal spaces.
CurrencyCode ISO code that represents the Max: 3
currency being used. (840 = US
Dollar)
Cardholder Card holder name, this is the name Max: 150
of the client that is written on the
front of the card. Any string of
alphanumeric characters up to 150
positions is allowed.
cvv2 This is the last set numbers printed Max: 4
on the signature strip on the back of
the card.
Ship_address Street name or number Max: 150
Ship_city City Max: 100
Ship_country Country code (Use list of countries Max: 3
from ISO 3166 specification)

8
Ship_state State Max: 100
Ship_zip_code postal Code Max: 11
Ship_phone_nu Contact Phone number Max: 20
mber
Bill_address Street name or number Max: 150
Bill_city City Max: 100
Bill_country Country code (Use list of countries Max: 3
from ISO 3166 specification)
Bill_state State Max: 100
Bill_zip_code Postal Code Max: 11
Bill_phone_ Contact Phone number Max: 20
number
SiteIP IP address of the client’s computer Max: 18
where the transaction was
originated.
email: Email address of the client Max: 256
Tracking You can use this parameter to attach Max: 50
an internal reference of the
transaction. Any string of
alphanumeric characters up to 50
positions is allowed.
Ballot This is a nine digit number generated
in response to the original
transaction. This number must be
stored by the merchant at the time
of the original transaction.

This group of entries will repeat for all the items that comprise the purchase:

Field Description Length


GenericName(n) Generic Name of Product Max: 50
(NitroPlus, Ibuprofen)
ProdDescription(n) Description of Product on Website Max: 50
UnitPrice(n) Price per Unit Max: 12
Quantity (n) Units sold to client
Charge(n) Total charge for units sold Max: 12
ProdCode(n) Product code Max: 10

9
Sample Transaction Requests with HTTP Get/Post
The following section describes how you can perform various transactions using HTTP GET/POST
method.

Sale

Field Description Required


Return URL Sent as a part of request message for VBV Transaction Required
only.
AccessCode 10 character string unique to merchant. Optional
Merchant This is the merchant id provided by the bank and must Required
be used for all defined terminals.
Terminal Identifier of a Terminal from where transactions Required
originated.
CardNumber Card number for the transaction. No field separators Required
or blank spaces are allowed, just the number.
Expiration Credit card expiration date, in the format mmyy. Required
Amount The transaction amount. Required
Format: nnnnnnn.nn, which can be a number up to
length 12, no thousands separators and only two
decimal spaces.
CurrencyCode ISO code that represents the currency being used. Required
(840 = US Dollar)
Cardholder Card holder name, this is the name of the client that is Required
written on the front of the card. Any string of
alphanumeric characters up to 150 positions is
allowed.
cvv2 This is the last set numbers printed on the signature Required
strip on the back of the card.
Tracking You can use this parameter to attach an internal Required
reference of the transaction. Any string of
alphanumeric characters up to 50 positions is allowed.

Ship_address Street name or number Optional


Ship_city City Optional
Ship_country Country code (Use list of countries from ISO 3166 Optional
specification)
Ship_state State Optional
Ship_zip_code postal Code Optional
Ship_phone_number Contact Phone number Optional
Bill_address Street name or number Optional
Bill_city City Optional
Bill_country Country code (Use list of countries from ISO 3166 Optional
specification)
Bill_state State Optional
Bill_zip_code Postal Code Optional

10
Bill_phone_ number Contact Phone number Optional
SiteIPAddress IP address of the client’s computer where the Optional
transaction was originated.
Email Email address of the client Optional

This group of entries will repeat for all the items that comprise the purchase

Field Description Required


ProdCode(n) Product code Optional
Description(n) Description of Product on Website Optional
GenericName(n) Generic Name of Product (NitroPlus, Ibuprofen) Optional

UnitPrice(n) Price per Unit Optional


Quantity (n) Units sold to client Optional

Example (HTTP POST)

[URL]/transaction.aspx?AccCode=89M045R43E&procCode=000000&merchant=999999999&terminal=D
EMO0001&cardNumber=4111111111111111&expiration=1214&amount=34.00&currencyCode=840&ca
rdHolder=cardholdername&cvv2=700&SiteIPAddress=225.224.225.224&email=joe@hotmail.com

Based on the nature of the order following may be appended to the request string more than one time
(subsequently with an incremented number, for example a product with Description1, Name1…
followed by a product with Description2, Name2 and so on):

&Description1=Bayer&Name1=Aspirin&Quantity1=10&UnitPrice1=1.00&Description2=MenPlus&Name2
=NitroPlus&Quantity2=20&UnitPrice2=25.00&Description3=Tax&Name3=Tax&Quantity3=1&
UnitPrice=3.00&Description4=Shipping& Name4=Shipping&Quantity4=1&UnitPrice4=5.00

The total for these line items is 34.00 this should match the amount of the
transaction submitted. The Generic Name must be included in the list of pre-
approved items sold by the merchant.

11
PreAuthorization
It is used in conjunction with a subsequent adjustment to complete a sale.

Required Fields

Field Description Required


Return URL Sent as a part of request message for VBV Transaction only. Required
ProcCode For Pre–Authorizations the processing code is 300000. Required
Merchant This is the merchant id provided by the bank and must be Required
used for all terminals defined.
Terminal Identifier of a Terminal from where transactions originated. Required
CardNumber Card number for the transaction. No field separators or Required
blank spaces are allowed, just the number.
Expiration Credit card expiration date, in the format mmyy Required
Amount The transaction amount. Required
Format: nnnnnnn.nn, which can be a number up to length
12, no thousands separators and only two decimal spaces.
CurrencyCode ISO code that represents the currency being used. (840 = US Required
Dollar)
Cardholder Card holder name, this is the name of the client that is Required
written on the front of the card. Any string of alphanumeric
characters up to 150 positions is allowed.
cvv2 This is the last set numbers printed on the signature strip on Required
the back of the card.
Ship_address Street name or number Required
Ship_city City Required
Ship_country Country code (Use list of countries from ISO 3166 Required
specification)
Ship_state State Required
Ship_zip_code postal Code Required
Ship_phone_number Contact Phone number Required
Bill_address Street name or number Required
Bill_city City Required
Bill_country Country code (Use list of countries from ISO 3166 Required
specification)
Bill_state State Required
Bill_zip_code Postal Code Required
Bill_phone_ number Contact Phone number Required
SiteIPAddress IP address of the client’s computer where the transaction Required
was originated.
Email Email address of the client Required
Tracking You can use this parameter to attach an internal reference of Required
the transaction. Any string of alphanumeric characters up to
50 positions is allowed.

12
The following entries will repeat for all the items that comprise the purchase.

Field Description
ProdCode(n) Product code
Description(n) Description of Product on Website
GenericName(n) Generic Name of Product (NitroPlus, Ibuprofen)
UnitPrice(n) Price per Unit

Example (HTTP POST)

[URL]/transaction.aspx?procCode=300000&merchant=999999999&terminal=DEMO0001&cardNumber=
4111111111111111&expiration=1214&amount=34.00&currencyCode=840&cardHolder=usuario+de+pr
ueba&cvv2=700&Tracking=Prea100&SiteIPAddess=225.224.225.224&email=joe@hotmail.com

Based on the nature of the order following may be appended to the request string more than one time
(subsequently with an incremented number, for example a product with Description1, Name1…
followed by a product with Description2, Name2 and so on):

&ProdDescription1=Bayer&GenericName1=Aspirinr&Quantity1=10&Charge1=1.00&ProdDescription2=
MenPlus&GenericName2=NitroPlus&Quantity2=20&Charge2=25.00
& ProdDescription3=Tax&GenericName3=Tax&Quantity3=1&
Charge3=3.00&ProdDescription4=Shipping&GenericName4=Shipping&Quantity4=1&Charge4=5.00

The total for these line items is 34.00 this should match the amount of the transaction
submitted. The Generic Name must be included in the list of pre-approved items sold by
the merchant.

13
Adjustment
Adjustments can only be submitted by the same merchant who did the associated preauthorization.

Required Fields

Field Description Required


ProcCode For Adjustments the processing code is 290000 Required
Merchant This is the merchant id provided by the bank and must be used for Required
all terminals defined.
Terminal Identifier of a Terminal from where transactions originated. Required
Ballot This is a nine digit number generated in response to the original Required
transaction. This number must be stored by the merchant at the
time of the original transaction
CardNumber Card number for the transaction. No field separators or blank Optional
spaces are allowed, just the number.
Expiration Credit card expiration date, in the format mmyy Optional
Amount The transaction amount. Optional
Format: nnnnnnn.nn, which can be a number up to length 12, no
thousand separators and only two decimal spaces.
CurrencyCode ISO code that represents the currency being used. (840 = US Optional
Dollar)
Cardholder Card holder name, this is the name of the client that is written on Optional
the front of the card. Any string of alphanumeric characters up to
150 positions is allowed.
Tracking You can use this parameter to attach an internal reference of the Optional
transaction. Any string of alphanumeric characters up to 50
positions is allowed.

Example (HTTP POST)

[URL]/transaction.aspx?procCode=290000&merchant=999999999&terminal=DEMO0001&Ballot=12345
6789&Tracking=ADJ20100

14
Void
To submit a VOID only proccode, merchant, terminal and the ballot number of the corresponding
transaction (000000) are required.

Required Fields

Field Description Required


ProcCode For Void the processing code is 220000. Required
Merchant This is the merchant id provided by the bank and must be used Required
for all terminals defined.
Terminal Identifier of a Terminal from where transactions originated. Required
Ballot This is a nine digit number generated in response to the original Required
transaction. This number must be stored by the merchant at the
time of the original transaction.
CardNumber Card number for the transaction. No field separators or blank Optional
spaces are allowed, just the number.
Expiration Credit card expiration date, in the format mmyy Optional
Amount The transaction amount. Optional
Format: nnnnnnn.nn, which can be a number up to length 12,
no thousands separators and only two decimal spaces.
CurrencyCode ISO code that represents the currency being used. (840 = US Optional
Dollar)
Cardholder Card holder name, this is the name of the client that is written Optional
on the front of the card. Any string of alphanumeric characters
up to 150 positions is allowed.
cvv2 This number can be located on the back of the card, after the Optional
credit card number.
Tracking You can use this parameter to attach an internal reference of Required
the transaction. Any string of alphanumeric characters up to 50
positions is allowed.

Example (HTTP POST)

[URL]/transaction.aspx?procCode=220000&merchant=999999999&terminal=DEMO0001&cardNumber=
4111111111111111&expiration=1214&amount=100.50&currencyCode=840&cardHolder=test+user&
&ballot=000000001&Tracking=V01

15
Credit

Required Fields

Field Description Required


ProcCode For Credit the processing code is 200000. Required
Merchant This is the merchant id provided by the bank and must be used for Required
all terminals defined.
Terminal Identifier of a Terminal from where transactions originated. Required
Ballot This is a nine digit number generated in response to the original
transaction. This number must be stored by the merchant at the
time of the original transaction. Credits are granted against a
specific transaction. The sum of those credits cannot exceed the
original transaction amount.
CardNumber Card number for the transaction. No field separators or blank Optional
spaces are allowed, just the number.
Expiration Credit card expiration date, in the format mmyy Optional
Amount The transaction amount. Required
Format: nnnnnnn.nn, which can be a number up to length 12, no
thousands separators and only two decimal spaces.
CurrencyCode ISO code that represents the currency being used. (840 = US Optional
Dollar)
Cardholder Card holder name, this is the name of the client that is written on Optional
the front of the card. Any string of alphanumeric characters up to
150 positions is allowed.
Tracking You can use this parameter to attach an internal reference of the Optional
transaction. Any string of alphanumeric characters up to 50
positions is allowed.

Example (HTTP POST)

[URL]/transaction.aspx?procCode=200000&merchant=999999999&terminal=DEMO0001&cardNumber=
4111111111111111&expiration=1214&amount=100.50&currencyCode=840&cardHolder=test+user
&ballot=000000001&Tracking=C01

16
Rebill

Required Fields

Field Description Required


AccCode 10 character string unique to merchant Optional
ProcCode For Rebill the processing code is 100000. Required
Merchant This is the merchant id provided by the bank and must be used Required
for all terminals defined.
Terminal Identifier of a Terminal from where transactions originated. Required
CardNumber Card number for the transaction. No field separators or blank Required
spaces are allowed, just the number.
Expiration Credit card expiration date, in the format mmyy Required
Amount The transaction amount. Required
Format: nnnnnnn.nn, which can be a number up to length 12,
no thousands separators and only two decimal spaces.
CurrencyCode ISO code that represents the currency being used. (840 = US Required
Dollar)
Cardholder Card holder name, this is the name of the client that is written Required
on the front of the card. Any string of alphanumeric characters
up to 150 positions is allowed.
Tracking You can use this parameter to attach an internal reference of Required
the transaction. Any string of alphanumeric characters up to 50
positions is allowed.

Example (HTTP POST)

[URL]/transaction.aspx?procCode=100000&merchant=999999999&terminal=DEMO0001&cardNumber=
4111111111111111&expiration=1214&amount=100.50&currencyCode=840&cardHolder=test+user&Tra
cking=V01

17
Response Protocol (HTTPS)
In response to the post requests described above, a string of variables separated by ~ is received.
The response to all above-mentioned transaction types are structured as follows:

Parameter Description
Response code Alphanumeric, 3 characters max that represents the final
status of the transaction.
Reference Number Alphanumeric, 12 chars max. This number is the id of the
transaction.
Authorization Number Alphanumeric, 6 chars maximum (generated for internal
purposes).
Time Transaction time, in the format hh/mm/ss
Date Transaction date, in the format mm/dd
Ballot number 9 digit number, a sequential number used for further
transaction indexing. Required if you want to void the
transaction.

Example:
00~012345678901~012345~120000~0505~012345678

18
Communicating Using Web Service (XML/SOAP)
Parameters
All the parameters required for submitting various transactions using web service are listed in the table
below. You can refer this table to view the details of parameters used in your required transaction.

Field Name Description Length


accessCode 10 character string unique to Max: 10
merchant

referenceId The original transaction Id (ballot


number) on which operation is being
performed (relevant in operations
such as VOID, CREDIT, ADJUSTMENT)
merchantAccountNumber Value: Merchant id provided by the Max: 30
bank and must be used for all
terminals defined
terminalName Value: Identifier of a Terminal from Max: 30
where transactions originates
Format:
clientTracking Value: You can use this parameter to Max: 50
attach an internal reference of the
transaction.
Format: Any string of alphanumeric
characters up to 50 positions is
allowed.
cardNumber Value: Card number for the Min: 13, Max: 20
transaction.
Format: No field separators or blank
spaces are allowed.
cardHolder Value: Card holder name Max: 150
Format: Name of the client written
on the front of the card.
cardExpiration Value: Credit card expiration date Min: 4
Format: mmyy
Cvv Value: CVV (Card Verification Value) Max: 4
is a 3 or four digit value printed on
the back of your credit card.
Format: Number
track1 Value: Data in track 1 of card Max: 128
track2 Value: Data in track 2 of card Max: 128
amount Value: The transaction amount. Max: 12
Format: format nnnnnnn.nn, which
can be a number up to 12 digits, no
thousands separators and only two
decimal spaces.

19
currencyCode Value: ISO code that represents the Max: 3
currency being used (e.g USD).
Format: Character String
emailAddress Value: Email address of the client Max: 256
Format: Character String
shippingName Value: Name of person receiving the Max: 100
purchase
Format: Character String
shippingDate Value: Projected date of shipment Min: 10
Format: MM/DD/YYYY
shippingAddress Value: Street name and/or number Max: 150
Format: Character String
shippingCity Value: City Name Max: 100
Format: Character String
shippingState Value: State Name Max: 100
Format: Character String
shippingCountry Value: Country code Max: 3
Note: Use list of countries from ISO
3166 specification
shippingZipCode Value: Postal Code Max: 11
Format: Character String
shippingPhoneNumber Value: Contact Phone number Max: 20
billingAddress Value: Street name and/or number Max: 150
billingCity Value: City Name Max: 100
Format: Character String
billingState Value: State Name Max: 100
Format: Character String
billingCountry Value: Country code Max: 3
Format: Character String
Note: Use list of countries from ISO
3166 specification
billingZipCode Value: Zip code of the billing city Max: 11
Format: Character String
billingPhoneNumber Value: Phone Number Max: 20
Format: Character String
userIPAddress Value: IP address of the computer Max: 18
where the client’s transaction was
originated
Format: Numeric in the following
format: ###.###.###.###
systemTracking Value: Client specific parameter to Max: 20
track transaction.
Format: Any string of alphanumeric
characters up to 20 positions is
allowed.

20
Line Item fields
Filed Name Description Length
Code Merchant internal code for Item Max: 10
Name Generic name of product Max: 50
UnitPrice Price per unit Max: 12
Quantity Units sold to client
Description Description of product on website Max: 50

Additional Data fields


Filed Name Description Length
Name Name of additional property Max: 250
Value Value of property

21
EMV Parameters:
EMV parameters in SOAP webservices are communicated in Additional Data field. Following are the
required properties:

Field Name Description


CARD_ENTRY_MODE This field specifies how card information was entered in the
transaction. According to Iso8583 standard, this is DE 22 -
Subfield 1.
PIN_BLOCK This field contains Online PIN data. According to Iso8583
standard, this is DE 52.
EMV_DATA This field contains request data from the EMV kernel as a
variable list of tags and their data in TLV format. According to
Iso8583 standard, this is DE 55.
Format: Field must be Base64 encoded
PIN_ENRTY_MODE This field describes the capability of the terminal device to
support/accept PIN entry. According to Iso8583 standard, this is
DE 22 - Subfield 2.
ACCOUNT_TYPE Indicates the type of account selected on the terminal.
According to iso8583 standard, this is DE 3 Subfield 2 & 3.

Industry Specific Parameters:


Restaurants:
Field Name Description
BaseAmount The BaseAmount field is a reference field that contains the
base amount which is included in the amount of the
transaction. This field does not get added to the Amount field
during the transaction, it is only referencing the base amount
already included.
Tip The TIP field is a reference field that contains the tip amount
which is included in the amount of the transaction. This field
does not get added to the Amount field during the transaction,
it is only referencing the tip amount already included.
Tax The TAX field is a reference field that contains the tax amount
which is included in the amount of the transaction. This field
does not get added to the Amount field during the transaction,
it is only referencing the tax amount already included.
TAX_EXEMPT The TAX_EXEMPT field is a reference field that contains an
indication as to whether or not the transaction is tax exempt.

22
Airline:

Field Name Description Required


PassengerName The name of the passenger to whom the ticket was issued. Y
Length: 1 - 29
PassengerDescription Description of Passenger or Ticket information N
PassengerServiceClass The service type (such as coach or first class). N
Length: 1
NumberOfAdultsPassenger Total number of adults Y
Length: 1 - 2
NumberOfChildernPassenger Total number of children Y
Length: 1 - 2
TicketNumber The number on the ticket. Y
Length: 1 - 15
IssuingCarrier The standard abbreviation for the airline or railway carrier Y
issuing the ticket.
Length: 1 - 4
CustomerCode The code that the cardholder supplied to the card acceptor. N
Length: 1 - 25
IssueDate The date the ticket was issued to the customer. N
TravelDate Effective ticket date i.e. Departure date Y
TravelAgencyCode A code assigned to the travel agency. N
Length: 1 - 8
TravelAgencyName The name of the travel agency issuing the ticket. N
Length: 1 - 25
FlightNumber The number that the operating or marketing carrier assigned. Y
Length: 1 - 5
DepartureTime The time of departure provided by the airline or railway, per Y
trip leg
Format: HH:mm
ArrivalTime The arrival time provided by the airline or railway, per trip leg. Y
Format: HH:mm
CarrierCode The standard abbreviation for the airline Y
Length: 2
FareBasisCode A code that carriers assign to a particular ticket type, such as Y
business class or discounted/nonrefundable.
Length: 1 - 15
ConjunctionTicket The ticket that contains additional coupons on an itinerary that N
is more than four segments.
Length: 1 - 15
ExchangeTicket The original ticket number replaced by a new ticket number. N
Length: 1 - 15
StopOverCode A code indicating whether there was a direct or a non-direct Y
flight or route on the same ticket number.

23
Length: 1
Format: [0-9], [A-z]
CityofOriginAirportCode The originating airport or railway name’s standard Y
abbreviation.
Length: 1 - 5
CityofDestinationAirportCode The destination airport or railway name’s standard Y
abbreviation.
Length: 1 - 5
TotalFareAmount Total amount of the ticket and should equal the amount of the Y
transaction
TotalFeeAmount Total Fee associated with the ticket N
TotalTaxAmount Total Tax associated with the ticket N
TripLegFareAmount Total Amount of the trip leg associated with the ticket N
TripLegFeeAmount Total Fee of the trip leg associated with the ticket N
TripLegTaxAmount Total Tax of the trip leg associated with the ticket N
Restrictions Restrictions are limitations set on a ticket according to the type N
of fare, such as nonrefundable or three-day minimum stay.
Length: 1 - 20
TotalTaxCollectedIndicator Reflects total sales tax capture and reporting information such N
as whether sales tax was included in the purchase amount or if
goods and services were not taxable.
Format: Y, N, 0
FullVATAmounts The gross amount from which the VAT was calculated, and a N
value added tax at the full tax rate.
HalfVATAmounts The gross amount from which the VAT was calculated and a N
value-added tax at the half tax rate.
TaxExemptIndicator The indicator noting whether the goods or services were tax- N
exempt, or tax was not collected.
Format: 1, 0
RestrictedTicketIndicator The identifier noting that the ticket purchased has some N
restriction associated with its use.
Format: 1, 0
ExchangeTicketAmount The amount of the new ticket purchase on an exchanged N
ticket.
ExchangeFeeAmount The fee amount of the new ticket purchase on an exchanged N
ticket.
TravelAuthorizationCode The code provided by the company to a travel agent N
authorizing ticket issuance.
Length: 1 - 64
IATAClientCode The International Air Transport Association (IATA) code N
identifying the company that purchased the ticket.
Length: 1 - 17
DetailTaxAmount1 Breakdown of Tax Amount into different Tax Type and their N
Rate
DetailTaxAmount2 Breakdown of Tax Amount into different Tax Type and their N
Rate

24
DetailTaxAmount3 Breakdown of Tax Amount into different Tax Type and their N
Rate
DetailTaxAmount4 Breakdown of Tax Amount into different Tax Type and their N
Rate
DetailTaxAmount5 Breakdown of Tax Amount into different Tax Type and their N
Rate
DetailTaxAmount6 Breakdown of Tax Amount into different Tax Type and their
Rate

FullVATAmounts:

Field Name Description Required


FullVATGrossAmount Y
FullVATGrossAmountSign Format: D, C Y
FullVATTaxAmount N
FullVATTaxAmountSign Format: D, C N

HalfVATAmounts:

Field Name Description Required


HalfVATGrossAmount Y
HalfVATGrossAmountSign Format: D, C Y
HalfVATTaxAmount N
HalfVATTaxAmountSign Format: D, C N

DetailTaxAmount[N]:

Field Name Description Required


DetailTaxAmountIndicator[N] Format: Y, N Y
DetailTaxAmount[N] N
DetailTaxRate[N] N
DetailTaxApplied[N] Length: 1- 4 N
DetailTaxTypeIdentifier[N] Format: 00, 01, 02 ,03 ,04, 05, 06, 10, 11, 12, 13, 14, 20, 21, 22 N
CardAcceptorTaxID[N] Length: 1 – 20 N
DetailTaxAmountSign[N] Format: D, C Y

25
Sample Transaction Requests with Web Service (XML/SOAP)
The following section describes how you can perform various transactions using XML/SOAP method.

Sale

Sample Request

<?xml version="1.0" encoding="utf-8"?>


<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<Sale xmlns="http://www.croem.net/neogateway/">
<accessCode>89M045R43E </accessCode>
<merchantAccountNumber>999999999</merchantAccountNumber>
<terminalName>DEMO0001</terminalName>
<clientTracking> V01</clientTracking>
<cardNumber>4111111111111111</cardNumber>
<cardHolder>sarahjones</cardHolder>
<cardExpiration>1214</cardExpiration>
<cvv>700</cvv>
<track1> </track1>
<track2> </track2>
<amount>100.50</amount>
<currencyCode>840</currencyCode>
<emailAddress> joe@hotmail.com </emailAddress>
<shippingName>john&Johnsan</shippingName>
<shippingDate>1213</shippingDate>
<shippingAddress> 350 Fifth Avenue, 34th floor </shippingAddress>
<shippingCity>newyork</shippingCity>
<shippingState>NY</shippingState>
<shippingCountry>USA</shippingCountry>
<shippingZipCode>101188</shippingZipCode>
<shippingPhoneNumber>2123124700</shippingPhoneNumber>
<billingAddress> 51, Avenue Blanc </billingAddress>
<billingCity> newyork </billingCity>
<billingState>NY</billingState>
<billingCountry>USA</billingCountry>
<billingZipCode>3299</billingZipCode>
<billingPhoneNumber>2122103190</billingPhoneNumber>
<userIpAddress>225.224.225.224</userIpAddress>
<itemDetails>
<ItemDetails>
<Code>01A</Code>
<Name>Aspirin</Name>
<Description>Medicine</Description>
<Quantity>100</Quantity>
<UnitPrice>1.0</UnitPrice>
</ItemDetails>
<ItemDetails>
<Code>02A</Code>
<Name>CK</Name>

26
<Description>perfume</Description>
<Quantity>1</Quantity>
<UnitPrice>500.00</UnitPrice>
</ItemDetails>
</itemDetails>
<systemTracking>593d7ef0b5d1c01ac4e36791</systemTracking>
<additionalData>
<AdditionDataDetail>
<Name>CARD_ENTRY_MODE</Name>
<Value>052</Value>
</AdditionDataDetail>
</additionalData>
</Sale>
</soap:Body>
</soap:Envelope>

The placeholders shown need to be replaced with actual values.

Sample Response

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>


<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<SaleResponse xmlns="http://www.croem.net/neogateway/">
<SaleResult>
<TransactionId>13600651</TransactionId>
<OperationType>Sale</OperationType>
<Tracking>Test</Tracking>
<RequestDate>2013-04-24T12:49:10.3809171-04:00</RequestDate>
<ResponseDate>2013-04-24T12:49:15.8802316-04:00</ResponseDate>
<Code>00</Code>
<AuthorizationNumber>847496</AuthorizationNumber>
<ProcessorId>3</ProcessorId>
<Description>Approved</Description>
<Result>00~311416847496~847496~124915~0424~013600651~</Result>
<ReturnURL>string</ReturnURL>
</SaleResult>
</SaleResponse>
</soap:Body>
</soap:Envelope>

27
PreAuthorization
It is used in conjunction with a subsequent adjustment to complete a sale.

Sample Request
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<PreAuthorization xmlns="http://www.croem.net/neogateway/">
<accessCode>89M045R43E </accessCode>
<merchantAccountNumber>999999999</merchantAccountNumber>
<terminalName>DEMO0001</terminalName>
<clientTracking> V01</clientTracking>
<cardNumber>4151611211112111</cardNumber>
<cardHolder>sarahjones </cardHolder>
<cardExpiration>1214</cardExpiration>
<cvv>700</cvv>
<track1> </track1>
<track2> </track2>
<amount>100.00</amount>
<currencyCode>840</currencyCode>
<emailAddress>>joe@hotmail.com</emailAddress>
<shippingName> john&Johnsan</shippingName>
<shippingDate>1213</shippingDate>
<shippingAddress> 350 Fifth Avenue, 34th floor </shippingAddress>
<shippingCity>newyork</shippingCity>
<shippingState>NY</shippingState>
<shippingCountry>USA</shippingCountry>
<shippingZipCode>101188</shippingZipCode>
<shippingPhoneNumber>2123124700</shippingPhoneNumber>
<billingAddress> 51, Avenue Blanc </billingAddress>
<billingCity> newyork </billingCity>
<billingState>NY</billingState>
<billingCountry>USA</billingCountry>
<billingZipCode>3299</billingZipCode>
<billingPhoneNumber>2122103190</billingPhoneNumber>
<userIpAddress>225.224.225.224</userIpAddress>
<systemTracking>593d7ef0b5d1c01ac4e36791</systemTracking>
<additionalData>
<AdditionDataDetail>
<Name>CARD_ENTRY_MODE</Name>
<Value>052</Value>
</AdditionDataDetail>
</additionalData>
</PreAuthorization>
</soap:Body>
</soap:Envelope>

28
Sample Response

<?xml version="1.0" encoding="utf-8"?>


<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<PreAuthorizationResponse xmlns="http://www.croem.net/neogateway/">
<PreAuthorizationResult>
<TransactionId>13600651</TransactionId>
<OperationType>PreAuthorization</OperationType>
<Tracking>Test</Tracking>
<RequestDate>2013-04-24T12:49:10.3809171-04:00</RequestDate>
<ResponseDate>2013-04-24T12:49:15.8802316-04:00</ResponseDate>
<Code>00</Code>
<AuthorizationNumber>847496</AuthorizationNumber>
<ProcessorId>3</ProcessorId>
<Description>Approved</Description>
<Result>00~311416847496~847496~124915~0424~013600651~</Result>
<ReturnURL>string</ReturnURL>
</PreAuthorizationResult>
</PreAuthorizationResponse>
</soap:Body>
</soap:Envelope>

Adjustment

Adjustments can only be submitted by the same merchant who did the associated preauthorization.

Sample Request

<?xml version="1.0" encoding="utf-8"?>


<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<Adjustment xmlns="http://www.croem.net/neogateway/">
<accessCode>89M045R43E </accessCode>
<referenceId>13600651</referenceId>
<merchantAccountNumber>999999999</merchantAccountNumber>
<terminalName>DEMO0001</terminalName>
<clientTracking> V01</clientTracking>
<amount>100.00</amount>
<systemTracking>593d7ef0b5d1c01ac4e36791</systemTracking>
<additionalData>
<AdditionDataDetail>
<Name>CARD_ENTRY_MODE</Name>
<Value>052</Value>
</AdditionDataDetail>

29
</additionalData>
</Adjustment>
</soap:Body>
</soap:Envelope>

Sample Response

<?xml version="1.0" encoding="utf-8"?>


<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<AdjustmentResponse xmlns="http://www.croem.net/neogateway/">
<AdjustmentResult>
<TransactionId>13600651</TransactionId>
<OperationType>Adjustment</OperationType>
<Tracking>V01</Tracking>
<RequestDate>2013-04-24T12:49:10.3809171-04:00</RequestDate>
<ResponseDate>2013-04-24T12:49:15.8802316-04:00</ResponseDate>
<Code>00</Code>
<AuthorizationNumber>847496</AuthorizationNumber>
<ProcessorId>3</ProcessorId>
<Description>Approved</Description>
<Result>00~311416847496~847496~124915~0424~013600651~</Result>
<ReturnURL>string</ReturnURL>
</AdjustmentResult>
</AdjustmentResponse>
</soap:Body>
</soap:Envelope>

Void

Sample Request

<?xml version="1.0" encoding="utf-8"?>


<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<Void xmlns="http://www.croem.net/neogateway/">
<accessCode>89M045R43E </accessCode>
<referenceId>01A</referenceId>
<merchantAccountNumber>999999999</merchantAccountNumber>
<terminalName>DEMO0001</terminalName>
<clientTracking> V01</clientTracking>
<systemTracking>593d7ef0b5d1c01ac4e36791</systemTracking>
<additionalData>
<AdditionDataDetail>
<Name>CARD_ENTRY_MODE</Name>
<Value>052</Value>

30
</AdditionDataDetail>
</additionalData>
</Void>
</soap:Body>
</soap:Envelope>

Sample Response

<?xml version="1.0" encoding="utf-8"?>


<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<VoidResponse xmlns="http://www.croem.net/neogateway/">
<VoidResult>
<TransactionId>13600651</TransactionId>
<OperationType>Void</OperationType>
<Tracking>Test</Tracking>
<RequestDate>2013-04-24T12:49:10.3809171-04:00</RequestDate>
<ResponseDate>2013-04-24T12:49:15.8802316-04:00</ResponseDate>
<Code>00</Code>
<AuthorizationNumber>847496</AuthorizationNumber>
<ProcessorId>3</ProcessorId>
<Description>Approved</Description>
<Result>00~311416847496~847496~124915~0424~013600651~</Result>
<ReturnURL>string</ReturnURL>
</VoidResult>
</VoidResponse>
</soap:Body>
</soap:Envelope>

Credit

Sample Request
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<Credit xmlns="http://www.croem.net/neogateway/">
<accessCode>89M045R43E </accessCode>
<referenceId>13600651</referenceId>
<merchantAccountNumber>999999999</merchantAccountNumber>
<terminalName>DEMO0001</terminalName>
<clientTracking>V01</clientTracking>
<amount>100.50</amount>
<systemTracking>593d7ef0b5d1c01ac4e36791</systemTracking>
<additionalData>

31
<AdditionDataDetail>
<Name>CARD_ENTRY_MODE</Name>
<Value>052</Value>
</AdditionDataDetail>
</additionalData>
</Credit>
</soap:Body>
</soap:Envelope>

Sample Response

<?xml version="1.0" encoding="utf-8"?>


<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<CreditResponse xmlns="http://www.croem.net/neogateway/">
<CreditResult>
<TransactionId>13600651</TransactionId>
<OperationType>Credit</OperationType>
<Tracking>Test</Tracking>
<RequestDate>2013-04-24T12:49:10.3809171-04:00</RequestDate>
<ResponseDate>2013-04-24T12:49:15.8802316-04:00</ResponseDate>
<Code>00</Code>
<AuthorizationNumber>847496</AuthorizationNumber>
<ProcessorId>3</ProcessorId>
<Description>Approved</Description>
<Result>00~311416847496~847496~124915~0424~013600651~</Result>
<ReturnURL>string</ReturnURL>
</CreditResult>
</CreditResponse>
</soap:Body>
</soap:Envelope>

Rebill

Sample Request
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<Rebill xmlns="http://www.croem.net/neogateway/">
<accessCode>89M045R43E </accessCode>
<merchantAccountNumber>999999999</merchantAccountNumber>
<terminalName>DEMO0001</terminalName>
<clientTracking> V01</clientTracking>
<cardNumber>4111111111111111</cardNumber>

32
<cardHolder>sarahjones </cardHolder>
<cardExpiration>1214</cardExpiration>
<amount>100.50</amount>
<currencyCode>840</currencyCode>
<emailAddress>>joe@hotmail.com</emailAddress>
<shippingName>john&Johnsan</shippingName>
<shippingDate>1213</shippingDate>
<shippingAddress> 350 Fifth Avenue, 34th floor </shippingAddress>
<shippingCity>newyork</shippingCity>
<shippingState>NY</shippingState>
<shippingCountry>USA</shippingCountry>
<shippingZipCode>101188</shippingZipCode>
<shippingPhoneNumber>2123124700</shippingPhoneNumber>
<billingAddress> 51, Avenue Blanc </billingAddress>
<billingCity> newyork </billingCity>
<billingState>NY</billingState>
<billingCountry>USA</billingCountry>
<billingZipCode>3299</billingZipCode>
<billingPhoneNumber>2122103190</billingPhoneNumber>
<userIpAddress>225.224.225.224</userIpAddress>

<itemsDetails>
<ItemDetails>
<Code>string</Code>
<Name>Aspirin</Name>
<Description>Bayer&Generic</Description>
<Quantity>10</Quantity>
<UnitPrice>1.0</UnitPrice>
</ItemDetails>
<ItemDetails>
<Code>02A</Code>
<Name>CK</Name>
<Description>perfume</Description>
<Quantity>1</Quantity>
<UnitPrice>500.00</UnitPrice>
</ItemDetails>
</itemsDetails>
<systemTracking>593d7ef0b5d1c01ac4e36791</systemTracking>
<additionalData>
<AdditionDataDetail>
<Name>CARD_ENTRY_MODE</Name>
<Value>052</Value>
</AdditionDataDetail>
</additionalData>
</Rebill>
</soap:Body>
</soap:Envelope>

Sample Response

<?xml version="1.0" encoding="utf-8"?>

33
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<RebillResponse xmlns="http://www.croem.net/neogateway/">
<RebillResult>
<TransactionId>13600651</TransactionId>
<OperationType>Rebill</OperationType>
<Tracking>Test</Tracking>
<RequestDate>2013-04-24T12:49:10.3809171-04:00</RequestDate>
<ResponseDate>2013-04-24T12:49:15.8802316-04:00</ResponseDate>
<Code>00</Code>
<AuthorizationNumber>847496</AuthorizationNumber>
<ProcessorId>3</ProcessorId>
<Description>Approved</Description>
<Result>00~311416847496~847496~124915~0424~013600651~</Result>
<ReturnURL>string</ReturnURL>
</RebillResult>
</RebillResponse>
</soap:Body>
</soap:Envelope>

34
Response Protocol (XML/SOAP)
The response to all above-mentioned transaction types are structured as follows:

Parameter Description
TransactionId Alphanumeric, 12 chars max
OperationType Type of operation, e.g Sale, Credit
Tracking Tracking number of the transaction.
RequestDate Date transaction was requested in a format Date:Time
e.g 2013-04-24T12:49:10.3809171-04:00
ResponseDate Date transaction was processed fin a format Date:Time
e.g 2013-04-24T12:49:10.3809171-04:00
AuthorizationNumber Alphanumeric, 6 chars maximum (generated for internal
purposes)
ProcessorId Id of the processor
Description Description(status) of the transaction e.g Approved,
rejected
Result Alphanumeric, represent various parameter concatenated
with ~. Description of each index is as follow:
1. Response Code
2. Processor Tracking ID
3. Transaction Authorization Number
4. Transaction Response Time
5. Transaction Response Date
6. Ballot
7. EMV Response Data (Base64 encoded)
Code Alphanumeric, 3 characters max that represents the final
status of the transaction
ReturnURL
BinId Bin Identifier
ProcessorResponseRaw Processor Response in raw format
InternalResponseCode Response Code for internal use
SystemTracking Custom identifier to track the transaction
EMVResponse Response of the EMV

35
Accessing the Web Service
As Web Services are based on open protocols such as the Simple Object Access Protocol (SOAP), this
client technology can also be used to consume non-ASP.NET Web Services.

Within the SDK, there is a tool called the Web Services Description Language tool (WSDL.exe). This
command-line tool is used to create proxy classes from WSDL. For example, using Microsoft Visual
Studio you can use the following command to generate a proxy class that encapsulates the web
methods:
C:\Program Files\Microsoft Visual Studio 8\VC>wsdl [URL]/neogateway.asmx?WSDL

The class generated will contain methods that will return a response object. Compiling this proxy class
into an application and then calling this proxy class's method results in the proxy class packaging a SOAP
request across HTTP and receiving the SOAP-encoded response.

From the client perspective, the code would be similar to the following examples:

C#.net
TCservice thewebservice = new TCservice();
String theresponse = thewebservice.Sale(…);

VB.net
Dim thewebservice As New TCservice()
Dim theresponse As String = thewebservice.Sale(…)

Jscript.net
var thewebservice: TCservice = new TCservice();
var theresponse:String = thewebservice.Sale(…);

36
Card Entry Method Codes

01 Ecommerce – Manual Key Entry

02 Magnetic Stripe read – Track Data ignored

05 Chip Contact

80 Magnetic Stripe Fallback

90 Magnetic Stripe

Terminal Capability Codes

0 Unspecified or unknown

1 Terminal has PIN entry capability

2 Terminal does not have PIN entry capability

8 Terminal has PIN entry capability but PIN pad is not currently operative

Account Type

0000 Default Unspecified

1000 Saving Account

2000 Cheque Account

37
Response codes

00 Ok, or Approved

01 Call Issuer

02 Call Issuer

03 Invalid Merchant

04 Pickup the Card

05 Decline

06 Call Issuer

07 Pickup the Card

08 Error in File ISOBMP

09 Decline, Code #9

10 Decline, Code #10

11 Ok, or Approved

12 Invalid Transaction

13 Invalid Amount

14 Invalid Card

15 Non Existent Issuer

16 Decline, Code #16

17 Invalid Date Capture

18 Decline, Code #18

19 Retry Transaction later. Processor timed out.

20 Decline, Code #20

21 Invalid Reverse. Reference transaction does not exist.

38
22 Decline, Code #22

23 Decline, Code #23

24 Decline, Code #24

25 Decline

26 Decline, Code #26

27 Decline, Code #27

28 Decline

29 Decline, Code #29

30 Format Error

31 Bank not Allowed

32 Decline, Code #32

33 Decline, Code #33

34 Decline, Code #34

35 Decline, Code #35

36 Decline, Code #36

37 Decline, Code #37

38 Decline, Code #38

39 Invalid Transaction.

40 Decline, Code #40

41 Pickup the Card

42 Decline, Code #42

43 Pickup the Card

44 Decline, Code #44

39
45 Decline, Code #45

46 Decline, Code #46

47 Decline, Code #47

48 Decline, Code #48

49 Decline, Code #49

50 Decline, Code #50

51 Insufficient Funds

52 Invalid Account

53 Invalid Account

54 Expired Card

55 Invalid PIN

56 Decline, Code #56

57 Decline

58 Invalid Transaction

59 Decline, Code #59

60 Decline, Code #60

61 Decline

62 Decline

63 Error MAC Key

64 Decline, Code #64

65 Decline

66 Decline, Code #66

67 Pickup the Card

40
68 Error, Slow Response

69 Decline, Code #69

70 Decline. Transaction previously approved. If you are trying to submit an


adjustment.

71 Decline, Code #71

72 Decline, Code #72

73 Decline, Code #73

74 Decline, Code #74

75 Decline

76 Declined. An approved preauthorization does not exist.

77 Error in Close

78 Trace Not Found

79 Error in Key

80 # Batch not Found

81 TC not DB/CR

82 REF. doesn't Exist

83 Direct TX Doesn't Exist

84 Invalid Life Cycle

85 Decline, Code #85

86 Decline, Code #86

87 Error en llave del PIN

88 Error, Sync MAC

89 Error, in TID

90 Service not Available

41
91 Issuer out of Service

92 Invalid Issuer

93 Decline

94 Duplicate transmission

95 Start Sending Batch

96 Call Issuer

97 Decline, Code #97

98 Error, Duplicate REV.

A0 Monthly Volumen Exceded.

A1 Highest Ticket Exceded

N7 Decline for cvv2 failure.

Extended response set:


99 Timeout. Retry Transaction later. Processor is busy.

100 Incorrect Request Format.

101 Transaction is not authorized.

102 MASTERCARD transaction is not authorized.

103 Ballot number is required.

104 Card Type is required.

105 CVV is required.

106 Currency Code is required.

107 Card Holder Name is required.

42
108 Credit was not authorized.

-Credit is authorized only for the same merchant who did the sale.

-You will not be able to credit a card with an amount greater than the
sum of the amounts previously debited for you.

-If a merchant if not authorized to do sales using MASTERCARD, he can


only credit MASTERCARD transactions if the sale was performed by that
merchant.

109 Void was not authorized.

-Void is authorized only for the same merchant who did the sale.

-You will not be able to void a transaction for an amount other than the
amount previously debited.

110 Invalid card type. Only Visa and MasterCard are authorized.

111 Invalid Terminal ID.

112 Invalid IP Address. IP is not registered.

113 Shipping Address is required. Set all fields.

You can complete all fields: address, city, state, country, postal
code.

114 Billing Address is required. Set all fields.

115 You are not authorized to operate within “United States”.

116 Invalid credit card number.

117 Card expired.

118 Invalid Amount.

119 Adjustment cannot be done. Unable to find reference for


preauthorization.

120 Merchant and Reference are required when proccode=STATUS. . Only


apply when proccode=STATUS

121 Transaction not found. Check parameters. Only apply when


proccode=STATUS

43
122 Only currency “USA Dollar” is authorized. USA Dollar =840.

123 Merchant is not authorized to process.

124 Transaction amount exceeds allowed limit.

125 Merchant exceeded MONTHLY transaction amount sum limit.

126 Merchant has exceeded the maximum number of test transactions.

127 Invalid card Type.

128 Merchant exceeded MONTHLY transaction count limit.

129 Merchant exceeded DAILY transaction amount sum limit.

130 Merchant exceeded DAILY transaction count limit.

131 Declined, previous chargeback found

132 Declined, previous lost/stolen

133 Declined, previous pickup card instruction

134 Declined, previous invalid issuer instruction

135

136 Card previously declined today

137 Card declined once. Try a lesser amount

138 Card exceeded daily limit

139 Only 3 approved transactions allowed

140 Invalid or unexpected cardholder, try another

141 Card previously restricted or not permitted

145 High fraud risk score

150 Miscellaneous Error

230 Sum of line items does not equal transaction amount

44
231 Line items required and not included

232 Original Site IP required and not included

233 Phone number or email is required and not included

234 Invalid item or item not allowed

235 Recurring Transaction not Authorized

999 System busy. Try again.

45
Appendix A

VBV Sample Verification Screen

46
Contact Information

Panama
Calle 50ta y Calle Santo Domingo
Edificio Global Bank piso 31 oficina 3104
Ciudad de Panama, Panama

Tel.507 830 5381

USA
12781 Miramar Parkway
Suite 103
Miramar, Fl 33027

Tel. 954 602 1010

Worldwide

ccsupport@croem.net

yamilrm
(Yamil Rivera@Croem Inc.)

47

You might also like