700 – Start Credit Card charge (3DS Enabled)

Allows the merchant to submit a charge to the cardholder’s Credit Card and includes 3DS capability when 3DS is specified in the Merchant Agreement. (See Appendix for “3DS Explanation”).

700 Request Data description:

NODE
INCLUDE IN CHECKSUM (IN THIS ORDER)
REQUIRED
DATA TYPE
DESCRIPTION

apiUser

YES (1)

YES

Character max 50.

The API user assigned by the Gateway to the merchant. Can be obtained from the website inside your merchant account.

apiPassword

YES (2)

YES

Character max 50.

The API password assigned by Gateway to the merchant. Can be obtained from the website inside your merchant account.

apiCmd

YES (3)

YES

700

3 digit numeric transaction code must be 700

transaction->merchanttransid

YES (4)

YES

Character max 50.

Merchant transaction id must be included in the request. Merchant transaction id must be unique for each transaction.

transaction->amount

YES (5)

YES

Number with point decimal

Full amount to charge in currency specified. The amount must be specified as a number with decimal point and 2 digits to the right of the decimal point. Decimal separator must be point (.). example: 3500.25 = Three thousand five hundred units of currency and twenty five hundredths of a single unit of currency.

transaction->curcode

YES (6)

YES

Character 3.

May only use currencies specified in the Merchant Agreement.

transaction

YES

Xml Node

Section containing Transaction Information

transaction->description

YES

Character max 100.

Description of the charge. When available, that description may be used in the billing statement of the card holder.

transaction->merchantspecific1

OPT

Character max 200.

Merchant specific data for merchant use only. Data sent in this field will be stored and sent in any communication or response to the merchant.

transaction->merchantspecific2

OPT

Character max 200.

Merchant specific data for merchant use only. Data sent in this field will be stored and sent in any communication or response to the merchant.

transaction->merchantspecific3

OPT

Character max 200.

Merchant specific data for merchant use only. Data sent in this field will be stored and sent in any communication or response to the merchant.

transaction->merchantspecific4

OPT

Character max 200.

Merchant specific data for merchant use only. Data sent in this field will be stored and sent in any communication or response to the merchant.

transaction->merchantspecific5

OPT

Character max 200.

Merchant specific data for merchant use only. Data sent in this field will be stored and sent in any communication or response to the merchant.

customer

YES

Xml Node

Section containing Customer Information

customer->firstname

YES

Character max 50.

First name of the Customer.

customer->lastname

YES

Character max 50.

Last name of the Customer.

customer->birthday

YES*

Number 1-2 digits

Day of birth of the Customer (1-31) Important Note: If Merchant cannot provide such data, he/she should contact GPN’s Sales Account Manager. *Tag will be set as “Optional” only with Sales Account Manager approval.

customer->birthmonth

YES*

Number 1-2 digits

Month of birth of the customer (1-12) Important Note: If Merchant cannot provide such data, he/she should contact GPN’s Sales Account Manager. *Tag will be set as “Optional” only with Sales Account Manager approval.

customer->birthyear

YES*

Number 4 digits

Year of birth of the customer (1900-2100) Important Note: If Merchant cannot provide such data, he/she should contact GPN’s Sales Account Manager. *Tag will be set as “Optional” only with Sales Account Manager approval.

customer->email

YES

Character max 100.

Email of the Customer.

customer->countryiso

YES

Character exactly 3.

3 letter ISO country code of the Customer. Full list of codes can be obtained from the website inside your merchant account.

customer->stateregioniso

YES

Character max 3.

1-3 character ISO 3166 state/region/province code of the Customer. Full list of codes can be obtained from the website inside your merchant account.

customer->zippostal

YES

Character max 15.

Customer’s Zipcode or postal code.

customer->city

YES

Character max 50.

Customer’s City

customer->address1

YES

Character max 75.

Customer’s address line 1

customer->address2

OPT

Character max 75.

Customer’s address line 2

customer->phone1phone

YES

Character max 20.

Customer’s phone number, including country code and area code. Digits only, without (+) character

customer->phone2phone

OPT

Character max 20.

Customer’s phone number, including country code and area code. Digits only, without (+) character

customer->accountid

YES

Character max 50.

Customer unique account id used inside the merchant organization.

customer->ipaddress

YES

Character max 15.

Full IP address of the customer used for this transaction

creditcard

COND

Xml Node

Section containing sepa bank account Information. Required for sepa transactions, forbidden for credit card transactions.

creditcard->ccnumber

YES (7)

YES

Character max 16.

Full credit card number without dashes or separators. Only numbers.

creditcard->cccvv

YES (8)

YES

Character max 4.

Verification Code of the Credit Card

creditcard->expmonth

YES

Numeric 1-2

Expiration month of the credit card.

creditcard->expyear

YES

Numeric 4

Expiration year of the credit card.

creditcard->nameoncard

YES (9)

YES

Character max 50.

Full name as it appears on card.

creditcard->billingcountryiso

YES

Character exactly 3.

3-digits ISO country code of the Customer. Full list of codes can be obtained from the website inside your merchant account.

creditcard->billingstateregioniso

YES

Character max 5.

ISO 3166 state/region/province code of the Customer. Full list of codes can be obtained from the website inside your merchant account.

creditcard->billingzippostal

YES

Character max 15.

Customer’s Zip code or postal code.

creditcard->billingcity

YES

Character max 50.

Customer’s City

creditcard->billingaddress1

YES

Character max 75.

Customer’s address line 1

creditcard->billingaddress2

OPT

