376\377\000G\000e\000s\000t\000P\000a\000y\000_

Transcription

376\377\000G\000e\000s\000t\000P\000a\000y\000_
GestPay Technical
Specifications for
Payment Page
(Security with Encryption)
GestPay Technical Specifications for Payment Page
Page 1 of 111
Document Information................................................................................................. 4
Version Information...................................................................................................... 5
1
Introduction........................................................................................................... 6
3 Description of Process Phases ............................................................................ 9
3.1 Phase I: transaction data encryption ..................................................................9
3.2 Phase II: payment page call ..............................................................................10
3.3 Phase III: communication of transaction result ...............................................11
3.3.1 Response to merchant ...........................................................................11
3.3.2 Response to Buyer ................................................................................11
3.4 Phase IV: decryption of transaction result .......................................................12
4 Authentication .......................................................................................................... 13
5 WSCryptDecrypt Webservice .............................................................................. 14
6 Structure of Transaction Data .............................................................................. 15
6.1 Encrypt Method: how to obtain an encrypted string .......................................16
6.2 Decrypt Method: ho to obtain clear transaction result....................................23
7 Tokenization............................................................................................................. 26
7.1 Token Generation during payments in IFrame architecture..........................27
7.2 Token values........................................................................................................28
7.3 Rules for Custom Tokens...................................................................................29
8 PayPal Seller Protection ....................................................................................... 30
8.1 Seller Protection activation ...............................................................................31
8.2 Seller Protection example .................................................................................32
9 Payment Type .......................................................................................................... 33
10 Payment Type Detail............................................................................................ 34
11 Fraud Prevention Configuration....................................................................... 36
11.1 PC Finger Print..................................................................................................39
11.2 Accreditation Tests...........................................................................................40
12 Consel "Rate in Rete" integration................................................................... 41
12.1 Consel Payment Method activation...............................................................42
12.2 Consel "Rate in Rete" example......................................................................43
13 PayPal Reference Transaction.......................................................................... 44
13.1 PayPal Reference Transaction activation ....................................................44
14 Alternative Payments integration..................................................................... 45
14.1 Alternative Payments activation.....................................................................45
14.2 Sofort Banking..................................................................................................47
14.3 Ideal ....................................................................................................................48
14.4 Klarna..................................................................................................................49
14.5 Qiwi ....................................................................................................................51
14.6 Yandex...............................................................................................................52
14.7 AliPay..................................................................................................................53
15 Merchant’s Profile ................................................................................................. 54
15.1 Authentication configuration ............................................................................55
15.2 Configuration of response url and e-mail.......................................................56
15.3 Configuration of Fields & Parameters ............................................................57
15.3.1 Tokenization set Fields & Parameters.................................................58
15.3.2 Seller Protection set Fields & Parameters ...........................................59
15.3.3 Payment Options Visibility set Fields & Parameters .........................60
15.3.4 Payment Type Detail set Fields & Parameters ...................................61
15.3.5 RED Fraud Prevention set Fields & Parameters ................................62
15.3.6 Consel "Rate in Rete set Fields & Parameters ...................................63
15.3.7 PayPal Reference Transaction set Fields & Parameters ......................64
16 Software Requirements ....................................................................................... 65
GestPay Technical Specifications for Payment Page
Page 2 of 111
16.1 Buyer browser requirements ...........................................................................65
16.2 Merchant server requirements ........................................................................65
17 Table of Errors........................................................................................................ 66
18 Table of currency codes ...................................................................................... 74
19 Table of Language Codes ................................................................................... 75
20 Table of 3D-Secure Codes .................................................................................. 76
21 Table of PayPal Seller Protection State Codes ............................................. 77
22 Table of Country Codes....................................................................................... 80
22.1 PayPal Codes....................................................................................................80
22.2 RED Codes........................................................................................................86
23 Table of Payment Type Codes ........................................................................... 91
24 Example Transactions ......................................................................................... 92
24.1 Transaction # 1..................................................................................................93
24.2 Transaction # 2..................................................................................................96
24.3 Transaction # 3................................................................................................100
24.4 Transaction # 4................................................................................................103
24.5 Transaction # 5................................................................................................107
25 Payment Orders in Test Environment ........................................................... 111
GestPay Technical Specifications for Payment Page
Page 3 of 111
Document Information
Project
name:
Title:
Creation date
Language:
Company:
Ges
tPay
GestPay Technical Specifications for Payment Page (Security with
Encryption)
01.06.2013
English
EasyNolo
GestPay Technical Specifications for Payment Page
Page 4 of 111
Version Information
Version
Description
1_0_0 Initial version
1_1_0 RED, Payment Types, Payment Types
Detail
1_2_0 Consel "Rate in Rete", PayPal Reference
Transaction
1_3_0 Tokenization Group, case sensitive
indication
1_4_0 Order Details, Line Items
Date
01/06/13
21/03/14
21/10/14
13/02/15
27/10/15
1_5_0 Alternatives Payments
13/11/15
1_6_0 Update Software Requirements
27/01/16
GestPay Technical Specifications for Payment Page
Page 5 of 111
1
Introduction
GestPay is the suite that Banca Sella Group offers to online merchants for
accepting and managing online payments.
GestPay is available in many configurations, with different sets of features and
different technical interfaces.
The main division is between the solution that allows merchants to interact in
Server-Server way with GestPay and the solution that allows merchants to
redirect buyers to GestPay's pages for the payment.
The current document describes the architectural and functional features of
GestPay when used for the redirection of buyers Information, link and support
are available on https://www.gestpay.it.
GestPayWS/WsCryptDecrypt web service is exposed by GestPay at following
URLs:
•
•
Test environment:
https://testecomm.sella.it/gestpay/GestPayWS/WsCryptDecrypt.asmx?w
sdl
Production environment:
https://ecommS2S.sella.it/gestpay/GestPayWS/WsCryptDecrypt.asmx?
wsdl
In this document is explained the use of webservice for handling the encryption
and decryption services.
The chapter System architecture describes the various components of the
system and the modes of interaction between them and between the parties
involved (merchant, buyer and GestPay).
The chapter Description of process phases details all of the phases that make
up the payment process, in particular the information that must be passed to
GestPay and the information that will be returned.
The chapter Authentication describes how GestPay authenticates the merchant
server that makes calls to the system.
The chapter Payment transaction data structure describes the information that
identifies a payment transaction and the result that GestPay returns after
processing the transaction.
The chapter Merchant profile describes how to configure the merchant profile
that allows GestPay to process transactions correctly.
The chapter WebService focuses on the use of the webservice responsible for
handling the encryption and decryption services – substituting the
WSCryptDecrypt object described above – between the server which hosts the
virtual store and GestPay.
The chapter Software requirements illustrates the minimum requirements for
installation of the software required to interface with GestPay.
The chapter Example transactions describes a number of typical transactions,
highlighting the information exchanged and the modes of interaction between the
various components.
In addition, there are some tables that make it possible to code certain
information sent by or received from GestPay.
GestPay Technical Specifications for Payment Page
Page 6 of 111
2
System Architecture
Within the system architecture, 3 components can be identified:
•
Buyer client
•
Merchant Server
•
GestPay Server
Communication between the various components takes place over the Internet
using the http or https protocols (the GestPay server has a 2048-bit Verisign
digital certificate).
The payment process is split into communication steps in which the
components interact, exchanging the information needed to complete the
transaction.
Architecture scheme
1. The buyer selects the items to buy and decides to proceed with payment.
2. The merchant’s server contacts GestPay server via the Internet to encrypt
the payment transaction data.
3. GestPay performs the necessary controls to authenticate the merchant’s
server and validate the transaction data, returning, in the event of an
affirmative response, an encrypted parameter string that represents the
payment transaction to be processed.
4. The encrypted parameter string is communicated to the customer’s
browser. The customer is directed to the GestPay server to complete the
payment process.
5. The merchant’s browser calls back the payment page, passing the encrypted
parameter string and the code assigned to the merchant (Shop Login).
Data security checks are performed on the transaction: if the checks are
GestPay Technical Specifications for Payment Page
Page 7 of 111
passed, the payment page can be displayed and the the data needed to
complete the transaction can be entered. The following steps describe the
process by which the transaction result is communicated both to the
merchant and to the buyer.
6. GestPay communicates to the merchant’s server an encrypted parameter
string which returns the result of the transaction.
7a.The merchant’s server contacts the GestPay server via Internet to decrypt
the encrypted data string which returns the result of the transaction.
8a.GestPay decrypts the string and returns the parameters which return the
result of the transaction in unencrypted form.
7b.GestPay communicates the encrypted parameter string which brings the
transaction result to the browser of the customer, who is directed to the
merchant’s server.
8b.The buyer’s browser calls back the response page created by the merchant,
passing the encrypted parameter string.
9b.The merchant’s server contacts the GestPay server via Internet to decrypt
the encrypted data string that returns the transaction result.
10b. GestPay decrypts the string and returns, in unencrypted form, the
parameters that return the transaction result, allowing the merchant to provide
the buyer with the references required to complete the purchase process.
GestPay Technical Specifications for Payment Page
Page 8 of 111
3 Description of Process Phases
A payment transaction is made up of 4 basic phases in which there are one or
more communication steps. In each phase, the information necessary to
process the transaction is exchanged between the various components.
3.1 Phase I: transaction data encryption
The information required for the payment is previously communicated to
GestPay to be encrypted. To guarantee an optimum security level, no sensitive
information is communicated in unencrypted form to the buyer’s server.
In this phase, the merchant’s server requests the encryption service from
GestPay, obtaining the encrypted string that represents the transaction to
process. The data that identify a transaction and their use will be described in
chapter 4.
Encryption can be handled using the WSCryptDecrypt WebService
The use of the web service does not require any installation on the server, but
simply a call to the web service using the https protocol. The response is in the
XML format.
If the merchant’s authentication checks and validation of transaction data are
passed, GestPay returns the encrypted data string to the merchant’s server to
be sent to the buyer’s server to continue the payment process. Otherwise, a
specific error code will be returned to allow the problem detected to be
identified.
GestPay Technical Specifications for Payment Page
Page 9 of 111
3.2 Phase II: payment page call
After obtaining the encrypted data string (as described in the preceding
section), the buyer’s browser is directed to the payment page on the GestPay
server at the following address:
https://ecomm.sella.it/pagam/pagam.aspx?a=<ShopLogin>&b=<encrypted
string>
for test codes:
https://testecomm.sella.it/pagam/pagam.aspx?a=<ShopLogin>&b=<encrypted
string>
The call to the page will be made passing two parameters:
a The code identifying the merchant (Shop Login)
b The encrypted data string identifying the transaction
The payment page will acquire the parameters and verify the identity checks
(parameter a must refer to a recognised merchant) and transaction data
security (parameter b must
correspond to the encrypted data string
communicated by the merchant during the previous phase).
If the checks are passed, the payment page will be displayed to the buyer, who
must enter the data required to complete the payment process.
If the checks are not passed, the payment page is not displayed and the
process passes to the following phase in order to communicate the negative
transaction result.
GestPay Technical Specifications for Payment Page
Page 10 of 111
3.3 Phase III: communication of transaction result
GestPay communicates the transaction result both to the merchant and the
buyer.
3.3.1 Response to merchant
Notification is forwarded with a server-to-server call to the page specifically
configured on the merchant’s server (the notification page URL is one of the
items of information that make up the merchant’s profile, configurable through
the GestPay Back Office environment). Call syntax is the following:
http://<url server to server>?a=<ShopLogin>&b=<encrypted string>
The call to the page will be made passing two parameters:
a the code which identifies merchant (Shop Login)
b the encrypted data string which contains the result of the transaction
The page residing on the merchant’s server must have the html tags
<HTML></HTML> in the source.
If there are communication errors, GestPay will make several forwarding
attempts for two days after the transaction.
The merchant will also receive a transaction result notification e-mail at the
address configured in his/her profile.
In addition, the processed transaction can be viewed by accessing the GestPay
Back Office environment in the Active Report section.
3.3.2 Response to Buyer
GestPay immediately communicates the result of the transaction by displaying a
“Receipt" showing essential transaction data.
GestPay directs the buyer’s browser to the merchant’s server to conclude the
purchasing process. The merchant must prepare two urls (and configure them in
the merchant’s profile) which will be called in the event of a negative or positive
response and will allow the merchant to manage communication with the buyer
while maintaining the editorial style that characterises the virtual shop. The call
syntax is the following:
http://<url merchant>?a=<ShopLogin>&b=<encrypted string>
If there is an anomaly in the server-to-server communication described above,
GestPay displays a message to the buyer warning that there may be problems
directing him/her to the merchant’s server to conclude the purchasing process. In
this situation, the buyer receives a notification from GestPay about the
transaction result and is invited, if there are anomalies, to contact the merchant
by other means (e.g. e-mail) to conclude the purchasing process.
The buyer will also receive a transaction result notification e-mail at the address
provided on the payment page, if indicated.
GestPay Technical Specifications for Payment Page
Page 11 of 111
3.4 Phase IV: decryption of transaction result
GestPay communicates the transaction result through an encrypted string
(parameter b of the call to the url preconfigured by the merchant). The string is
initially forwarded to
the merchant during server-to-server communication and makes it possible –
once it has been decrypted – to update the status of the transaction recorded in
the merchant’s information system. The same string is also sent from the
buyer’s browser to the merchant’s server and makes it possible – once it has
been decrypted – to complete the payment process.
Web pages preconfigured by the merchant for receiving the transaction result (in
the case of both server-to-server communication and through the buyer’s
browser) must call the GestPay server to request the decryption service and
obtain the information that represents the result of the processed transaction in
unencrypted form.
The request to decrypt the string received is made using WebService
WSCryptDecrypt
The use of the webservice does not require any installation on the server, but
simply a call to the webservice using the https protocol. The response is in the
XML format.
GestPay Technical Specifications for Payment Page
Page 12 of 111
4 Authentication
Server authentication of the merchant requesting encryption or decryption
services is made by verifying:
• Shop Login validity: ShopLogin parameter must correspond to a code
recorded in GestPay customers’ details.
• IP address server: the calling server IP address must correspond to
one of the IP addresses configured in the merchant’s profile.
• Shop Login status: the merchant’s status must be active (the
merchant’s status is managed by the GestPay administrator and not
directly by the merchant)
If the authentication checks are not passed, a specific error will be returned,
making it possible to identify the anomaly found in the authentication process.
GestPay Technical Specifications for Payment Page
Page 13 of 111
5 WSCryptDecrypt Webservice
WSCryptDecrypt web service is available on production and test servers and
does not require any installation on the merchant’s server.
The merchant must implement – in the page(s) of the virtual store configured to
handle payments – a call to the webservice which handles requests to use the
GestPay encryption service.
To request the encryption service it is necessary to call the Encrypt method.
If the encryption operation is concluded correctly (TransactionResult tag value
with OK), the encrypted data string returned by GestPay will be available by
reading the value of the CryptDecryptString tag.
If this is not the case, the values of the ErrorCode and ErrorDescription tag will
make it possible to identify the reasons that prevented the encryption operation.
To request the decryption service it is necessary to call the Decrypt method,
passing the shopLogin and CryptedString tags with the values communicated by
GestPay in Phase III.
The information containing the transaction result will be available by reading the
information in the XML response file corresponding to the result of the
transaction.
GestPay Technical Specifications for Payment Page
Page 14 of 111
6 Structure of Transaction Data
A transaction is characterised by a series of information that must be
communicated to GestPay to complete the payment process and by information
returned to the system as the transaction result.
By suitably configuring his/her profile within the Back Office environment, the
merchant can define what information to send to or receive from GestPay, and
by what means.
GestPay Technical Specifications for Payment Page
Page 15 of 111
6.1 Encrypt Method: how to obtain an encrypted string
Some of the information to communicate to GestPay is required in order to
complete the payment process, while other information can be omitted without
compromising the processing of the transaction. Through the GestPay Back
Office environment, merchants can define what information is required and what
information is optional.
Some information that is essential to the payment process is configured as
compulsory by GestPay. This attribute cannot be modified.
The following table gives the information that must be communicated to GestPay
xml using Encrypt method in order to make a transaction, the tags' names are
case sensitive:
Name
Max
Dim
shopLogin
30
uicCode
3
amount
9
shopTransactionID
50
buyerName
buyerEmail
50
50
languageId
2
customInfo
1000
(1)
(2)
requestToken
25
(3)
ppSellerProtection
shippingDetails
shipToName
shipToStreet
1
Description
shopLogin (Mandatory)
Code identifying currency in which transaction
amount is denominated - see Currency Codes
table - (Mandatory)
Transaction amount. Do not insert thousands
separator. Decimals, max. 2 numbers, are
optional and separator is the point (Mandatory)
Identifier
attributed
to merchant’s
transaction (Mandatory)
Buyer’s name and surname
Buyer’s e-mail address
Code identifying language used in
communication with buyer
String containing specific information as
configured in the merchant’s profile
“MASKEDPAN” for a Standard Token any other
value for Custom Token.
Using :FORCED: before the token, it' s possible
to have the token even if the transaction is not
authorized
Parameter to set the use of a confirmed
addresses
32
100
String containing the shipping name
String containing the shipping address
shipToCity
40
shipToState
40
shipToCountryCode
2
shipToZip
20
shipToStreet2
100
String containing the shipping city
String containing the shipping state (see State
Codes table)
String containing the shipping country code (see
Country Codes table)
String containing the shipping zip
String containing a shipping address additional
field
paymentTypes
(4)
paymentType
25
Set of tags to set the visibility of payment
systems on payment page (see Payment Type
Codes table)
paymentTypeDetail
GestPay Technical Specifications for Payment Page
Page 16 of 111
Max
Dim
Name
MyBankBankCode
IdealBankCode
(5)
(5)
redFraudPrevention
Red_CustomerInfo
Customer_Title
Customer_Name
Customer_Surname
Customer_Email
Customer_Address
Customer_Address2
Customer_City
Customer_StateCode
Customer_Country
Customer_PostalCode
Customer_Phone
Red_ShippingInfo
Shipping_Name
Shipping_Surname
Shipping_Email
Shipping_Address
Shipping_Address2
Shipping_City
Shipping_StateCode
Shipping_Country
Shipping_PostalCode
Shipping_HomePhone
Shipping_FaxPhone
Shipping_MobilePhone
Shipping_TimeToDeparture
Red_BillingInfo
Billing_Id
Billing_Name
Billing_Surname
Billing_DateOfBirth
Billing_Email
Billing_Address
Billing_Address2
Billing_City
Billing_StateCode
Billing_Country
Billing_PostalCode
Billing_HomePhone
25
25
1
Description
Tag to set the Bank to show on payment page (the
bank List is retrieved from
WsS2S.CallMyBankListS2S)
Tag to set the Bank to show on payment page (the
bank List is retrieved from
WsS2S.CallIdealListS2S)
Flag to activate Red Fraud Prevention
(redFraudPreventin=1)
5
30
30
45
30
30
20
2
3
9
19
Customer Title
Customer First Name
Customer Last Name
Customer Email Address - value must contain @
Customer address line 1
Customer address line 2
Customer address city
Customer address state code
Customer Country Code - ISO-Alpha 3 (IE: ITA)
Customer Post/Zip Code
Customer Phone - no spaces
30
30
45
30
30
20
2
3
9
19
12
19
Shipping First Name
Shipping Last Name
Shipping Email Address - value must contain @
Shipping address line 1
Shipping address line 2
Shipping address city
Shipping address state code
Shipping Country Code - ISO-Alpha 3
Shipping Post/Zip Code
Shipping Home Phone - no spaces
Shipping Fax Phone - no spaces
Shipping Mobile Phone
Shipping Time To Departure (See RED Par. for
details)
1
16
30
30
10
45
30
30
20
2
3
9
19
Billing ID
Billing First Name
Billing Last Name
Billing DoB - format: YYYY-MM-DD
Billing Email Address - value must contain @
Billing address line 1
Billing address line 2
Billing address city
Billing address state code
Billing Country Code - ISO-Alpha 3
Billing Post/Zip Code
Billing Home Phone - no spaces
GestPay Technical Specifications for Payment Page
Page 17 of 111
Name
Max
Dim
Description
Billing_WorkPhone
19
Billing Work Phone - no spaces
Billing_MobilePhone
19
Billing Mobile Phone
60
45
Transaction Source Website
IP of customer - Format: nnn.nnn.nnn.nnn
PC Finger Print (See PC Finger Print Paragraph
below), if the RED Configuration is defined with the
chance to fill this value, but for some reasons it's
left empty, then pay attention and fill
Red_ServiceType=N to avoid error
Previous Customer Flag - format Y or N
Optional only for merchant with a specific set of
rules (Code provided by Sella)
Optional only for merchant with a specific set of
rules (Code provided by Sella)
Red_CustomerData
MerchantWebSite
Customer_IpAddress
PC_FingerPrint
4000
PreviousCustomer
1
Red_Merchant_ID
12
Red_ServiceType
1
Red_CustomInfo
UserCustomData
From 1
To 10 >256
Custom Data Fields (Zero or more repetitions)
From 11
To 25 >30
Red_Items
NumberOfItems
2
Required to specify the number of repeating item
tags max value 99
Red_Item
Item_ProductCode
Item_StockKeepingUnit
Item_Description
Item_Quantity
12
12
26
12
Item_UnitCost (100=1€)
12
Item_TotalCost
12
Item_ShippingNumber
Item_GiftMessage
Item_PartEAN_Number
Item_ShippingComments
19
160
30
160
Consel_MerchantPro
3
Item Product Code
Item Stock Keeping Unit
Item Description
Item quantity - 1 should be sent as 10000
Item cost amount - €5.00 should be sent as
50000
Total Item Amount (item qty x item cost amt), no
decimal
Item shipping/tracking number
Item gift message
Item Park or EAN Number
Item Shipping Comments
Merchant Promotional Code (Mandatory to show
Consel in the pagam's Payment Method)
Consel_CustomerInfo
Surname
30
Customer Surname
Name
30
Customer Name
TaxationCode
16
Customer Taxation Code
Address
60
Customer Address
City
30
Customer City
StateCode
2
Customer State Code
DateAddress
10
Date since the customer lives in the declared
address (dd/mm/yyyy)
Phone
15
Customer phone
GestPay Technical Specifications for Payment Page
Page 18 of 111
Name
MobilePhone
payPalBillingAgreementDescription
Max
Dim
Description
15
Customer Mobile phone
127
Description of the goods, terms and conditions of
the billing agreement
OrderDetails
CustomerDetail
ProfileID
MerchantCustomerID
FirstName
MiddleName
Lastname
PrimaryEmail
SecondaryEmail
PrimaryPhone
12
50
65
65
65
100
100
20
SecondaryPhone
DateOfBirth
Gender
20
10
1
SocialSecurityNumber
20
Company
ShippingAddress
ProfileID
FirstName
MiddleName
Lastname
StreetName
Streetname2
HouseNumber
HouseExtention
City
ZipCode
State
CountryCode
Email
PrimaryPhone
SecondaryPhone
BillingAddress
ProfileID
FirstName
MiddleName
Lastname
StreetName
Streetname2
HouseNumber
HouseExtention
City
ZipCode
State
CountryCode
Email
PrimaryPhone
SecondaryPhone
ProductDetails
255
Customer profile ID (future use)
Merchant customer ID (future use)
Customer First Name
Customer Middle Name
Customer Last name
Customer primary email
Customer secondary email
Customer's phone including prefix
Customer's phone including prefix
Customer Date of Birth (dd/mm/yyyy)
Customer Gender (0=Male 1=Female)
Customer's social or fiscal identifier (for Klarna
Use)
Customer Company
12
65
65
65
100
100
5
5
50
50
50
2
100
20
20
Profile ID (future use)
First Name
Middle Name
Last name
Shipping Street
Shipping Street second line
12
65
65
65
100
100
5
5
50
50
50
2
100
20
20
Profile ID (future use)
First Name
Middle Name
Last name
Shipping Street
Shipping Street second line
Shipping City
Shipping Zip Code
Shipping State
Alpha-2 code example for US is “US”
Shipping Contact Email
Shipping Primary Phone
Shipping Secondary Phone
BillingCity
BillingZip Code
BillingState
Alpha-2 code example for US is “US”
GestPay Technical Specifications for Payment Page
Page 19 of 111
ProductDetail <1...N>
ProductCode
SKU
(6)
Name
12
50
100
Description
(6)
(6)
255
Quantity
3
Price
(6)
UnitPrice
12
12
Type
2
Vat
Discount
2
2
Article’s product Code
Article’s Stock Keeping Unit
Article’s name
Article’s description
The number of products
Article’s price
Article’s Unit Price
The type of article:
1-product, 2-shipping, 3-handling
Value-Added Tax (the value of the tax)
The amount offered by you as discount
(1)
Each field can be up to a maximum of 300 characters in length
Required only when a Token is needed within the transaction
response.
In order to be able to request, obtain and use a Token,
merchants need to appropriately set “Fields and Parameters” in
the dedicated section of GestPay Merchant Back Office.
(3)
PayPal Seller Protection parameter. In order to be able to
activate the Seller Protection Option the merchants need to
appropriately set “Fields and Parameters” in the dedicated
section of GestPay Merchant Back Office.
(4)
Payment Systems Visibility. In order to be able to activate the
Payment Systems Visibility the merchants need to appropriately
set “Fields and Parameters” in the dedicated section of GestPay
Merchant Back Office. The Payment System Visibility can be
configured in the specific interface in the Back Office Merchant.
(5)
paymentTypeDetail. In order to be able to activate the payment
Type Detail the merchants need to appropriately set “Fields and
Parameters” in the dedicated section of GestPay Merchant Back
Office. The correct merchant configuration of Sofort and Ideal
has to be configured in the specific interface of Back Office
Merchant.(1) Each field can be up to a maximum of 300
characters in length
(6)
Line Items: in case the buyer selects PayPal as payment method
in the payment page, fields Name, Description, Quantity and
UnitPrice of every occurrency of the ProductDetail tag will be
used to show the transaction items details in PayPal payment
page.
(2)
During phase I, GestPay makes validation checks on the information that
constitutes the payment transaction, verifying consistency with the merchant’s
profile setup. If anomalies are detected, the transaction is abandoned, returning
a specific error. This approach makes it possible to identify possible anomalies
connected with the transaction immediately, preventing the buyer from being
directed to the payment page with an encrypted data string that corresponds
to an invalid transaction.
The custominfo attribute contains specific information that the merchant wishes
GestPay Technical Specifications for Payment Page
Page 20 of 111
to communicate to or receive from GestPay. What information is included in the
custominfo attribute is defined in the Back Office environment in the “Fields &
Parameters” section.
The information included will follow this form:
datum1=value1*P1*datum2=value2*P1* … *P1*datumn=valuen
The separator between logically different information is the reserved sequence of
characters *P1*.
Other characters that must not be used within the parameters encoded by
GestPay and in customised information are:
&
(space)
§
(
)
*
<
>
,
;
:
/
[
]
?
=
/*
%
//
*P1*
--
In the RED Fraud Prevention parameters (items tags with "RED" prefix) also the
following characters must not be used:
$
!
^
~
#
GestPay Technical Specifications for Payment Page
Page 21 of 111
Encrypt web service returns back the following information in the xml.
Name
TransactionType
Max Size
7
TransactionResult
2
CryptDecryptString
....
ErrorCode
ErrorDescription
9
255
Description
Decode the transaction type request
(DECRYPT, ENCRYPT)
Transaction result (OK/KO)
Encrypted string get by parameter set in the xml
request
Error code
Error description
GestPay Technical Specifications for Payment Page
Page 22 of 111
6.2 Decrypt Method: ho to obtain clear transaction result
GestPay communicates the payment transaction result to the merchant through
an encrypted string (parameter b of the call to the url preconfigured by the
merchant) with a set of transaction's informations.
To Decrypt the data it is necessary to use Decrypt method passing the following
parameters, the tags' names are case sensitive:
Name
shopLogin
CryptedString
Max Size
Description
30
ShopLogin
Encrypted string get by parameter b of the call to the
....
url preconfigured by the merchant
Decrypt webservice returns back the following information in the xml.
Name
Max
Size
Description
Transaction Type
7
Decode the transaction type request
(DECRYPT, ENCRYPT)
TransactionResult
2
Transaction result (OK/KO)
ShopTransactionID
50
Identifier attributed to merchant’s
transaction
BankTransactionID
9
Identifier attributed to the transaction
by GestPay
AuthorizationCode
6
Transaction authorisation code
Currency
3
Code identifying currency in which transaction
amount is denominated (see Currency Codes
table)
Amount
9
Transaction amount. Do not insert
thousands separator. Decimals (max. 2
numbers) are optional and separator is the
point (see examples)
Country
30
(1)
CustomInfo
1000
Nationality of institute issuing card
String that has the specific
information as configured in the merchant’s
profile
Buyer.BuyerName
50
Buyer’s name and surname
Buyer.BuyerEmail
50
Buyer’s e-mail address
TDLevel
255
Level of authentication for VBV Visa / Mastercard
Securecode transactions.
The string may have the value FULL or HALF
ErrorCode
9
Error code
GestPay Technical Specifications for Payment Page
Page 23 of 111
Name
Max
Size
Description
ErrorDescription
255
Error description
AlertCode
9
Alert code
AlertDescription
255
Alert description in chosen language
CVVPresent
1
Credit Card security code flag
MaskedPAN
25
Masked Pan string
PaymentMethod
100
Indicates the used Payment Method
TOKEN
25
String containing the token value
ProductType
100
String containing Card Type
TokenExpiryMonth
2
String containing the token expiry month
TokenExpiryYear
2
String containing the token expiry year
TransactionKey
18
Transaction identifier for 3D transactions. Not
used in transactions managed with the Payment
Page. It is useful only in Server-Server
transactions
VbV
2
Verified By Visa Flag
VbVRisp
Encrypted string containing information for 3DSecure transactions. Not used in transactions
managed with the Payment Page. It is useful only
in Server-Server transactions
VbVBuyer
2
Information about the enrolment of the buyer's
card to 3D-Secure protocol: "OK" means that the
card is enrolled, "KO" means that the card is not
enrolled
VbVFlag
2
Information about the 3D-Secure status. Not
used in transactions managed with the Payment
Page. It is useful only in Server-Server
transactions.
RedResponseCode
9
RED Fraud Score of the transaction or Error
code if there are problems with RED request
Value
Description
ACCEPT
Passed fraud screening
DENY
Recommend Deny
CHALLENGE
Recommend Challenge
NOSCORE
ReD not required to give a
recommendation
ERROR
Error in request data or internal
ReD Shield
ENETFP
Unable to connect to ReD Shield
ETMOUT
Screening request timed out
GestPay Technical Specifications for Payment Page
Page 24 of 111
Name
Max
Size
Description
EIVINF
RedResponseDescr
iption
(1)
400
Invalid Information
RED Description of the RedResponseCode
Each field can be up to a maximum of 300 characters in length.
The minimum information returned back as transaction result is made up of:
•
•
•
•
•
•
•
•
Currency
Amount
ShopTransactionID
TransactionResult
AuthorizationCode
ErrorCode
ErrorDescription
BankTransactionID
Other information is defined as optional and will be returned according to the
merchant’s profile settings made in the GestPay Back Office environment.
A transaction result can be interpreted by verifying the TransactionResult field
value. The possible values are:
Transaction
Result
Description
OK
Positive transaction result
KO
Negative transaction result
XX
Suspended transaction result
(This is not a final result. A
new communication will be provided to the merchant when
the transaction will assume the final OK/KO status)1
(1) The customer with XX transaction is redirect to URL for positive
response
GestPay Technical Specifications for Payment Page
Page 25 of 111
7 Tokenization
"Tokenization" means the replacement of a sensitive piece of information (i.e.:
credit card number) with a non sensitive one, called "Token".
Tokenization is used within GestPay in order to help merchants to match PCI
requirements (https://www.pcisecuritystandards.org/), defined by all major credit
cards companies in order to protect sensitive data of cardholders.
Merchants, who ask to their customers to register in their online shop, often save
the customer's credit card data in their system.
This behaviour has many advantages, first of which is the fact that the registered
buyers will be able to complete their next purchases without the need to enter
their card data again.
This behaviour might not be compliant with PCI rules.
Merchants should not store their customers' cards data into their systems, unless
they had been formally certified as PCI compliant.
In order to offer the same experience to their customers, without the need to face
heavy certification programs, merchants can take advantage of "Tokenization"
feature of GestPay, combined with "IFrame" solution.
With "Tokenization", a merchant will be able to remotely store credit card data in
GestPay archives and receive a Token in answer; the merchant will save the
received Token in its system instead of the credit card data.
For the next purchases, the merchants will send to GestPay the Token instead of
the credit card number.
GestPay will retrieve the credit card number from its archives starting from the
Token and it will complete the transaction.
Merchants will request and obtain new Tokens within the IFrame architecture.
And they will use previously generated Tokens within the Server-Server
architecture.
Therefore it is advisable for merchants, before they begin to work with GestPay
Tokens, to read and understand both IFrame and Server-Server technical
specifications documents.
A group of merchants can share a set of tokens.
So if a merchant belongs to a group he can use all the token of the others
merchants of the same group. This token could be updated or deleted from each
components of the group using the appropriate web service.
The group definition is set offline by Banca Sella operators, when a new
merchant is added to a group he can choose if insert in the group all his previous
token or not. In the same way, if a merchant leaves a group con decide if leave
in the group his tokens or not.
Tokenization feature is not automatically available to all GestPay merchants.
It must be requested and explicitly enabled by Banca Sella operators.
GestPay Technical Specifications for Payment Page
Page 26 of 111PAN
7.1 Token Generation during payments in IFrame architecture
It is very simple to request and obtain a new Token during a transaction with
IFrame architecture.
The involved phases are the first (encryption of transaction data) and the last
(decryption of GestPay answer).
In order to request a new Token, the merchant's system must set a value for
"Request Token" in the call to Encrypt method of WsCryptDecrypt web service.
Next chapter describes which values must be used.
In order to receive the Token data, the merchant's system must read the values
of "Token", "Token Expiry Month" and "Token Expiry Year" in the response of
Decrypt method of WsCryptDecrypt web service.
"Token" will contain the value that the merchant's system will use in the future.
"Token Expiry Month" and "Token Expiry Year" will not be used in the
communication with GestPay: they can be useful for the merchant in order to
know till when that Token will be valid.
"Request Token", "Token", "Token Expiry Month" and "Token Expiry Year"
fields must be properly configured in Merchant Back Office, in "Payment Page" /
"Fields & Parameters" section.
"Request Token" must be defined with "Parameter = true".
"Token", "Token Expiry Month" and "Token Expiry Year" must be defined with
"Response = true" and "Response Web Service = true".
It's possible to create the token in the Encrypt method of WsCryptDecrypt web
service even if the transaction is not authorized.
To achieve this result it's necessary to use :FORCED: before the token request:
<requestToken>:FORCED:MASKEDPAN</requestToken>
GestPay Technical Specifications for Payment Page
Page 27 of 111PAN
7.2 Token values
GestPay can manage two kinds of Tokens: standard Tokens and custom
Tokens.
Standard Tokens will be made as masked card numbers.
They will start with the same 2 digits of the card they replace, and they will end
with the same 4 digits of the card they replace; they will be 16 characters long.
The middle part will be a string made of 10 characters that can be digits or
capital letters.
The first 4 characters of this string will be always the same for each merchant.
(Different merchants will have a different 4 characters substring).
Example:
Card Number: 1234567890123456
Requested Token: MASKEDPAN
Standard Token: 12XYZWABCDEF3456
Card Number: 3456789012345678
Requested Token: MASKEDPAN
Standard Token: 34XYZWGHIJKL5678
Custom Tokens will be defined by the merchants, who will send their values to
GestPay so that GestPay will associate them to the cards they replace.
The returned custom Token will be made by the prefix of 4 characters assigned
to the merchant, followed by the value specified by the merchant.
Example:
Card Number: 1234567890123456
Requested Token: JOHN_SMITH_5533
Returned Custom Token: XYZWJOHN_SMITH_5533
Card Number: 3456789012345678
Requested Token: JACK_JONES_1234
Returned Custom Token: XYZWJACK_JONES_1234
Merchants will be able to choose which kind of Token GestPay must provide,
when they request a new Token.
This will be done by means of the value of “Token Request” parameter.
When merchants request a new Token, they will send “Token Request”
parameter to GestPay.
GestPay will use the value of “Token Request” to create the new Token.
If “Token Request” contains the exact word “MASKEDPAN”, then GestPay will
create a Standard Token.
If “Token Request” contains any other value, then GestPay will create a Custom
Token with that value prefixed by the 4 characters string of that merchant.
GestPay Technical Specifications for Payment Page
Page 28 of 111PAN
7.3 Rules for Custom Tokens
Custom Tokens will be chosen and generated by merchants themselves.
GestPay will simply receive, validate, add the prefix and store them.
Merchants will be free to choose the Token they prefer, but they must respect a
few rules:
• The Requested Token must be at least 10 characters long;
• The Requested Token must be at most 20 characters long;
• The Requested Token can only contain letters, digits, and underscore
(“_”);
• The number of digits in the Requested Token must be at most 8;
• The Requested Tokens are not case sensitive: GestPay will always
transform them in upper case
GestPay Technical Specifications for Payment Page
Page 29 of 111PAN
8 PayPal Seller Protection
PayPal Seller protection provides
Reversals that are based on:
Sellers from Claims, Chargebacks or
Unauthorized Transaction or
Item Not Received
PayPal Seller protection is available for eligible payments from buyers in any
country.
To be eligible for PayPal Seller protection, you must meet all of the basic
requirements listed in the following link
https://cms.paypal.com/it/cgi-bin/marketingweb?cmd=_rendercontent&content_ID=ua/BuyerProtection_full&locale.x=it_IT#11. Seller Protection
Programme
GestPay Technical Specifications for Payment Page
Page 30 of 111PAN
8.1 Seller Protection activation
PayPal Seller Protection option has to be enabled for the merchant from the
Bank Back Office.
The Merchant can decide for every transaction if use the “seller protection” or not
passing the new XML element ppSellerProtection to 1.
In addiction it's necessary to pass these values in the encryption call, so the
transaction have automatically the “Seller Protection” flag:
SHIPTONAME
SHIPTOSTREET
SHIPTOCITY
SHIPTOSTATE
SHIPTOZIP
SHIPTOCOUNTRYCODE
Transaction performed with PayPal Seller Protection will be marked in the Active
Report of Back Office Merchant with a flag
To pass the Seller Protection elements, it is necessary to configure the Fields
and parameters value in the proper way, each value has to be enabled as
parameter. See 12.3 Configuration of Fields & Parameters for detail.
GestPay Technical Specifications for Payment Page
Page 31 of 111PAN
8.2 Seller Protection example
Here an example of filled values. State and Country Code values are listed in
State Codes table and Country Code table. The field ShipToStreet2 is optional
<ecom:ppSellerProtection>1</ecom:ppSellerProtection>
<ecom:shippingDetails>
<ecom:shipToName>Mario Rossi</ecom:shipToName>
<ecom:shipToStreet>Via Roma,1</ecom:shipToStreet>
<ecom:shipToCity>Milano</ecom:shipToCity>
<ecom:shipToState>Milano</ecom:shipToState>
<ecom:shipToCountryCode>IT</ecom:shipToCountryCode>
<ecom:shipToZip>20121</ecom:shipToZip>
<ecom:shipToStreet2></ecom:shipToStreet2>
</ecom:shippingDetails>
GestPay Technical Specifications for Payment Page
Page 32 of 111PAN
9 Payment Type
GestPay merchants can be enabled to a growing set of payment methods.
When a buyer is redirected to the payment page of GestPay, it will be requested
to choose one payment method among all those available.
Merchants might want to offer this choice to their buyers directly on their web
sites, before sending them to GestPay.
GestPay provides a way for merchants to dinamically define which payment
methods must be displayed for each transaction.
When calling Encrypt method of WsCryptDecrypt web service, merchants can
declare the list of the payment methods that GestPay must show to the buyer for
that transaction.
In order to do that, merchants must properly set the tag "paymentType" that can
be repeated as many times as needed, inside the tag "paymentTypes" (with a
final "s").
GestPay will then propose to the buyer the choice among those payment
methods.
If only one value was set for "paymentType", GestPay will propose no
choice, and it will directly show that payment method to the buyer.
If no "paymentType" is specified by the merchant, GestPay will display the
payment methods accordingly to the default configuration set by the merchant in
the dedicated section of Merchant Back Office.
The values that can be used for "paymentType" tag are the following:
PaymentType
Description
BON
CREDITCARD
PAYPAL
MYBANK
UPMOBILE
MASTERPASS
CONSEL
S2PALI
S2PKLA
S2PQIW
S2PYAN
S2PSOF
S2PIDE
COMPASS
Money Transfer
Credit Card
PayPal
MyBank
Mobile - QRCode
MasterPass
Consel
ALIPAY (Alternatives)
KLARNA (Alternatives)
QIWI (Alternatives)
YANDEX (Alternatives)
SOFORT (Alternatives)
IDEAL (Alternatives)
COMPASS C-PAY
As an example, in order to show only Credit Card and MasterPass options to its
buyers, a merchant should call Encrypt method of WsCryptDecrypt web service
including the following XML tag:
<paymentTypes>
<paymentType>CREDITCARD</paymentType>
<paymentType>MASTERPASS</paymentType>
</paymentTypes>
Or, in order to offer only PayPal payment method, it should use the following tag:
GestPay Technical Specifications for Payment Page
Page 33 of 111PAN
<paymentTypes>
<paymentType>PAYPAL</paymentType>
</paymentTypes>
10 Payment Type Detail
Using Payment Types feature described above, in case of third-party payment
methods, merchants can hide the presence of GestPay, so that the buyers can
experience to be directly redirected by the merchant to the third party.
Merchants, indeed, will continue to redirect buyers to GestPay payment page,
but when GestPay finds that only one payment method is available for that
transaction, it will send the buyer to that option without displaying any user
interface.
If, for instance, the merchant sets <paymentType>PAYPAL</paymentType>,
when the buyer reaches GestPay payment page, it is immediately redirected to
PayPal, and its experience will be to have reached PayPal from the merchant's
site.
In case of MyBank and Ideal payment methods, there is one more step for the
buyers before being sent to the third-party processor: they must choose their
bank from a list of participating banks.
Merchants can embed this phase in their websites, in order to manage the
payment method choice and provide their buyers with the same experience of
direct connections to the third party processors.
This can be done through a feature called "Payment Type Detail"
Merchants are free to use this option or not: if they do not use it and they simply
set
<paymentType>MYBANK</paymentType>
or
<paymentType>IDEAL</paymentType> in their call to Encrypt method of
WsCryptDecrypt web service, then the buyer will find in GestPay a page where it
will choose its bank among those available for that kind of payment.
Merchants who want to use "Payment Type Detail" for MyBank and/or IDeal,
must be able to show to their buyers the list of the banks available for that kind of
Payment.
They can store the lists of those banks in their local storage (two distinct lists)
and keep the lists updated by periodically calling the methods CallIdealListS2S
and CallMyBankListS2S of WsS2S web service.
These methods will return a list of banks made like this:
<BankList>
<Bank>
<BankCode>Code0001</BankCode>
<BankName>Name of Bank 1</BankName>
</Bank>
...
<Bank>
<BankCode>Code0000N</BankCode>
<BankName>Name of Bank N</BankName>
</Bank>
</BankList>
There is no need to update the lists of the banks for each transaction.
GestPay Technical Specifications for Payment Page
Page 34 of 111PAN
One update every week is definitely enough, since the list of the banks
partecipating to MyBank and IDeal is not changing so quickly.
The update should consist of a complete replacement of each list with the new
values returned by WsS2S web service.
The merchant page should show the list of the BankNames and use the
corresponding BankCode.
The BankCode must be used for paymentTypeDetail tag, while calling the
Encrypt method of WsCryptDecrypt web service, as a value either for
MyBankBankCode or for IdealBankCode, depending on the payment method.
For example, for a MyBank transaction for which the buyer has chosen "Name of
Bank X", the merchant should call encrypt method with, among the others, these
values:
...
<paymentTypes>
<paymentType>MYBANK</paymentType>
</paymentTypes>
<paymentTypeDetail>
<MyBankBankCode>Code0000X</MyBankBankCode>
</paymentTypeDetail>
...
and, for an IDeal transaction for which the buyer has chosen "Name of Bank Y",
the merchant should call encrypt method with, among the others, these values:
...
<paymentTypes>
<paymentType>IDEAL</paymentType>
</paymentTypes>
<paymentTypeDetail>
<IdealBankCode>Code0000Y</IdealBankCode>
</paymentTypeDetail>
...
The field "PaymentTypeDetail" must be defined as "parameter" in Merchant Back
Office before it can be used by the merchant.
GestPay Technical Specifications for Payment Page
Page 35 of 111PAN
11 Fraud Prevention Configuration
This option gives the merchant a tool of fraud prevention linked to each
transaction, provided by RED.
Each merchant defines his own configuration on RED activation. Based on this
configuration some parameters has to be passed or not, for example
PC_FingerPrint.
For each order is possible to insert into the xml a set of parameters that let RED
the chance to evaluate the fraud risk linked to the order.
More information are provided to RED, more accurate is the risk evaluation.
Based on the collection and processing of this information, Red returns a risk
score (Accept, Deny, Challenge), which must be managed within the payment
flow performed by GestPay.
The merchant can decide the transaction behaviour based on the RED
Response. To define this behaviours Back Office Merchant provide a specific
configuration section [Configuration > Risk Management > RED] .
For each transaction the merchant can switch on the “Fraud Prevention by RED”
feature by sending in the request the new xml tag RedFraudPrevention valued to
1.
Along with the RedFraudPrevention tag valued to 1 to score the transaction for
fraud through RED GestPay need to receive these following information in the
encryption call:
Tag Name
Description
redFraudPrevention
Flag to activate Red Fraud Prevention
(redFraudPreventin=1)
Customer_Title
Customer Title
Customer_Name
Customer First Name
Customer_Surname
Customer Last Name
Customer_Email
Customer Email Address - value must
contain @
Customer_Address
Customer address line 1
Customer_Address2
Customer address line 2
Customer_City
Customer address city
Customer_StateCode
Customer address state code
Customer_Country
Customer Country Code - ISO-Alpha 3
(see par 18.2 RED Codes)
Customer_PostalCode
Customer Post/Zip Code
Customer_Phone
Customer Phone - no spaces
Shipping_Name
Shipping First Name
Shipping_Surname
Shipping Last Name
GestPay Technical Specifications for Payment Page
XML parent tag
Red_CustomerInfo: Set of tags
to define the Customer Identity
Red_ShippingInfo:Set of tags
to define the Shipping details
that can be different from the
Page 36 of 111PAN
Tag Name
Description
Shipping_Email
Shipping Email Address - value must
contain @
Shipping_Address
Shipping address line 1
Shipping_Address2
Shipping address line 2
Shipping_City
Shipping address city
Shipping_StateCode
Shipping address state code
Shipping_Country
Shipping Country Code - ISO-Alpha 3
Shipping_PostalCode
Shipping Post/Zip Code
Shipping_HomePhone
Shipping Home Phone - no spaces
Shipping_FaxPhone
Shipping Fax Phone - no spaces
Shipping_MobilePhone
Shipping Mobile Phone
Shipping_TimeToDeparture
Low Cost
C
Designated by
customer
D
International
I
Military
M
Next
Day/Overnight
N
Other
O
Store Pickup
P
2 day Service
T
3 day Service
W
Billing_Id
Billing ID
Billing_Name
Billing First Name
Billing_Surname
Billing Last Name
Billing_DateOfBirth
Billing DoB - format: YYYY-MM-DD
Billing_Email
Billing Email Address - value must
contain @
Billing_Address
Billing address line 1
Billing_Address2
Billing address line 2
Billing_City
Billing address city
Billing_StateCode
Billing address state code
Billing_Country
Billing Country Code - ISO-Alpha 3
Billing_PostalCode
Billing Post/Zip Code
Billing_HomePhone
Billing Home Phone - no spaces
Billing_WorkPhone
Billing Work Phone - no spaces
Billing_MobilePhone
Billing Mobile Phone
MerchantWebSite
Transaction Source Website
Customer_IpAddress
IP of customer - Format:
nnn.nnn.nnn.nnn
PC_FingerPrint
PC Finger Print (See PC Finger Print
Paragraph below), if the RED
GestPay Technical Specifications for Payment Page
XML parent tag
that can be different from the
Customer ones.
Red_BillingInfo: Set of tags to
define the billing informations
defining the billing references
and the billing address.
Red_CustomerData: Set of
tags to define the Customer
feature, in terms of computer
connection, new customer flag,
specific set of rules for non
usual orders if predefined with
Sella.
Page 37 of 111PAN
Tag Name
Description
XML parent tag
to fill this value, but for some reasons it's
left empty, then pay attention and fill
Red_ServiceType=N to avoid error
PreviousCustomer
Previous Customer Flag - format Y or N
Red_Merchant_ID
Optional only for merchant with a
specific set of rules (Code provided by
Sella)
Red_ServiceType
Optional only for merchant with a
specific set of rules (Code provided by
Sella)
UserCustomData (*)
Custom Data Fields (Zero or more
repetitions)
NumberOfItems
Required to specify the number of
repeating item tags max value 99
Item_ProductCode
Item Product Code
Item_StockKeepingUnit
Item Stock Keeping Unit
Item_Description
Item Description
Item_Quantity
Item quantity - 1 should be sent as
10000
Item_UnitCost (100=1€)
Item cost amount - €5.00 should be
sent as 50000
Item_TotalCost
Total Item Amount (item qty x item cost
amt), no decimal
Item_ShippingNumber
Item shipping/tracking number
Item_GiftMessage
Item gift message
Item_PartEAN_Number
Item Park or EAN Number
Item_ShippingComments
Item Shipping Comments
Red_CustomInfo: Set of al last
25 tag predefined with Sella, in
which each merchant could pass
specific information that could
be useful for the risk evaluation.
Red_Items: Specify how many
Red_Idem tags will be pass
Red_Item: Set of tags to define
the Item feature, there are the
most common attributes useful
to describe every kind of
product.
(*) This field could be repeated 25 times to pass custom information.
The fraud check is made before processing the order.
Transaction performed with RED check will be marked in the Active Report of
Back Office Merchant with a flag
Each Red related tag must be set up as "Parameter" in the Payment Page >
Fields & Parameter section on the Back Office environment, please see 11.3.4
Configuration of Fields & Parameters for further details.
The RED response will be used to define the transaction life.
Based on the RED response the merchant could configure the GestPay
behaviour regarding the transaction.
See par 11.5 "RED configuration" to define this feature.
GestPay Technical Specifications for Payment Page
Page 38 of 111PAN
11.1 PC Finger Print
This value is obtained by a third-party object, developed by iovation, to obtain
device information.
Web applications obtain device information by sourcing dynamically generated
JavaScript from iovation,called snare.js. The JavaScript determines what
information is available and generates a black box from all available
sources.
There are three ways to obtain a black box from snare.js.
• Include and specify a hidden form field that will be populated with
the value
• Create a JavaScript callback function to collect/process the
blackbox as it is
generated
• Call the JavaScript function ioGetBlackbox to obtain the blackbox
as needed.
For further information about Iovation integration please see RM Channel
Integration Guide v3.4.pdf.
GestPay Technical Specifications for Payment Page
Page 39 of 111PAN
11.2 Accreditation Tests
The purpose of the accreditation is to ensure clients have developed their
interface to meet RED's requirements.
Clients are expected to demonstrate that they can process good transactions.
Each test section has a column available to provide the RED_ID so that RED
can validate the test results.
Please send these completed section back to BancaSella once you have
completed your tests.
Test No.
POS001
POS002
POS003
POS004
Positive Response Testing
Istruction
RED_ID
Send a transaction using
[email protected]
Send a transaction using
[email protected]
Send a transaction using
[email protected]
Send a transaction with every field you will be sending
to ReD
GestPay Technical Specifications for Payment Page
Page 40 of 111PAN
12 Consel "Rate in Rete" integration
Consel integration let the buyer to choose between two different payment
method, the "Linea Revolving" and "Prestito Finalizzato".
The Credit line is request directly from the buyer, using the Consel web form.
If the buyer has an open credit line with Consel, "Linea Revolving" solution, the
buyer uses this active credit line, so the transaction response is immediate, like
using a CreditCard.
If the buyer has not a open credit line, he can perform the payment using
"Prestito Finalizzato" that proceeds with a money request using the web
interface. For this payment solution Consel takes some days to return back a
response. So in GestPay the transaction will be displayed as "Pending" until
Consel responses back "OK" for the credit line request.
GestPay will expose the Consel option between the Payment method in the
payment page.
If the buyer chose Consel GestPay redirect him to Consel web sites where he
can login to the reserved area to fill up the form to use an existing credit line or
request a new one.
GestPay will expose, via web service, all the fields that Consel needs to perform
a payment authorization, both mandatory and optional ones.
GestPay Technical Specifications for Payment Page
Page 41 of 111
12.1 Consel Payment Method activation
In order to receive Consel "Rate in Rete" payments the merchant must:
On the Merchant Back Office environment
1. activate his account in the Configuration > Environment > Payment
Methods section
2. set up as "Parameter" the fields ConselMerchantPro on the Payment
Page > Fields & Parameter section
Note.
For changes to take effect, the page must be published.
On the Encrypt method of the WSCryptDecrypt web service
1. value the Consel_MerchantPro tag with the "Codice Promozione" given
by Consel itself, this value will be validate runtime during the encrypt
request.
2. The transaction amount have to be upper than 150 Euro
If any of the requirements above are satisfied and the page is displayed in
Italian, the "Rate in Rete" payment method will be present in the check out
page.
In order to give to the buyer a better experience during the form filling the
merchant may send additional information through the Consel_CustomerInfo
tags.
Before sending it the field ConselCustomerInfo must be set up as parameter on
the Payment Page > Fields & Parameter section.
GestPay Technical Specifications for Payment Page
Page 42 of 111
12.2 Consel "Rate in Rete" example
Here an example of filled values.
<Consel_MerchantPro>WIK</Consel_MerchantPro>
<Consel_CustomerInfo>
<Surname>Rossi</Surname>
<Name>Mario</Name>
<TaxationCode>RSSMRA70D23H501H</TaxationCode>
<Address>Via Torino</Address>
<City>Roma</City>
<StateCode>RM</StateCode>
<DateAddress>11/04/1999</DateAddress>
<Phone>0632...</Phone>
<MobilePhone>331...</MobilePhone>
</Consel_CustomerInfo>
GestPay Technical Specifications for Payment Page
Page 43 of 111
13 PayPal Reference Transaction
A Buyer will be able to subscribe a Billing Agreement on PayPal website so
authorizing the Merchant to debit his/her PayPal account in future transactions.
13.1 PayPal Reference Transaction activation
To use PayPal Reference Transaction it's necessary to fill the tag
PayPalBillingAgreementDescription that can be present or not (in case of a
normal PayPal payment it will be left empty or not passed at all).
The Encryption service, if field payPalBillingAgreementDescription is present
and not empty, assumes that the payment method is PayPal (so paymentType
field in this case is not mandatory: if present it must be valued PAYPAL).
If this tag is passed to Encryption, GestPay bypasses the Pagam page in every
case (even if other payment methods are enabled for the Merchant).
This tag has to be filled with description of the goods, terms and conditions of
the billing agreement:
<payPalBillingAgreementDescription>description of the agreement
</payPalBillingAgreementDescription>
GestPay Technical Specifications for Payment Page
Page 44 of 111
14 Alternative Payments integration
Alternative payment methods option has to be enabled for the merchant from
the Bank Back Office.
Alternatives can be used only from gestpay payment page interface but if
needed the payment type can be used to have a frictionless payment directly to
the payment method selected.
A merchant will be able to use the following alternatives payments:
14.1 Alternative Payments activation
After the activation from the bank office It is necessary to fill and send to gestpay
some specific parameters in order to use alternatives Payments and make a
new page to force the use of the <OrderDetails> tag.
For each order is possible to insert into the xml a set of parameters, most of the
parameters needed are in the tag < OrderDetails>.
OrderDetails
CustomerDetail
ProfileID
MerchantCustomerID
FirstName
MiddleName
Lastname
PrimaryEmail
SecondaryEmail
PrimaryPhone
12
50
65
65
65
100
100
20
SecondaryPhone
DateOfBirth
Gender
20
10
1
SocialSecurityNumber
20
Company
ShippingAddress
ProfileID
FirstName
MiddleName
Lastname
StreetName
Streetname2
HouseNumber
HouseExtention
City
ZipCode
State
CountryCode
Email
PrimaryPhone
SecondaryPhone
255
12
65
65
65
100
100
5
5
50
50
50
2
100
20
20
Customer profile ID (future use)
Merchant customer ID (future use)
Customer First Name
Customer Middle Name
Customer Last name
Customer primary email
Customer secondary email
Customer's phone including prefix
Customer's phone including prefix
Customer Date of Birth (dd/mm/yyyy)
Customer Gender (0=Male 1=Female)
Customer's social or fiscal identifier (for Klarna
Use)
Customer Company
Profile ID (future use)
First Name
Middle Name
Last name
Shipping Street
Shipping Street second line
Shipping City
Shipping Zip Code
Shipping State
Alpha-2 code example for US is “US”
Shipping Contact Email
Shipping Primary Phone
Shipping Secondary Phone
GestPay Technical Specifications for Payment Page
Page 45 of 111
BillingAddress
ProfileID
FirstName
MiddleName
Lastname
StreetName
Streetname2
HouseNumber
HouseExtention
City
ZipCode
State
CountryCode
Email
PrimaryPhone
SecondaryPhone
ProductDetails
ProductDetail <1...N>
ProductCode
SKU
Name
Description
Quantity
Price
UnitPrice
12
65
65
65
100
100
5
5
50
50
50
2
100
20
20
Profile ID (future use)
First Name
Middle Name
Last name
Shipping Street
Shipping Street second line
12
50
100
255
3
12
12
Article’s product Code
Article’s Stock Keeping Unit
Article’s name
Article’s description
The number of products
Article’s price
Article’s Unit Price
The type of article:
1-product, 2-shipping, 3-handling
Value-Added Tax (the value of the tax)
The amount offered by you as discount
Type
2
Vat
Discount
2
2
BillingCity
BillingZip Code
BillingState
Alpha-2 code example for US is “US”
GestPay Technical Specifications for Payment Page
Page 46 of 111
Here below the specific tag needed for each one:
14.2 Sofort Banking
do not need mandatory parameters but if you send these few parameters:
•
•
•
•
CustomerDetail.FirstName
CustomerDetail.Lastname
CustomerDetail.PrimaryEmail
BillingAddress.CountryCode
you can have a frictionless call directly to the first screen of SOFORT where authentication data
are asked.
This mean that no others values are asked to the buyers but if these field are not sent with the
payment a page will be displayed in order to ask the necessary fields like Name and Email of the
buyer.
Credential Test Environment
You can use the following parameters value in order to test Sofort in test (testecomm.sella.it)
environment. Use low amount like 10.00 EUR.
When landing of Sofort payment select or insert the following value in order to have a successful
test payment :
Credential test values
Field
Value
Country
Germany
Bank
Name
88888888
Account Number
00000
PIN
00000
Transaction confirmation TAN
12345
GestPay Technical Specifications for Payment Page
Page 47 of 111
14.3 Ideal
do not need any mandatory parameters in a middle page the bank of the
buyer will be asked in order to continue the payment.
Credential Test Environment
You can use the following parameters value in order to test Ideal in test (testecomm.sella.it)
environment. Use low amount like 10.00 EUR.
When landing of Ideal payment page:
• Select the bank do you prefer in the middle page and then follow the instruction in order
to have a successful test payment.
GestPay Technical Specifications for Payment Page
Page 48 of 111
14.4 Klarna
need some mandatory parameters so if you want Klarna payment will be
available for the buyer these parameters must be provided otherwise Klarna will not be available
for payment or fails.
Mandatory parameters
• BillingAddress.CountryCode possible values [AT|DK|FI|DE|NL|NO|SE]
• PruductDetails.ProductDetail [1….N]
You can also send these parameters if present in your system but are not mandatory in this way
the buyer found the fields already filled in Klarna authentication page.
•
•
•
•
•
•
•
•
•
CustomerDetail.FirstName
CustomerDetail.LastName
CustomerDetail.PrimaryEmail
CustomerDetail.SocialSecurityNumber
BillingAddress.StreetNumber
String ^.{1,65}$
String ^.{1,65}$
BillingAddress.StreetName
BillingAddress.City
BillingAddress.ZipCode
Please note that the articles from the Shopping Chart have to be sent in the XML post using the
tag ProductDetails like below:
<ecom:OrderDetails>
……
<ecom:ProductDetails>
<ecom:ProductDetail>
<ecom:ProductCode>1</ecom:ProductCode>
<ecom:SKU></ecom:SKU>
<ecom:Name>TV2000</ecom:Name>
<ecom:Description>Television</ecom:Description>
<ecom:Quantity>1</ecom:Quantity>
<ecom:Price>100</ecom:Price>
<ecom:UnitPrice>100</ecom:UnitPrice>
<ecom:Type>1</ecom:Type>
<ecom:Vat>10</ecom:Vat>
<ecom:Discount>0</ecom:Discount>
</ecom:ProductDetail>
</ecom:ProductDetails>
….
</ecom:OrderDetails>
•
•
•
The total value for the ProductDetails needs to be the same as the total amount sent
otherwise the transaction fails.
The Discount is a percentage and must be considered in the Total Amount Value.
For example if the Quantity is 1 the Price is 10 and the Discount is 10(%) the Total Amount
of the transaction must be 9 otherwise the transaction is refused.
GestPay Technical Specifications for Payment Page
Page 49 of 111
Credential for Test Environment
You can use the following parameters value in order to test Klarna in test (testecomm.sella.it)
environment. Use low amount like 10.00 EUR.
Remember to set the mandatory field :
•
•
BillingAddress.CountryCode = ‘SE’
PruductDetails.ProductDetail [1….N]
When landing of Klarna payment page use the following parameter to fill the field or send it
directly in the parameters like as described above in order to have a successful test payment:
Credential test values
Field
Value
Personal Number
410321-9202
First Name
Testperson-se
Last Name
Approved
Street
Stårgatan 1
Zip Code
12345
City
Ankeborg
Phone Number
0765260000
Email
[email protected]
GestPay Technical Specifications for Payment Page
Page 50 of 111
14.5 Qiwi
do not need mandatory parameters but if you send these few parameters
•
•
:
CustomerDetail. PrimaryPhone
BillingAddress.CountryCode
you can have a frictionless call directly to the first screen of QIWI where authentication data are
asked.
This mean that no others values are asked to the buyers but if these field are not sent with the
payment a page will be displayed in order to ask the necessary fields like Phone and
CountryCode of the buyer.
Credential for Test Environment
You can use the following parameters value in order to test Qiwi in test (testecomm.sella.it)
environment. Use very low amount like 0.10 EUR.
If you use RUB currency the minimum amount must be bigger then 3 RUB and not bigger then
10 RUB.
•
•
Send this value “RU” on BillingAddress.CountryCode
Send this value “[email protected]” on CustomerDetail.PrimaryEmail or fill it in
the middle page
When landing of Qiwi payment page use the following parameter to fill the field or send it
directly in the parameters like as described above in order to have a successful test payment:
Credential test values
Field
Value
Phone number
+7 8000005108
Password
Qazxsw21
Checkout SMS code
975651
GestPay Technical Specifications for Payment Page
Page 51 of 111
14.6 Yandex
do not need mandatory parameters but if you send these few parameters
•
CustomerDetail.PrimaryEmail
you can have a frictionless call directly to the first screen of Yandex where authentication data
are asked.
This mean that no others values are asked to the buyers but if these field are not sent with the
payment a page will be displayed in order to ask the necessary fields like Email of the buyer.
Credential Test Environment
You can use the following parameters value in order to test
environment. Use very low amount like 10.00 EUR.
•
Yandex in test (testecomm.sella.it)
Send this value “[email protected]” on CustomerDetail.PrimaryEmail or fill it in
the middle page
When landing of Yandex payment page use the following parameter to fill the field or send it
directly in the parameters like as described above in order to have a successful test payment:
Credential test values
Field
Value
User
smart2pay.wallet
Password
yandex.money2013
Payment Password
yandexmoney
GestPay Technical Specifications for Payment Page
Page 52 of 111
14.7 AliPay
do not need any mandatory parameters in a middle page the bank of
the buyer will be asked in order to continue the payment.
Credential Test Environment
Alipay do not have credential for test you can only landing on payment page.
GestPay Technical Specifications for Payment Page
Page 53 of 111
15 Merchant’s Profile
Each merchant can configure his/her profile by accessing the GestPay Back
Office environment at:
https://ecomm.sella.it/backoffice for production shops
https://testecomm.sella.it/backoffice for test shops
Some settings regard the procedure and the information that must be sent to or
will be returned by GestPay.
GestPay Technical Specifications for Payment Page
Page 54 of 111
15.1 Authentication configuration
GestPay identifies the merchant requesting the encryption service through the
WSCryptDecrypt web service by comparing the calling server IP address to the
IP addresses configured in the profile associated with the Shop Login used for
the call. If the calling server is not recognised, the transaction process ends and
a specific error is returned.
In the Configuration – IP Addresses section of the Back Office environment, the
merchant can enter up to a maximum of 10 IP addresses (if calls to GestPay
originate from a server farm).
Configuration – IP Addresses
GestPay Technical Specifications for Payment Page
Page 55 of 111
15.2 Configuration of response url and e-mail
GestPay communicates the transaction result with a server-to-server call to the
page specifically prepared by the merchant and by directing the buyer’s browser
to the pages configured by the merchant (different pages for positive or negative
results).
In the Configuration – Responses section in the Back Office environment, it is
possible to specify the URLs used by the system to communicate the
transaction result.
In this section it is also possible to specify the addresses that will be used for
notifications via e-mail.
Configuration – Responses
GestPay Technical Specifications for Payment Page
Page 56 of 111
15.3 Configuration of Fields & Parameters
Merchants can define the transaction structure (specifying what information
beside the required information will have to be sent to GestPay) by configuring
in the Back Office environment what information is to be sent in phase I and
what information must be returned when the transaction result is communicated.
This system allows the merchant to customise the transaction structure with
proprietary information that will be stored in the GestPay archives and will allow
each transaction to be identified using customised search keys. Moreover,
customised information can be returned with the transaction result
communication, thus allowing the merchant’s information system to manage
this information appropriately.
Merchant’s profile configuration - Fields & Parameters
GestPay Technical Specifications for Payment Page
Page 57 of 111
15.3.1 Tokenization set Fields & Parameters
In order to be able to request, obtain and use a Token, merchants need to
appropriately set their “Fields and Parameters” in the dedicated section of
GestPay Merchant Back Office.
Then the merchant has to create a new page in the Back Office Interface to see
the Tokenization features in the list of the parameters.
Following settings must be applied (for changes to take effect, the page must be
published):
Field
Token Request
Settings
PARAMETER = TRUE
Notes
This allows merchants to request a new
token
GestPay Technical Specifications for Payment Page
Page 58 of 111
15.3.2 Seller Protection set Fields & Parameters
In order to use "Pay Pal seller Protection" feature payments merchants must
create a new payment page and set up as "Parameter" all the fields in the list
below through the Payment Page > Fields & Parameter section of the Merchant
Back Office
Note.
For changes to take effect, the page must be published.
Field
Settings
Notes
PayPal Seller
Protection
Ship To City
Ship To Country
Code
Ship To Name
Ship To State
Ship To Street
Ship To Street2
Ship To Zip
PARAMETER = TRUE
PARAMETER = TRUE
PARAMETER = TRUE
This allows merchants to activate Seller
Protection
Ship To City value
Ship to Country Code Value
PARAMETER = TRUE
PARAMETER = TRUE
PARAMETER = TRUE
PARAMETER = TRUE
PARAMETER = TRUE
Ship To Name value
Ship To State value
Ship To Street Value
Optional fields for Ship to Street Value
Ship To Zip value
GestPay Technical Specifications for Payment Page
Page 59 of 111
15.3.3 Payment Options Visibility set Fields & Parameters
In order to configure Payment Options Visibility for the payment page of a
transaction, merchants need to appropriately set their “Fields and Parameters”
in the dedicated section of GestPay Merchant Back Office.
Following settings must be applied (for changes to take effect, the page must be
published):
Field
Settings
Notes
PaymentTypes
PARAMETER = TRUE
This allows merchants to insert a tag
<paymentType>?</paymentType> for
each payment method he wants to show
on the payment page
GestPay Technical Specifications for Payment Page
Page 60 of 111
15.3.4 Payment Type Detail set Fields & Parameters
In order to configure Payment Type Detail for the payment page of a
transaction, merchants need to appropriately set their “Fields and Parameters”
in the dedicated section of GestPay Merchant Back Office.
Following settings must be applied (for changes to take effect, the page must be
published):
Field
Settings
Notes
PaymentTypeDetail
PARAMETER = TRUE
This allows merchants to insert a tag
<paymentTypeDetail.MyBankBankCode
> or
<paymentTypeDetail.IdealBankCode> to
specify the Bank Code to use in the
payment page
GestPay Technical Specifications for Payment Page
Page 61 of 111
15.3.5 RED Fraud Prevention set Fields & Parameters
In order to use "RED Fraud Prevention" feature merchants must create a new
payment page and set up as "Parameter" all the fields in the list below through
the Payment Page > Fields & Parameter section of the Merchant Back Office.
To perform RED checks the
redFraudPrevention tag valued to 1
Field
authorization
request
Settings
RED_FRAUDPREVENTION PARAMETER = TRUE
must
contain
Notes
Flag to define if the transaction will be
performed with Red control
RED_BILLINGINFO
PARAMETER = TRUE
Billing tag enabled into XML (tag
Red_BillingInfo)
RED_CUSTOMERINFO
PARAMETER = TRUE
Customer data tag enabled into XML
(tag Red_CustomerInfo)
RED_CUSTOMERDATA
PARAMETER = TRUE
Customer data tag enabled into XML
(tag Red_CustomerData)
RED_SHIPPINGINFO
PARAMETER = TRUE
Shipping info tag enabled into XML (tag
Red_ShippingInfo)
RED_CUSTOMINFO
PARAMETER = TRUE
Customer info tag enabled into XML (tag
Red_CustomInfo)
RED_ITEMS
Items tag enabled into XML (tag
Red_Items), this tag colud contain a
PARAMETER = TRUE
variable number of tagset defined by the
Red Field OI_REPEAT
This parameters are a little bit different from the standard parameters defined in
Gest Pay, as a matter of fact these parameters don't correspond field to field to
XML tag, but each parameter is related to a Node (with a correspondent name)
that contains a set of tag specified in this document.
This is done because there are a lot of field for RED configuration (about one
hundred) grouped into categories, a parameter is defined for each category.
For changes to take effect, the page must be published.
GestPay Technical Specifications for Payment Page
Page 62 of 111
15.3.6 Consel "Rate in Rete set Fields & Parameters
In order to configure Consel "Rate in Rete" for the payment page of a
transaction, merchants need to appropriately set their “Fields and Parameters”
in the dedicated section of GestPay Merchant Back Office.
Following settings must be applied (for changes to take effect, the page must be
published):
Field
Settings
Notes
ConselMerchantPro
PARAMETER = TRUE
Merchant Pro code to pass in the
encrypt to show Consel "Rate in Rete" in
the payment page (tag
Consel_MerchantPro)
ConselCustomerInfo
PARAMETER = TRUE
Customer Info data tag enabled into
XML (tag Consel_CustomerInfo)
GestPay Technical Specifications for Payment Page
Page 63 of 111
15.3.7 PayPal Reference Transaction set Fields & Parameters
In order to configure PayPal Reference Transaction for the payment page of a
transaction, merchants need to appropriately set their “Fields and Parameters”
in the dedicated section of GestPay Merchant Back Office.
Following settings must be applied (for changes to take effect, the page must be
published):
Field
Settings
Notes
PayPallBillingAgreem
ent
PARAMETER = TRUE
a description of the goods, terms and
conditions of the billing agreement
GestPay Technical Specifications for Payment Page
Page 64 of 111
16 Software Requirements
GestPay software requirements concern the buyer’s browser and the server
hosting the virtual store.
GestPay applies TSL1.1 protocol or latest. However, the system has to be
updated to the last security patch, so it's mandatory to verify the compatibility in
the test environment.
16.1 Buyer browser requirements
GestPay's domains are associated with a 256-bit SHA-2 and extended versions
SSL digital certificates issued by Verising.
GestPay applies TSL1.1 protocol or latest.
Buyer's browsers must support this level of encryption and must accept cookies
and Javascript.
Supported Browser:
Internet Explorer (IE) 10* or higher
Mozilla - Firefox 23* or higher
Google Chrome 26 or higher
Safari 7 or higher
* The TSL 1.1 protocol is disable by default, so it's necessary to enable it
16.2 Merchant server requirements
Check with the server administrator that the computer can reach the following
addresses:
PROD
HTTP
(port 80)
http://ecomms2s.sella.it/testhttp/test.asp
HTTPS
(port 443)
https://ecomms2s.sella.it/testhttps/test.asp
GestPay Technical Specifications for Payment Page
TEST
http://testecomm.sella.it/test
http/test.asp
https://testecomm.sella.it/test
https/test.asp
Page 65 of 111
17 Table of Errors
Code
Description
0
Transaction correctly processed
10
Payment page correctly loaded
57
Blocked credit card
58
Confirmed amount exceeds authorized amount
63
Demand for settlement of one nonexistent transaction
64
Expired preauthorization
65
Wrong currency
66
Preauthorization already notified
74
Authorization denied
97
Authorization denied
100
Transaction interrupted by bank authorizative system
150
Wrong merchant configuration in bank authorizative system
208
Wrong expiry date
212
Bank authorizative system not available
251
Insufficient credit
401
Call credit card company
402
Call credit card company
403
Technical error
404
Collect card
405
Authorization refused by credit card companies
406
Technical error
409
Technical error
412
Technical error
413
Technical error
414
Card not recognized
415
Technical error in connection with Credit Card Company network
416
Pin errato
417
Authorization denied
418
Network not available
419
Wrong transaction date
420
Wrong card date
430
Technical error
431
Technical error in connection with Credit Card Company network
433
Card expired
434
Authorization refused by credit card companies
435
Authorization refused by credit card companies
436
Card not qualified
437
Operation not allowed
438
Operation not allowed
GestPay Technical Specifications for Payment Page
Page 66 of 111
Code
Description
439
Card not recognized
441
Blocked credit card
443
Blocked credit card
451
Amount not available
454
Card expired
455
Operation not performed
456
Card not recognized
457
Authorization refused by credit card companies
458
Wrong merchant configuration in bank authorizative system
461
Amount not available
462
Blocked credit card
468
Bank authorizative system not available
475
Operation not allowed
490
Technical error
491
Technical error in connection with Credit Card Company network
492
Technical error in connection with Credit Card Company network
494
Technical error
552
MyBank payment not completed
553
MyBank payment abandoned by buyer
600
Technical error
613
Technical error
614
Technical error
810
Bank authorizative system not available
811
Wrong merchant configuration in bank authorizative system
901
Authorization denied
902
Authorization denied
903
Authorization denied
904
Authorization denied
905
Authorization denied
906
Authorization denied
907
Authorization denied
908
Authorization denied
910
Authorization denied
911
Authorization denied
913
Authorization denied
914
Authorization denied
915
Authorization denied
916
Authorization denied
917
Authorization denied
918
Authorization denied
919
Authorization denied
920
Authorization denied
GestPay Technical Specifications for Payment Page
Page 67 of 111
Code
Description
950
Not qualified credit card
951
Wrong merchant configuration in bank authorizative system
998
Credit card with wrong check-digit
999
Operation not performed
1100
Empty parameter string
1101
Invalid format of parameter string
1102
No parameter name precedes = symbol
1103
Parameter string ending with a separator
1104
Invalid parameter name
1105
Invalid parameter value
1106
Repeated parameter name
1107
Unexpected parameter name. Please double check Fields and Parameters
configuration in Back Office.
1108
Compulsory parameter not set
1109
Missing parameter
1110
Missing PAY1_UICCODE parameter
1111
Invalid currency code
1112
Missing PAY1_AMOUNT parameter
1113
Not numeric amount
1114
Amount with a wrong number of decimal digits
1115
Missing PAY1_SHOPTRANSACTIONID parameter
1116
Too long PAY1_SHOPTRANSACTIONID parameter
1117
Invalid language identifier
1118
Not numeric characters in credit card number
1119
Credit card number with wrong length
1120
Credit card with wrong check-digit
1121
Credit card belongs to a Company not enabled
1122
Expiry year without expiry month
1123
Expiry month without expiry year
1124
Invalid expiry month
1125
Invalid expiry year
1126
Expired expiry date
1127
Invalid cardholder email address
1128
Too long parameter string
1129
Too long parameter value
1130
Not accepted call: missing parameter A
1131
Not accepted call: Shop not recognized
1132
Not accepted call: shop is not in active state
1133
Not accepted call: missing parameter B
1134
Not accepted call: empty parameter B
1135
Not accepted call: other parameters beside A and B are present
1136
Not accepted call: transaction did not begin with a call to server-server
GestPay Technical Specifications for Payment Page
Page 68 of 111
Code
Description
cryptography system
1137
Not accepted call: transaction already processed before
1138
Not accepted call: card number or expiry date are missing
1139
Not accepted call: missing published payment page
1140
Transaction cancelled by buyer
1141
Not accepted call: input parameter string not acceptable
1142
Not accepted call: invalid IP Address
1143
Transaction abandoned by buyer
1144
Compulsory field not set
1145
Invalid OTP
1146
Too small amount
1147
Too big amount
1148
Invalid cardholder name
1149
Missing or wrong CVV2
1150
IPIN must be set
1151
Parameters error
1153
GestPay failed to verify if the card is enrolled to VBV service
1154
Not accepterd call: missing parameter TransKey
1160
Wrong CustomToken length
1161
Wrong CustomToken digits number
1162
CustomToken with illegal characters
1163
CustomToken used for another card
1164
Expired Token
1165
Token not found
1200
No match between ABI code and BankPass Banks
1201
BankPass Transaction abandoned by buyer
1202
BankPass - Buyer login failed
1203
BankPass - no payment methods available
1204
BankPass - technical error
1205
BankPass Server-Server: URL Return must be set
1206
BankPass Server-Server: too long URL Return (max 250 char)
1207
BankPass Server-Server: invalid URL Return (it must begin with http:// or
https://)
1208
BankPass Server-Server: URL Return parameter missing
1209
BankPass Server-Server: IDBankPass must be set
1210
BankPass Server-Server: invalid IDBankPass
1300
Shipping Address Country Error
1301
Shipping Address1 Empty
1302
Shipping Address City Empty
1303
Shipping Address State Empty
1304
Shipping Address Postal Code Empty
1305
Shipping Address Country Empty
GestPay Technical Specifications for Payment Page
Page 69 of 111
Code
Description
1306
Shipping Address Invalid City State Postal Code
1987
Technical error
1999
Technical error in connection with Credit Card Company network
2000
Transaction exceeds maximum operations number in time period
2001
Transaction exceeds maximum number of operations performed by the same
buyer in time period
2002
Transaction exceeds maximum amount in time period
2003
Transaction exceeds maximum amount payable by same buyer in time period
2004
Transaction contains a field value that had been declared not acceptable
2005
Buyer abandoned the transaction because it was double
2006
Wrong line length
2007
Wrong value in SHOPTRANSACTIONID field
2008
Wrong value in CURRENCY field
2009
Wrong value in AMOUNT field
2010
Wrong value in AUTHORIZATION DATE field
2011
Transaction not found
2012
Transaction ambiguous
2013
Text file contains more rows related to the same transaction
2014
You requested a refund operation with an amount exceeding transaction
balance
2015
Wrong value in BANKTRANSACTIONID field
2016
Fields BANKTRANSACTIONID and SHOPTRANSACTIONID are empty
2017
Transaction can not be deleted
2018
Transaction can not be refunded
2019
Transaction can not be settled
2020
Transaction can not be renounced
2030
Due to RED configuration, transaction is sent to credit card companies, even
if 3d-Secure authentication is failed
4001
Unexpected parameter value
4002
Not numeric parameter value
4100
Operation not allowed
4101
Credit card number with wrong length
4102
Amount not available
4103
Technical error
4104
Technical error
4105
Technical error
4106
Technical error
4108
Technical error in connection with Credit Card Company network
4109
Technical error
4200
Technical error
4201
Technical error
4202
Technical error
GestPay Technical Specifications for Payment Page
Page 70 of 111
Code
Description
4203
Call credit card company
4204
Operation not allowed
4205
Operation not allowed
4206
Credit card with wrong check-digit. Please double-check the credit card
number typed in.
4207
Technical error
4208
Operation not allowed
4209
Technical error
4300
Technical error
4301
Too big amount
4302
Technical error
4303
Operation not allowed
4304
Technical error
4305
Authorization refused by credit card companies
4306
Operation not allowed
4307
Technical error
4308
Operation not allowed
4309
Too big amount
4400
Wrong transaction date
4401
Wrong expiry date
4402
Technical error in connection with Credit Card Company network
4403
Technical error
4404
Technical error
4405
Operation not allowed
4406
Operation not allowed
4407
Amount not available
4408
Operation not allowed
4409
Operation not allowed
4500
Technical error
4501
Technical error
4502
Technical error
4503
Operation not allowed
4504
Operation not allowed
4505
Operation not allowed
4506
Technical error
4507
Technical error
4508
Operation not allowed
4604
Technical error
4701
Operation not allowed
4702
Wrong expiry date
4703
Card not qualified
4704
Amount not available
GestPay Technical Specifications for Payment Page
Page 71 of 111
Code
Description
4705
Technical error in connection with Credit Card Company network
4706
Technical error in connection with Credit Card Company network
4707
Transaction already processed
4708
MyBank: communication with the buyer's Bank failed
4709
Ideal: communication with the buyer's Bank failed
4710
PayPal Error
4720
Rate in Rete: communication with Consel failed
4730
C-pay: communication with Compass failed
4731
Not authorized transaction by Compass
7400
Authorization denied
7401
Authorization refused by credit card companies
7402
Card not qualified
7403
Card not recognized
7404
Card expired
7405
Call credit card company
7406
Wrong card date
7407
Wrong transaction date
7408
System error
7409
Merchant not recognized
7410
Invalid format
7411
Amount not available
7412
Not settled
7413
Operation not allowed
7414
Network not available
7415
Collect card
7416
PIN attempts exhausted
7417
Blocked terminal
7418
Forcedly Closed terminal
7419
Not permitted transaction
7420
Not authorized transaction
7421
Service interrupted at 01/01/2002
7500
Authorization denied
7600
Authorization denied
8000
File correctly processed
8001
Header/bottom record not found
8002
Merchant code not set
8003
Incorrect row number
8004
Incorrect file format
8005
Merchant not enabled
8006
Verify By Visa
8007
Feature disabled for VISA credit card
8008
Feature disabled
GestPay Technical Specifications for Payment Page
Page 72 of 111
Code
Description
8009
Payment interrupted
8010
Wrong credit card number for this transaction
8011
Transaction correctly received
8012
Authorization not found
8013
Settlement not found
8014
Settlement amount > Authorization amount
8015
Refund amount > balance
8016
Transaction without settlement
8017
File waiting to be processed
8018
File correctly processed
8021
Feature disable for MASTERCARD credit card
8022
Feature disable for JCB credit card
8023
Feature disabled for MAESTRO cards
8888
UP Mobile Payment
9991
Browser not supported
9992
Error creating iFrame
9997
Phase with error
9998
Phase correctly ended
9999
System Error
Note.
The error codes returned by GestPay are constantly updated.
If an error code returned by the procedure is missing, please check “Error
codes” entry contained in the “Help On Line” section in the Merchant Back
Office environment.
GestPay Technical Specifications for Payment Page
Page 73 of 111
18 Table of currency codes
Currency codes are handled by GestPay using the currency attribute.
Code UIC
ISOCODE
DESCRIPTION
109
AUD
Australia Dollar
234
BRL
Brazil Real
12
CAD
Canada Dollar
3
CHF
Switzerland Franc
144
CNY
China Yuan Renminbi
223
CZK
Czech Republic Koruna
7
DKK
Denmark Krone
242
EUR
Euro Member Countries
2
GBP
United Kingdom Pound
103
HKD
Hong Kong Dollar
153
HUF
Hungary Forint
18
ITL
Italian Lira
71
JPY
Japan Yen
8
NOK
Norway Krone
237
PLN
Poland Zloty
244
RUB
Russian Ruble
9
SEK
Sweden Krona
124
SGD
Singapore Dollar
1
USD
United States Dollar
GestPay Technical Specifications for Payment Page
Page 74 of 111
19 Table of Language Codes
The language code is handled by GestPay using the Language attribute.
Code
1
2
3
4
5
Description
Italian
English
Spanish
French
German
GestPay Technical Specifications for Payment Page
Page 75 of 111
20 Table of 3D-Secure Codes
The 3d-Secure code is handled by GestPay using the VbV attribute.
Code
OK
KO
Description
3d-Secure certified transaction
Transaction not 3d-Secure certified
GestPay Technical Specifications for Payment Page
Page 76 of 111
21 Table of PayPal Seller Protection State Codes
State Code
Agrigento
Alessandria
Ancona
Aosta
L'Aquila
Arezzo
Ascoli Piceno
Asti
Avellino
Bari
Bari
Belluno
Benevento
Bergamo
Biella
Bologna
Bolzano
Brescia
Brindisi
Cagliari
Caltanissetta
Campobasso
Carbonia-Iglesias
Caserta
Catania
Catanzaro
Chieti
Como
Cosenza
Cremona
Crotone
Cuneo
Enna
Fermo
Ferrara
Firenze
Foggia
Forli-Cesena
Frosinone
Genova
Gorizia
Grosseto
Imperia
State Code Description
Agrigento
Alessandria
Ancona
Aosta
L'Aquila
Arezzo
Ascoli Piceno
Asti
Avellino
Bari
Barletta-Andria-Trani
Belluno
Benevento
Bergamo
Biella
Bologna
Bolzano
Brescia
Brindisi
Cagliari
Caltanissetta
Campobasso
Carbonia-Iglesias
Caserta
Catania
Catanzaro
Chieti
Como
Cosenza
Cremona
Crotone
Cuneo
Enna
Fermo
Ferrara
Firenze
Foggia
Forli-Cesena
Frosinone
Genova
Gorizia
Grosseto
Imperia
GestPay Technical Specifications for Payment Page
Page 77 of 111
State Code
Isernia
Latina
Lecce
Lecco
Livorno
Lodi
Lucca
Macerata
Mantova
Massa Carrara
Matera
Medio Campidano
Messina
Milano
Modena
Monza Brianza
Napoli
Novara
Nuoro
Ogliastra
Olbia-Tempio
Oristano
Padova
Palermo
Parma
Pavia
Perugia
Pesaro e Urbino
Pescara
Piacenza
Pisa
Pistoia
Pordenone
Potenza
Prato
Ragusa
Ravenna
Reggio Calabria
Reggio Emilia
Rieti
Rimini
Roma
Rovigo
Salerno
Sassari
Savona
Siena
State Code Description
Isernia
Latina
Lecce
Lecco
Livorno
Lodi
Lucca
Macerata
Mantova
Massa Carrara
Matera
Medio Campidano
Messina
Milano
Modena
Monza Brianza
Napoli
Novara
Nuoro
Ogliastra
Olbia-Tempio
Oristano
Padova
Palermo
Parma
Pavia
Perugia
Pesaro e Urbino
Pescara
Piacenza
Pisa
Pistoia
Pordenone
Potenza
Prato
Ragusa
Ravenna
Reggio Calabria
Reggio Emilia
Rieti
Rimini
Roma
Rovigo
Salerno
Sassari
Savona
Siena
GestPay Technical Specifications for Payment Page
Page 78 of 111
State Code
Siracusa
Sondrio
La Spezia
Taranto
Teramo
Terni
Torino
Trapani
Trento
Treviso
Trieste
Udine
Varese
Venezia
Verbania-Cusio-Ossola
Vercelli
Verona
Vibo Valentia
Vicenza
Viterbo
State Code Description
Siracusa
Sondrio
La Spezia
Taranto
Teramo
Terni
Torino
Trapani
Trento
Treviso
Trieste
Udine
Varese
Venezia
Verbania-Cusio-Ossola
Vercelli
Verona
Vibo Valentia
Vicenza
Viterbo
GestPay Technical Specifications for Payment Page
Page 79 of 111
22 Table of Country Codes
22.1 PayPal Codes
The list of Country Code is from https://cms.paypal.com/en/cgibin/?cmd=_render-content&content_ID=developer/e_howto_html_countrycodes
Country
PayPal Code
AFGHANISTAN
ÅLAND ISLANDS
AF
AX
ALBANIA
AL
ALGERIA
DZ
AMERICAN SAMOA
AS
ANDORRA
AD
ANGOLA
AO
ANGUILLA
AI
ANTARCTICA
AQ
ANTIGUA AND BARBUDA
AG
ARGENTINA
AR
ARMENIA
AM
ARUBA
AW
AUSTRALIA
AU
AUSTRIA
AT
AZERBAIJAN
AZ
BAHAMAS
BS
BAHRAIN
BH
BANGLADESH
BD
BARBADOS
BB
BELARUS
BY
BELGIUM
BE
BELIZE
BZ
BENIN
BJ
BERMUDA
BM
BHUTAN
BT
BOLIVIA
BO
BOSNIA AND HERZEGOVINA
BA
BOTSWANA
BW
BOUVET ISLAND
BV
BRAZIL
BR
BRITISH INDIAN OCEAN TERRITORY
IO
BRUNEI DARUSSALAM
BN
BULGARIA
BG
BURKINA FASO
BF
BURUNDI
BI
CAMBODIA
KH
CAMEROON
CM
CANADA
CA
GestPay Technical Specifications for Payment Page
Page 80 of 111
Country
CAPE VERDE
PayPal Code
CV
CAYMAN ISLANDS
KY
CENTRAL AFRICAN REPUBLIC
CF
CHAD
TD
CHILE
CL
CHINA
CN
CHRISTMAS ISLAND
CX
COCOS (KEELING) ISLANDS
CC
COLOMBIA
CO
COMOROS
KM
CONGO
CG
CONGO, THE DEMOCRATIC REPUBLIC OF THE
CD
COOK ISLANDS
CK
COSTA RICA
CR
COTE D'IVOIRE
CI
CROATIA
HR
CUBA
CU
CYPRUS
CY
CZECH REPUBLIC
CZ
DENMARK
DK
DJIBOUTI
DJ
DOMINICA
DM
DOMINICAN REPUBLIC
DO
ECUADOR
EC
EGYPT
EG
EL SALVADOR
SV
EQUATORIAL GUINEA
GQ
ERITREA
ER
ESTONIA
EE
ETHIOPIA
ET
FALKLAND ISLANDS (MALVINAS)
FK
FAROE ISLANDS
FO
FIJI
FJ
FINLAND
FI
FRANCE
FR
FRENCH GUIANA
GF
FRENCH POLYNESIA
PF
FRENCH SOUTHERN TERRITORIES
TF
GABON
GA
GAMBIA
GM
GEORGIA
GE
GERMANY
DE
GHANA
GH
GIBRALTAR
GI
GREECE
GR
GREENLAND
GL
GRENADA
GD
GestPay Technical Specifications for Payment Page
Page 81 of 111
Country
PayPal Code
GUADELOUPE
GP
GUAM
GU
GUATEMALA
GT
GUERNSEY
GG
GUINEA
GN
GUINEA-BISSAU
GW
GUYANA
GY
HAITI
HT
HEARD ISLAND AND MCDONALD ISLANDS
HM
HOLY SEE (VATICAN CITY STATE)
VA
HONDURAS
HN
HONG KONG
HK
HUNGARY
HU
ICELAND
IS
INDIA
IN
INDONESIA
ID
IRAN, ISLAMIC REPUBLIC OF
IR
IRAQ
IQ
IRELAND
IE
ISLE OF MAN
IM
ISRAEL
IL
ITALY
IT
JAMAICA
JM
JAPAN
JP
JERSEY
JE
JORDAN
JO
KAZAKHSTAN
KZ
KENYA
KE
KIRIBATI
KI
KOREA, DEMOCRATIC PEOPLE'S REPUBLIC OF
KP
KOREA, REPUBLIC OF
KR
KUWAIT
KW
KYRGYZSTAN
KG
LAO PEOPLE'S DEMOCRATIC REPUBLIC
LATVIA
LA
LV
LEBANON
LB
LESOTHO
LS
LIBERIA
LR
LIBYAN ARAB JAMAHIRIYA
LIECHTENSTEIN
LY
LI
LITHUANIA
LT
LUXEMBOURG
LU
MACAO
MO
MACEDONIA, THE FORMER YUGOSLAV REPUBLIC OF
MADAGASCAR
MK
MG
MALAWI
MW
MALAYSIA
MY
GestPay Technical Specifications for Payment Page
Page 82 of 111
Country
PayPal Code
MALDIVES
MV
MALI
ML
MALTA
MT
MARSHALL ISLANDS
MH
MARTINIQUE
MQ
MAURITANIA
MR
MAURITIUS
MU
MAYOTTE
YT
MEXICO
MX
MICRONESIA, FEDERATED STATES OF
FM
MOLDOVA, REPUBLIC OF
MD
MONACO
MC
MONGOLIA
MN
MONTSERRAT
MS
MOROCCO
MA
MOZAMBIQUE
MZ
MYANMAR
MM
NAMIBIA
NA
NAURU
NR
NEPAL
NP
NETHERLANDS
NL
NETHERLANDS ANTILLES
AN
NEW CALEDONIA
NC
NEW ZEALAND
NZ
NICARAGUA
NI
NIGER
NE
NIGERIA
NG
NIUE
NU
NORFOLK ISLAND
NF
NORTHERN MARIANA ISLANDS
MP
NORWAY
NO
OMAN
OM
PAKISTAN
PK
PALAU
PW
PALESTINIAN TERRITORY, OCCUPIED
PS
PANAMA
PA
PAPUA NEW GUINEA
PG
PARAGUAY
PY
PERU
PE
PHILIPPINES
PH
PITCAIRN
PN
POLAND
PL
PORTUGAL
PT
PUERTO RICO
PR
QATAR
QA
REUNION
RE
ROMANIA
RO
GestPay Technical Specifications for Payment Page
Page 83 of 111
Country
PayPal Code
RUSSIAN FEDERATION
RU
RWANDA
RW
SAINT HELENA
SH
SAINT KITTS AND NEVIS
KN
SAINT LUCIA
LC
SAINT PIERRE AND MIQUELON
SAINT VINCENT AND THE GRENADINES
SAMOA
PM
VC
WS
SAN MARINO
SM
SAO TOME AND PRINCIPE
ST
SAUDI ARABIA
SA
SENEGAL
SN
SERBIA AND MONTENEGRO
CS
SEYCHELLES
SC
SIERRA LEONE
SL
SINGAPORE
SG
SLOVAKIA
SK
SLOVENIA
SI
SOLOMON ISLANDS
SB
SOMALIA
SO
SOUTH AFRICA
ZA
SOUTH GEORGIA AND THE SOUTH SANDWICH ISLANDS GS
SPAIN
ES
SRI LANKA
LK
SUDAN
SD
SURINAME
SR
SVALBARD AND JAN MAYEN
SJ
SWAZILAND
SZ
SWEDEN
SE
SWITZERLAND
CH
SYRIAN ARAB REPUBLIC
SY
TAIWAN, PROVINCE OF CHINA
TAJIKISTAN
TW
TJ
TANZANIA, UNITED REPUBLIC OF
THAILAND
TZ
TH
TIMOR-LESTE
TL
TOGO
TG
TOKELAU
TK
TONGA
TO
TRINIDAD AND TOBAGO
TT
TUNISIA
TN
TURKEY
TR
TURKMENISTAN
TM
TURKS AND CAICOS ISLANDS
TC
TUVALU
TV
UGANDA
UG
UKRAINE
UA
GestPay Technical Specifications for Payment Page
Page 84 of 111
Country
PayPal Code
UNITED ARAB EMIRATES
AE
UNITED KINGDOM
GB
UNITED STATES
US
UNITED STATES MINOR OUTLYING ISLANDS
URUGUAY
UM
UY
UZBEKISTAN
UZ
VANUATU
VU
VENEZUELA
VE
VIET NAM
VN
VIRGIN ISLANDS, BRITISH
VG
VIRGIN ISLANDS, U.S.
VI
WALLIS AND FUTUNA
WF
WESTERN SAHARA
EH
YEMEN
YE
ZAMBIA
ZM
ZIMBABWE
ZW
GestPay Technical Specifications for Payment Page
Page 85 of 111
22.2 RED Codes
The list of Country Code in ISO 3 digit format. This is only an example it's not
exhaustive of the actual standard.
ISO Code 3 digit
ABW
AFG
AGO
AIA
ALA
ALB
AND
ANT
ARE
ARG
ARM
ASM
ATA
ATF
ATG
AUS
AUT
AZE
BDI
BEL
BEN
BES
BFA
BGD
BGR
BHR
BHS
BIH
BLM
BLR
BLZ
BMU
BOL
BRA
BRB
BRN
BTN
BVT
BWA
CAF
CAN
CCK
CHE
CHL
CHN
Country
ARUBA
AFGHANISTAN
ANGOLA
ANGUILLA
Isole Åland
ALBANIA
ANDORRA
NETHERLAND ANTILLES
UNITED ARAB EMIRATES
ARGENTINA
ARMENIA
AMERICAN SAMOA
ANTARTIDE
TERRITORI FRANCESI DEL SUD
ANTIGUA AND BARBUDA
AUSTRALIA
AUSTRIA
AZERBAIJAN
BURUNDI
BELGIO
BENIN
Isole BES
BURKINO FASO
BANGLADESH
BULGARIA
BAHRAIN
BAHAMAS
BOSNIA HERZEGOVINA
Saint-Barthélemy
BELARUS
BELIZE
BERMUDA
BOLIVIA
BRASILE
BARBADOS
BRUNEI DARUSSALAM
BHUTAN
ISOLA DI BOUVET
BOTSWANA
REPUBBLICA CENTROAFRICANA
CANADA
ISOLE COCOS
SVIZZERA
CILE
CINA
GestPay Technical Specifications for Payment Page
Page 86 of 111
ISO Code 3 digit
CIV
CMR
COD
COG
COK
COL
COM
CPV
CRI
CUB
CUW
CXR
CYM
CYP
CZE
DEU
DJI
DMA
DNK
DOM
DZA
ECU
EGY
ERI
ESH
ESP
EST
ETH
FIN
FJI
FLK
FRA
FRO
FSM
GAB
GBR
GEO
GGY
GHA
GIB
GIN
GLP
GMB
GNB
GNQ
GRC
GRD
GRL
GTM
GUF
GUM
GUY
Country
COTE D.IVOIRE
CAMEROON,UNITED REP.
ZAIRE
CONGO
COOK ISLANDS
COLOMBIA
COMORE
CAPE VERDE IS.
COSTA RICA
CUBA
CURACAO
ISOLA DI NATALE
CAYMAN ISLANDS
CYPRUS
REPUBBLICA CECA
GERMANIA
GIBUTI
DOMINICA
DENMARK
REPUBBLICA DOMINICANA
ALGERIA
ECUADOR
EGITTO
ERITREA
SAHARA OCCIDENTALE
SPAGNA
ESTONIA
ETHIOPIA
FINLANDIA
FIJI
ISOLE FALKLAND
FRANCIA
ISOLE FAROE
STATI FEDERATI DELLA MICRONESIA
GABON
GRAN BRETAGNA
GEORGIA
Guernsey
GHANA
GIBRALTAR
GUINEA
GUADALUPA
GAMBIA
GUINEA-BISSAU
GUINEA EQUATORIALE
GREECE
GRENADA
GROENLANDIA
GUATEMALA
GUYANA FRANCESE
GUAM
GUYANA
GestPay Technical Specifications for Payment Page
Page 87 of 111
ISO Code 3 digit
HKG
HMD
HND
HRV
HTI
HUN
IDN
IMN
IND
IOT
IRL
IRN
IRQ
ISL
ISR
ITA
JAM
JEY
JOR
JPN
KAZ
KEN
KGZ
KHM
KIR
KNA
KOR
KWT
LAO
LBN
LBR
LBY
LCA
LIE
LKA
LSO
LTU
LUX
LVA
MAC
MAF
MAR
MCO
MDA
MDG
MDV
MEX
MHL
MKD
MLI
MLT
MMR
Country
HONG KONG
ISOLA HEARD E ISOLE MCDONALD
HONDURAS
CROAZIA
HAITI
HUNGARY
INDONESIA
ISOLA DI MAN
INDIA
Territorio Britannico Oceano Indiano
IRELAND
IRAN
IRAQ
ICELAND
ISRAEL
ITALIA
JAMAICA
Jersey
JORDAN
JAPAN
KAZAKHSTAN
KENYA
KYRGYZSTAN
KAMPUCHEA DEMOCRATIC
KIRIBATI
ST. KITTS-NEVIS
KOREA, REPUBLIC OF
KUWAIT
LAO PEOPLES DEMOCRATIC REPUBLIC
LIBANO
LIBERIA
LIBIA
SAINT LUCIA
LIECHTENSTEIN
SRI LANKA
LESOTHO
LITUANIA
LUSSEMBURGO
LATVIA
MACAU
Saint-Martin
MAROCCO
MONACO
MOLDOVA, REP. OF
MADAGASCAR
MALDIVES
MEXICO
ISOLE MARSHALL
MACEDONIA
MALI
MALTA
MYANMAR
GestPay Technical Specifications for Payment Page
Page 88 of 111
ISO Code 3 digit
MNE
MNG
MNP
MOZ
MRT
MSR
MTQ
MUS
MWI
MYS
MYT
NAM
NCL
NER
NFK
NGA
NIC
NIU
NLD
NOR
NPL
NRU
NZL
OMN
PAK
PAN
PCN
PER
PHL
PLW
PNG
POL
PRI
PRK
PRT
PRY
PSE
PYF
QAT
REU
ROU
RUS
RWA
SAU
SCG
SDN
SEN
SGP
SGS
SHN
SJM
SLB
Country
REPUBLIC OF MONTENEGRO
MONGOLIA
ISOLE MARIANNE SETTENTRIONALI
MOZAMBIQUE
MAURITANIA
MONTSERRAT
MARTINICA
MAURITIUS
MALAWI
MALAYSIA
MAYOTTE
NAMIBIA
NUOVA CALEDONIA
NIGER
ISOLA NORFOLK
NIGERIA
NICARAGUA
NIUE
NETHERLANDS
NORWAY
NEPAL
NAURU
NEW ZEALAND
OMAN
PAKISTAN
PANAMA
PITCAIRN
PERU
PHILIPPINES
PALAU
PAPUA NEW GUINEA
POLONIA
PUERTO RICO
COREA DEL NORD
PORTOGALLO
PARAGUAY
PALESTINA
POLINESIA FRANCESE
QATAR
REUNION
ROMANIA
RUSSIA
RUANDA
SAUDI ARABIA
SERBIA E MONTENEGRO
SUDAN
SENEGAL
SINGAPORE
SUD GEORGIA E ISOLE SANDWICH
SANT'ELENA
SVALBARD E JAN MAYEN
SOLOMON ISLANDS
GestPay Technical Specifications for Payment Page
Page 89 of 111
ISO Code 3 digit
SLE
SLV
SMR
SOM
SPM
SRB
SSD
STP
SUR
SVK
SVN
SWE
SWZ
SXM
SYC
SYR
TCA
TCD
TGO
THA
TJK
TKL
TKM
TLS
TON
TTO
TUN
TUR
TUV
TWN
TZA
UGA
UKR
UMI
UNK
URY
USA
UZB
VAT
VCT
VEN
VGB
VIR
VNM
VUT
WLF
WSM
YEM
ZAF
ZMB
ZWE
Country
SIERRA LEONE
EL SALVADOR
SAN MARINO
SOMALIA
SAINT PIERRE E MIQUELON
SERBIA AND MONTENEGRO
Sudan del Sud
SAO TOME E PRINCIPE
SURINAME
SLOVAK REPUBLIC
SLOVENIA
SVEZIA
SWAZILAND
SINT MAARTEN (DUTCH)
SEYCHELLES
SYRIAN ARAB REPUBLIC
TURKS AND CAICOS ISLANDS
CIAD
TOGO
THAILAND
TAJIKISTAN
TOKELAU
TURKMENISTAN
TIMOR EST
TONGA
TRINIDAD AND TOBAGO
TUNISIA
TURCHIA
TUVALU
TAIWAN PROVINCE OF CHINA
TANZANIA, UNITED REPUBLIC OF
UGANDA
UKRAINE
ISOLE MINORI DEGLI STATI UNITI D'AMERICA
UN INT ADMIN MISSION IN KOSOVO
URUGUAY
STATI UNITI
UZBEKISTAN
VATICAN CITY STATE (HOLY SEE)
SAINT VINCENT AND GRENADINES
VENEZUELA
VIRGIN ISLANDS BRITISH
VIRGIN ISLANDS U.S.
VIET NAM
VANUATU
WALLIS E FUTUNA
SAMOA
YEMEN
SUD AFRICA
ZAMBIA
ZIMBABWE
GestPay Technical Specifications for Payment Page
Page 90 of 111
23 Table of Payment Type Codes
Table of the Payment Type available at the moment in GestPay.
Payment Type Code
Description
BON
CREDITCARD
PAYPAL
MYBANK
UPMOBILE
MASTERPASS
CONSEL
S2PALI
S2PKLA
S2PQIW
S2PYAN
S2PSOF
S2PIDE
COMPASS
SOFORT
IDEAL
Money Transfer
Credit Card
PayPal
MyBank
Mobile - QRCode
MasterPass
Consel
ALIPAY (Alternatives)
KLARNA (Alternatives)
QIWI (Alternatives)
YANDEX (Alternatives)
SOFORT (Alternatives)
IDEAL (Alternatives)
COMPASS C-PAY
SOFORT
IDEAL
GestPay Technical Specifications for Payment Page
Page 91 of 111
24 Example Transactions
This chapter describes a number of significant examples of interfacing with
Gestpay.
The ShopLogin used in the examples is 9000001.
The merchant’s profile is the following:
Merchant's profiles
IP Address
Server-to-server Communication Url
Url for positive responses
Url for negative responses
E-mail for sending OK result
E-mail for sending KO result
E-mail for sending information
171.85.234.97
http://www.myshop.com/s2s.asp
http://www.myshop.com/respOK.
asp
http://www.myshop.com/respKO.
asp
[email protected]
[email protected]
[email protected]
GestPay Technical Specifications for Payment Page
Page 92 of 111
24.1 Transaction # 1
The merchant decides to communicate to GestPay only the essential
information to allow the buyer to make the payment. The payment page must be
displayed to the buyer who enters the sensitive data required to complete the
payment in protected (SSL 2048-bit) mode.
The transaction to process has the following characteristics:
Merchant’s Transaction
Shop Transaction ID
Transaction Amount
Currency Transaction
34az85ord19
1828.45
euro
Let us suppose that the transaction is concluded positively (payment will be
made), returning the following result:
Result
Authorisation code
Bank transaction ID
54e813
216
In the following pages, each individual phase that makes up the payment
process will be
described, highlighting the information exchanged between GestPay and the
merchant’s server.
GestPay Technical Specifications for Payment Page
Page 93 of 111
Phase I
Using the Encrypt method of web service WSCryptDecrypt, the merchant’s has
to set:
<Encrypt>
<shopLogin>9000001</shopLogin>
<uicCode>242</uicCode>
<amount>1828.45</amount>
<shopTransactionId>34az85ord19</shopTransactionId>
</Encrypt>
GestPay authenticates the calling server and validates the information
characterising the transaction. If the checks are passed, it returns an encrypted
string to GestPay:
<DecryptResult>
<GestPayCryptDecrypt xmlns="">
<TransactionType>ENCRYPT</TransactionType>
<TransactionResult>OK</TransactionResult>
<CryptDecryptString>2C53F1B5...</CryptDecryptString>
<ErrorCode>0</ErrorCode>
<ErrorDescription/>
</GestPayCryptDecrypt>
</DecryptResult>
Phase II
The buyer’s server is directed to the GestPay server to complete the payment
process.
The call to the payment page is made passing two parameters that correspond
to the shop login and to the encrypted data string received in the previous phase
by GestPay:
Payment page Url
Https://ecomm.sella.it/pagam/pagam.aspx?a=9000001&b=2C53F1B5........
GestPay authenticates the Shop login (parameter a) and performs security
checks on the encrypted data string (parameter b). If the checks are passed,
the payment page is displayed to the buyer, who can enter the data necessary
to complete the payment. Otherwise, an error will be communicated.
Phase III
After processing the transaction, GestPay communicates the transaction result
(encrypted data string) to the merchant.
Server-to-server communication
Http://www.myshop.com/s2s.asp?a=9000001&b=4D341A8B..............
GestPay Technical Specifications for Payment Page
Page 94 of 111
After server-to-server communication has concluded positively, GestPay directs
the buyer’s browser to the merchant’s server (in this case to the Url for positive
responses). If this is not the case, the buyer is informed that it is not possible to
direct him/her to the merchant’s server to conclude the purchasing process.ction
of buyer’s client
The transaction result is also communicated to the merchant via e-mail.
Phase IV
GestPay communicates the transaction result to the merchant, sending an
encrypted data string. Using the Decrypt method of web service Using the
Decrypt method of the WSCryptDecrypt web service, the merchant must request
the string decryption service to interpret the transaction result correctly and
update the information in his/her own information system, this allowing the buyer
to complete the purchasing process.
<Decrypt>
<shopLogin>9000001</shopLogin>
<CryptedString>4D341A8B....</CryptedString>
</Decrypt>
GestPay authenticates the calling server and the integrity of the encrypted data
string. If the controls are passed, it returns the unencrypted information via XML
allowing the merchant to interpret the transaction result correctly:
<DecryptResult>
<GestPayCryptDecrypt xmlns="">
<TransactionType>DECRYPT</TransactionType>
<TransactionResult>OK</TransactionResult>
<ShopTransactionID>34az85ord19</ShopTransactionID>
<BankTransactionID>216</BankTransactionID>
<AuthorizationCode>58e813</AuthorizationCode>
<Currency>242</Currency>
<Amount>1828.45</Amount>
<ErrorCode>0</ErrorCode>
<ErrorDescription>Transazione correttamente effettuata
</ErrorDescription>
</GestPayCryptDecrypt>
</DecryptResult>
GestPay Technical Specifications for Payment Page
Page 95 of 111
24.2 Transaction # 2
The merchant decides to communicate to GestPay not only the information that
is indispensable to allow the buyer to make the payment, but also the
buyer’s name, surname and e-mail address (this information is suggested by
default on the payment page so that the buyer does not need to enter it a
second time).
Other customised information is sent by the merchant (the client code attributed
to the buyer and technical information). The payment page must be displayed to
the buyer who enters any sensitive data necessary to complete the payment in
protected mode (128–bit SSL). In addition, one of the customised items of
information (client code) must be displayed on the payment page.
The transaction to process has the following characteristics:
Transaction
Shop Transaction ID
Transaction Amount
Currency Transaction
Buyer’s Name and Surname
Buyer’s E-mail Address
Customised info 1
Customised info 2
34az85ord19
1245.6
Euro
Mario Bianchi
[email protected]
BV_CODCLIENTE=12
BV_SESSIONID=398
We shall assume that the transaction is concluded positively (payment is made),
reporting the following result:
Result
Authorisation code
Bank transaction ID
9823y5
860
The following pages describe each individual phase that makes up the payment
process, highlighting the information exchanged between GestPay and the
merchant’s server.
GestPay Technical Specifications for Payment Page
Page 96 of 111
Phase I
The merchant’s server communicates the information that characterises the
transaction to GestPay, setting the value of the WSCryptDecrypt web service
attributes:
<Encrypt>
<shopLogin>9000001</shopLogin>
<uicCode>242</uicCode>
<amount>1245.6</amount>
<shopTransactionId>34az85ord19</shopTransactionId>
<buyerName>Mario Bianchi</buyerName>
<buyerEmail>[email protected]</buyerEmail>
<customInfo>BV_CODCLIENTE=12*P1*BV_SESSIONID=398</customInfo>
</Encrypt>
GestPay authenticates the calling server and validates the information that
characterises the transaction. If the controls are passed, it returns an encrypted
string to GestPay:
<DecryptResult>
<GestPayCryptDecrypt xmlns="">
<TransactionType>ENCRYPT</TransactionType>
<TransactionResult>OK</TransactionResult>
<CryptDecryptString>30715CA8...</CryptDecryptString>
<ErrorCode>0</ErrorCode>
<ErrorDescription/>
</GestPayCryptDecrypt>
</DecryptResult>
Phase II
The buyer’s server is directed to the GestPay server to complete the payment
process.
The call to the payment page is made passing two parameters that correspond
to Shop login and to the encrypted data string received in the previous
phase by GestPay:
Payment page Url
https://ecomm.sella.it/pagam/pagam.aspx?a=9000001&b=30715CA8..............
GestPay verifies the Shop login (parameter a) and performs security checks on
the encrypted data string (parameter b). If the checks are passed, the buyer,
who can now enter the data necessary to complete the payment, views the
payment page. If the checks are not passed, an error will be communicated.
GestPay Technical Specifications for Payment Page
Page 97 of 111
Phase III
After processing the transaction, GestPay communicates the transaction result
(encrypted data string) to the merchant.
Server-to-server communication
http://www.myshop.com/s2s.asp?a=9000001&b=F45E129A..............
After server-to-server communication has concluded positively, GestPay directs
the buyer’s browser to the merchant’s server (in this case to the Url for positive
responses). If this is not the case, the buyer is informed that it is not possible to
direct him/her to the merchant’s server to complete the purchasing process.
Redirection of Buyer’s Client
http://www.myshop.com/respOK.asp?a=90000011&b= F45E129A.............
The transaction result is also communicated to the merchant and the buyer via
e-mail.
Phase IV
GestPay communicates the transaction result to the merchant, sending an
encrypted data string. Using the WSCryptDecrypt web service , the merchant
must request string encryption to interpret the transaction result correctly and
update the information in his/her own system, thus allowing the buyer to
complete the purchasing process.
The merchant’s server communicates the encrypted data string containing the
transaction result to GestPay, through WSCryptDecrypt web service.
<Decrypt>
<shopLogin>9000001</shopLogin>
<CryptedString>F45E129A....</CryptedString>
</Decrypt>
GestPay authenticates the calling server and checks the encrypted data string.
If the checks are passed, it returns an unencrypted data string containing the
transaction result:
<DecryptResult>
<GestPayCryptDecrypt xmlns="">
<TransactionType>DECRYPT</TransactionType>
<TransactionResult>OK</TransactionResult>
<ShopTransactionID>34az85ord19</ShopTransactionID>
<BankTransactionID>860</BankTransactionID>
<AuthorizationCode>9828y5</AuthorizationCode>
<Currency>242</Currency>
<Amount>1245.6</Amount>
<CustomInfo>BV_CODCLIENTE=12*P1*BV_SESSIONID=398</CustomInfo>
GestPay Technical Specifications for Payment Page
Page 98 of 111
<ErrorCode>0</ErrorCode>
<ErrorDescription>Transazione correttamente effettuata
</ErrorDescription>
</GestPayCryptDecrypt>
</DecryptResult>
GestPay Technical Specifications for Payment Page
Page 99 of 111
24.3 Transaction # 3
The merchant decides to communicate to GestPay not only the information that
is indispensable to allow the buyer to make the payment, but also request a
token to operate with the tokenization function.
The payment page must be displayed to the buyer who enters any sensitive
data necessary to complete the payment in protected mode (128–bit SSL). In
addition, one of the customised items of information (client code) must be
displayed on the payment page.
The transaction to process has the following characteristics:
Transaction
Shop Transaction ID
Transaction Amount
Currency Transaction
requestToken
34az85ord19
985
Euro
MASKEDPAN
To fill and pass the requestToken parameter the merchant has to activate it in
the "Fields and parameters" section of Back Office Merchant.
We shall assume that the transaction is concluded positively (payment is
made), reporting the following result:
Result
Authorisation code
Bank transaction ID
8754p2
656
The following pages describe each individual phase that makes up the payment
process, highlighting the information exchanged between GestPay and the
merchant’s server.
Phase I
The merchant’s server communicates the information that characterises the
transaction to GestPay, setting the value of the WSCryptDecrypt web service
attributes:
<Encrypt>
<shopLogin>9000001</shopLogin>
<uicCode>242</uicCode>
<amount>985</amount>
<shopTransactionId>34az85ord19</shopTransactionId>
<requestToken>MASKEDPAN</requestToken>
</Encrypt>
GestPay authenticates the calling server and validates the information that
characterises the transaction. If the controls are passed, it returns an
GestPay Technical Specifications for Payment Page
Page 100 of 111
encrypted string to GestPay:
<DecryptResult>
<GestPayCryptDecrypt xmlns="">
<TransactionType>ENCRYPT</TransactionType>
<TransactionResult>OK</TransactionResult>
<CryptDecryptString>897543..</CryptDecryptString>
<ErrorCode>0</ErrorCode>
<ErrorDescription/>
</GestPayCryptDecrypt>
</DecryptResult>
Phase II
The buyer’s server is directed to the GestPay server to complete the payment
process.
The call to the payment page is made passing two parameters that
correspond to Shop login and to the encrypted data string received in
the previous phase by GestPay:
Payment page Url
https://ecomm.sella.it/pagam/pagam.aspx?a=9000001&b=897543....................
GestPay verifies the Shop login (parameter a) and performs security checks
on the encrypted data string (parameter b). If the checks are passed, the
buyer, who can now enter the data necessary to complete the payment, views
the payment page. If the checks are not passed, an error will be
communicated.
Phase III
After processing the transaction, GestPay communicates the transaction
result (encrypted data string) to the merchant.
Server-to-server communication
http://www.myshop.com/s2s.asp?a=9000001&b=HT987YU..............
After server-to-server communication has concluded positively, GestPay
directs the buyer’s browser to the merchant’s server (in this case to the Url for
positive responses). If this is not the case, the buyer is informed that it is not
possible to direct him/her to the merchant’s server to complete the purchasing
process.
Redirection of Buyer’s Client
http://www.myshop.com/respOK.asp?a=90000011&b= HT987YU.............
The transaction result is also communicated to the merchant and the buyer
via e-mail.
GestPay Technical Specifications for Payment Page
Page 101 of 111
Phase IV
GestPay communicates the transaction result to the merchant, sending an
encrypted data string. Using the WSCryptDecrypt web service, the merchant
must request string encryption to interpret the transaction result correctly and
update the information in his/her own system, thus allowing the buyer to
complete the purchasing process.
The merchant’s server communicates the encrypted data string containing the
transaction result to GestPay, through WSCryptDecrypt web service.
<Decrypt>
<shopLogin>9000001</shopLogin>
<CryptedString>HT987YU....</CryptedString>
</Decrypt>
GestPay authenticates the calling server and checks the encrypted data
string. If the checks are passed, it returns an unencrypted data string
containing the transaction result:
<DecryptResult>
<GestPayCryptDecrypt xmlns="">
<TransactionType>DECRYPT</TransactionType>
<TransactionResult>OK</TransactionResult>
<ShopTransactionID>34az85ord19</ShopTransactionID>
<BankTransactionID>656</BankTransactionID>
<AuthorizationCode>876TY5</AuthorizationCode>
<Currency>242</Currency>
<Amount>985</Amount>
<TOKEN>47MRWNGIYB6F9015</TOKEN>
<ErrorCode>0</ErrorCode>
<ErrorDescription>Transazione
correttamente
effettuata
</ErrorDescription>
</GestPayCryptDecrypt>
</DecryptResult>
GestPay Technical Specifications for Payment Page
Page 102 of 111
24.4 Transaction # 4
The merchant decides to communicate to GestPay not only the information
that is indispensable to allow the buyer to make the payment, but also the
shipping information useful to activate the Seller Protection option on the
transaction.
The payment page must be displayed to the buyer who enters any sensitive
data necessary to complete the payment in protected mode (128–bit SSL).
The transaction to process has the following characteristics:
Transaction
Shop Transaction ID
Transaction Amount
Currency Transaction
ppSellerProtection
shipToName
shipToStreet
shipToCity
shipToState
shipToCountryCode
shipToZip
shipToStreet2
34az85ord19
985
Euro
1
Marco Bianchi
Via Milano 1
Torino
Torino
IT
10100
--
To fill and pass the PayPal Seller Protection parameters the merchant has to
activate them in the "Fields and parameters" section of Back Office Merchant.
We shall assume that the transaction is concluded positively (payment is made),
reporting the following result:
Result
Authorisation code
Bank transaction ID
8754p2
656
The following pages describe each individual phase that makes up the
payment process,
highlighting the information exchanged
between
GestPay and the merchant’s server.
GestPay Technical Specifications for Payment Page
Page 103 of 111
Phase I
The merchant’s server communicates the information that characterises the
transaction to GestPay, setting the value of the WSCryptDecrypt web service
attributes (the merchant has to have enabled the fields from Fields and
Parameters Function par.12.3.2):
<Encrypt>
<shopLogin>9000001</shopLogin>
<uicCode>242</uicCode>
<amount>985</amount>
<shopTransactionId>34az85ord19</shopTransactionId>
<ppSellerProtection>1</ppSellerProtection>
<shippingDetails>
<shipToName>Marco Bianchi</shipToName>
<shipToStreet>Via Milano 1</shipToStreet>
<shipToCity>Torino</shipToCity>
<shipToState>Torino</shipToState>
<shipToCountryCode>IT</shipToCountryCode>
<shipToZip>10100</shipToZip>
<shipToStreet2/>
</shippingDetails>
</Encrypt>
GestPay authenticates the calling server and validates the information that
characterises the transaction. If the controls are passed, it returns an
encrypted string to GestPay:
<DecryptResult>
<GestPayCryptDecrypt xmlns="">
<TransactionType>ENCRYPT</TransactionType>
<TransactionResult>OK</TransactionResult>
<CryptDecryptString>897543..</CryptDecryptString>
<ErrorCode>0</ErrorCode>
<ErrorDescription/>
</GestPayCryptDecrypt>
</DecryptResult>
Phase II
The buyer’s server is directed to the GestPay server to complete the payment
process.
The call to the payment page is made passing two parameters that
correspond to Shop login and to the encrypted data string received in
the previous phase by GestPay:
Payment page Url
https://ecomm.sella.it/pagam/pagam.aspx?a=9000001&b=897543....................
GestPay Technical Specifications for Payment Page
Page 104 of 111
GestPay verifies the Shop login (parameter a) and performs security checks
on the encrypted data string (parameter b). If the checks are passed, the
buyer, who can now enter the data necessary to complete the payment, views
the payment page. If the checks are not passed, an error will be
communicated.
Phase III
After processing the transaction, GestPay communicates the transaction
result (encrypted data string) to the merchant.
Server-to-server communication
http://www.myshop.com/s2s.asp?a=9000001&b=HT987YU..............
After server-to-server communication has concluded positively, GestPay
directs the buyer’s browser to the merchant’s server (in this case to the Url for
positive responses). If this is not the case, the buyer is informed that it is not
possible to direct him/her to the merchant’s server to complete the purchasing
process.
Redirection of Buyer’s Client
http://www.myshop.com/respOK.asp?a=90000011&b= HT987YU.............
The transaction result is also communicated to the merchant and the buyer
via e-mail.
Phase IV
GestPay communicates the transaction result to the merchant, sending an
encrypted data string. Using the WSCryptDecrypt web service, the merchant
must request string encryption to interpret the transaction result correctly and
update the information in his/her own system, thus allowing the buyer to
complete the purchasing process.
The merchant’s server communicates the encrypted data string containing the
transaction result to GestPay, through WSCryptDecrypt web service.
<Decrypt>
<shopLogin>9000001</shopLogin>
<CryptedString>HT987YU....</CryptedString>
</Decrypt>
GestPay authenticates the calling server and checks the encrypted data
string. If the checks are passed, it returns an unencrypted data string
containing the transaction result:
<DecryptResult>
<GestPayCryptDecrypt xmlns="">
<TransactionType>DECRYPT</TransactionType>
<TransactionResult>OK</TransactionResult>
<ShopTransactionID>34az85ord19</ShopTransactionID>
GestPay Technical Specifications for Payment Page
Page 105 of 111
<BankTransactionID>656</BankTransactionID>
<AuthorizationCode>983RT4</AuthorizationCode>
<Currency>242</Currency>
<Amount>985</Amount>
<ErrorCode>0</ErrorCode>
<ErrorDescription>Transazione
correttamente
</ErrorDescription>
</GestPayCryptDecrypt>
</DecryptResult>
GestPay Technical Specifications for Payment Page
effettuata
Page 106 of 111
24.5 Transaction # 5
The merchant decides to communicate to GestPay not only the information
that is indispensable to allow the buyer to make the payment, but also the
additional information useful to activate the RED Fraud Prevention option on
the transaction.
The payment page must be displayed to the buyer who enters any sensitive
data necessary to complete the payment in protected mode (128–bit SSL).
The transaction to process has the following characteristics:
Transaction
Shop Transaction ID
Transaction Amount
Currency Transaction
redFraudPrevention
Customer_Name
Customer_Surname
NumberOfItems
Item_ProductCode
Item_ProductCode
34az85oer5676
200
Euro
1
Mario
Rossi
2
23467
89754
To fill and pass the PayPal Seller Protection parameters the merchant has to
activate them in the "Fields and parameters" section of Back Office Merchant.
We shall assume that the transaction is concluded positively (payment is made),
reporting the following result:
Result
Authorisation code
Bank transaction ID
5r4567
456
The following pages describe each individual phase that makes up the
payment process,
highlighting the information exchanged
between
GestPay and the merchant’s server.
GestPay Technical Specifications for Payment Page
Page 107 of 111
Phase I
The merchant’s server communicates the information that characterises the
transaction to GestPay, setting the value of the WSCryptDecrypt web service
attributes (the merchant has to have enabled the fields from Fields and
Parameters Function par.12.3.2):
<Encrypt>
<shopLogin>9000001</shopLogin>
<uicCode>242</uicCode>
<amount>200</amount>
<shopTransactionId>34az85oer5676</shopTransactionId>
<redFraudPrevention>1</redFraudPrevention>
<Red_CustomerInfo>
<Customer_Name>Mario</Customer_Name>
<Customer_Surnamet>Rossi</Customer_Surname>
</Red_CustomerInfo>
<Red_Items>
<NumberOfItem>2</NumberOfItem>
<Red_Item>
<Item_ProductCode>23467</Item_ProductCode>
</Red_Item>
<Red_Item>
<Item_ProductCode>89754</Item_ProductCode>
</Red_Item>
</Red_Items>
</Encrypt>
GestPay authenticates the calling server and validates the information that
characterises the transaction. If the controls are passed, it returns an
encrypted string to GestPay:
<DecryptResult>
<GestPayCryptDecrypt xmlns="">
<TransactionType>ENCRYPT</TransactionType>
<TransactionResult>OK</TransactionResult>
<CryptDecryptString>swqdqwdasdadiqwidk*****.....</CryptDecryptString>
<ErrorCode>0</ErrorCode>
<ErrorDescription/>
</GestPayCryptDecrypt>
</DecryptResult>
Phase II
The buyer’s server is directed to the GestPay server to complete the payment
process.
The call to the payment page is made passing two parameters that
GestPay Technical Specifications for Payment Page
Page 108 of 111
correspond to Shop login and to the encrypted data string received in
the previous phase by GestPay:
Payment page Url
https://ecomm.sella.it/pagam/pagam.aspx?a=9000001&b=swqdqwdasd..............
GestPay verifies the Shop login (parameter a) and performs security checks
on the encrypted data string (parameter b). If the checks are passed, the
buyer, who can now enter the data necessary to complete the payment, views
the payment page. If the checks are not passed, an error will be
communicated.
Phase III
After processing the transaction, GestPay communicates the transaction
result (encrypted data string) to the merchant.
Server-to-server communication
http://www.myshop.com/s2s.asp?a=9000001&b=edrftyy7..............
After server-to-server communication has concluded positively, GestPay
directs the buyer’s browser to the merchant’s server (in this case to the Url for
positive responses). If this is not the case, the buyer is informed that it is not
possible to direct him/her to the merchant’s server to complete the purchasing
process.
Redirection of Buyer’s Client
http://www.myshop.com/respOK.asp?a=90000011&b= edrftyy7.............
The transaction result is also communicated to the merchant and the buyer
via e-mail.
Phase IV
GestPay communicates the transaction result to the merchant, sending an
encrypted data string. Using the WSCryptDecrypt web service, the merchant
must request string encryption to interpret the transaction result correctly and
update the information in his/her own system, thus allowing the buyer to
complete the purchasing process.
The merchant’s server communicates the encrypted data string containing the
transaction result to GestPay, through WSCryptDecrypt web service.
<Decrypt>
<shopLogin>9000001</shopLogin>
<CryptedString>edrftyy7 ....</CryptedString>
</Decrypt>
GestPay authenticates the calling server and checks the encrypted data
string. If the checks are passed, it returns an unencrypted data string
containing the transaction result:
GestPay Technical Specifications for Payment Page
Page 109 of 111
<DecryptResult>
<GestPayCryptDecrypt xmlns="">
<TransactionType>DECRYPT</TransactionType>
<TransactionResult>OK</TransactionResult>
<ShopTransactionID>34az85oer5676</ShopTransactionID>
<BankTransactionID>456</BankTransactionID>
<AuthorizationCode>5r4567</AuthorizationCode>
<Currency>242</Currency>
<Amount>200</Amount>
<ErrorCode>0</ErrorCode>
<ErrorDescription>Transazione
correttamente
effettuata
</ErrorDescription>
<RedResponseCode>CHALLENGE</RedResponseCode>
<RedResponseDescription>Transaction challenged due to a hit on a
suspicious
database.</RedResponseDescription>
</GestPayCryptDecrypt>
</DecryptResult>
GestPay Technical Specifications for Payment Page
Page 110 of 111
25 Payment Orders in Test Environment
Remember that to simulate the authorisation of a payment order in the test
environment it is necessary to use a currently valid credit card.
Amounts relating to authorised payment orders will be set against the credit
limit of the card used and will never be debited. We therefore recommend that
payment orders are made for small amounts so as not to run down the
remaining credit on the card used for the tests.
GestPay Technical Specifications for Payment Page
Page 111 of 111