Character max 75.

Customer’s address line 2

creditcard->billingphone1phone

YES

Character max 20.

Customer’s phone number, including country code and area code. Digits only, without (+) character

creditcard->issuemonth

OPT

Numeric 1-2

Issuing month of the credit card.

creditcard->issueyear

OPT

Numeric 4

Issuing year of the credit card.

creditcard->returnurl

COND

Character string max 2000

The URL on the merchant website the customer will be returned to after the transaction has been processed.

checksum

YES

Character 36

SHA-1 calculated using the fields specified by the transaction plus the API key assigned by gateway to the merchant. This field must be calculated using the fields marked as “Include in checksum” (in the order indicated) plus the API key at the end.

auth

YES

Xml Node

Section containing authorization type

auth->type

YES

Character max. 7

This tag Must be present. Valid values are Direct = non- 3DS Charge (Auth/Capture) Auth = non-3DS Auth Only 3DS = 3DS Charge (Auth/Capture) Auth3DS = 3DS Auth Only Note: only those choices available as indicated in the Merchant Profile are accepted.

auth->sid

COND

Character no limit*

This tag is used only during 3D Secure transactions. It is intended to use as a session identification string and it is forwarded to you as a part of your Return URL. (See Appendix for “3D Secure Integration”) Note: Keep in mind that URL length (your Return URL + SID) must be under 2 000 characters

auth->xid

COND

28 byte-long

base-64 encoded XID : Unique Internet transaction ID To be taken from ACS Response.

auth->eci

COND

Numeric 2

Valid values are 01,02,05,06,07 MasterCard: 01 / 02 Visa: 05 / 06 / 07 empty for non-3D transactions To be taken from ACS Response.

auth->cavv

COND

Character 28

contains a 20-byte value that has been Base64 encoded, giving a 28 byte result. To be taken from ACS Response.

auth->cavvAlgorithm

COND

Numeric 1

Digit from [0-9] depending on ACS response. To be taken from ACS Response.

700 – Response

You initiate a transaction with an authentication type of either 3DS or Auth3DS.

Auth3DS involves a two-step process of authorization and capture. Some merchants opt for Auth3DS, where they authorize the payment and keep it in an AUTHORIZED status for a few days (usually less than 7) before capturing the funds. This waiting period serves as a buffer, allowing customers to cancel the deposit without requiring a refund. This practice helps prevent Chargebacks (CHB) because a transaction can be marked as CHB if it is not fully captured.

Transaction results:

<?xml version="1.0" encoding="utf-8"?>
<transaction>
  <result>SUCCESS</result>
  <merchanttransid></merchanttransid>
  <transref>343387</transref>
  <gatetransid></gatetransid>
  <errorcode></errorcode>
  <errormessage/>
  <description>Test approved</description>
  <descriptor></descriptor>
</transaction>

The gateway response includes XML data with the PENDING status. In this case, direct the user to the specified URL where they will complete the redirection process and proceed to the URL.

Response Data description:

NODE
REQUIRED
DATA TYPE
DESCRIPTION

result

YES

Character

Indicates the result of the transaction. SUCCESS: Customer’s Credit Card account has been charged (or AUTHORIZED) with the amount of the transaction. DECLINED: transaction was declined. ERROR: An error has been detected in the request. PENDING: If the Issuing bank has been determined to participate in the 3DS program, this is the normal response and it will include the redirect URL. The merchant must present a redirect screen to the cardholder, using the URL.

merchanttransid

YES

Character max 50.

Unique merchant transaction id received in the request.

transref

COND

Integer

Gateway’s transaction reference number. Will be sent in the response only if the result is not ERROR. Merchant should save this reference number for support and troubleshooting.

gatetransid

COND

Character 36

Gateway transaction ID. Will be sent in the response only if the result is not ERROR. Merchant should save this reference number for refunds and other transaction activity performed through API.

errorcode

YES

Character 3

Error Code of the transaction or 000 if no error condition found.

errormessage

OPT

Character max 100

Full description of the error.

description

OPT

Character no limit

Optional details of the transaction except in the case of DECLINED and then the reason for the decline. May be null.

redirect

COND

Character string max 2000

Direct the user to this URL, where he will complete the process and be redirected to the return URL

The 700 request is plain XML that contains the following data:

<?xml version="1.0" encoding="UTF-8"?>
<transaction>
  <transaction>
    <merchanttransid></merchanttransid>
    <amountamount>
    <curcode></curcode>
    <description></description>
  </transaction>
  <customer>
    <id></id>
    <ipaddress></ipaddress>
  </customer>
  <auth>
    <type></type>
  </auth>
  <creditcard>
    <token></token>
    <cccvv></cccvv>
    <returnurl></returnurl>
  </creditcard>
  <apiUser></apiUser>
  <apiPassword></apiPassword>
  <apiCmd></apiCmd>
  <checksum></checksum>
</transaction>
							  

The 700 response is plain XML that contains the following data:


	<?xml version="1.0" encoding="utf-8"?>
	<transaction>
	  <result></result>
	  <merchanttransid></merchanttransid>
	  <transref></transref>
	  <gatetransid></gatetransid>
	  <errorcode></errorcode>
	  <errormessage/>
	  <description></description>
	  <descriptor></descriptor>
	  <redirect></redirect>
	</transaction>

Good to know: This API method was created using the API Method block, it's how you can build out an API method documentation from scratch. Have a play with the block and you'll see you can do some nifty things like add and reorder parameters, document responses, and give your methods detailed descriptions.

Last updated