Visa Inc. is a public limited company and one of the two major companies for payment cards (credit cards, debit cards and credit cards) and employs around 20,500 people. Visa grants licenses to banks worldwide for issuing their cards (issuing licenses) and for billing contract companies (so-called acquiring licenses). In Europe, the London-Westminster-based subsidiary Visa Europe Services Inc. is responsible. Its sphere of influence also includes the non-European countries of Turkey and Israel. The tasks and rights of Visa are carried out in the individual countries by so-called Domestic Members. With a turnover of 25 billion US dollars (USD), EBITDA of 17.7 billion USD and 20,500 employees, Visa Inc. is ranked 122nd among the world's largest companies (as of mid-2021) according to the Forbes Global 2000. The company had a market capitalization of 501 billion USD at the end of 2020, making it the most expensive company from the financial sector worldwide. |
Mastercard Inc. is the second-largest payment-processing corporation worldwide. It offers a range of payment transaction processing and other related-payment services. Its headquarters are in Purchase, New York. Throughout the world, its principal business is to process payments between the banks of merchants and the card-issuing banks or credit unions of the purchasers who use the Mastercard-brand debit, credit and prepaid cards to make purchases. Mastercard has been publicly traded since 2006. |
American Express Company (Amex) is an American bank holding company and multinational financial services corporation that specializes in payment cards. It is headquartered at 200 Vesey Street, also known as American Express Tower, New York. Amex is the fourth largest card network globally based on purchase volume. |
JCB Co., Ltd., formerly Japan Credit Bureau, is a credit card company based in Tokyo, Japan. Its cards are accepted at JCB merchants, and has strategic alliances with Discover Network merchants in the United States, UnionPay merchants in China, American Express merchants in Canada, and RuPay merchants in India. With a turnover of 25 billion US dollars (USD), EBITDA of 17.7 billion USD and 20,500 employees, Visa Inc. is ranked 122nd among the world's largest companies (as of mid-2021) according to the Forbes Global 2000. The company had a market capitalization of 501 billion USD at the end of 2020, making it the most expensive company from the financial sector worldwide. |
Diners Club International (DCI), founded as Diners Club, is a charge card company owned by Discover Financial Services. Formed in 1950, it was the first independent payment card company in the world, successfully establishing the financial service of issuing travel and entertainment (T&E) credit cards as a viable business. Diners Club International and its franchises serve individuals from around the world with operations in 59 countries. |
Discover is a credit card brand issued primarily in the United States. It was introduced by Sears in 1985. When launched, Discover did not charge an annual fee and offered a higher-than-normal credit limit. A subsequent innovation was "Cashback Bonus" on purchases. Discover is the third largest credit card brand in the U.S. based on the number of cards in circulation, behind Visa and Mastercard, with 57 million cardholders. |
UnionPay, also known as China UnionPay or by its abbreviation, CUP or UPI internationally, is a Chinese state-owned financial services corporation headquartered in Shanghai, China. It provides bank card services and a major card scheme in mainland China. UnionPay offers mobile and online payments services. Founded on 26 March 2002, China UnionPay is an association for China's banking card industry, operating under the approval of the People's Bank of China. It is also an electronic funds transfer at point of sale (EFTPOS) network, and the only interbank network in China that links all the automatic teller machine (ATMs) of all banks throughout the country. UnionPay cards can be used in 181 countries and regions around the world. |
You can find the Recuring all information about recurring transactions via credit card. We have listed there all information neccessary in order to successfully set up recurring credit card payments. |
POST Request - creditcardcheck
The CreditCardCheck checks credit cards for plausibility in real-time.
Additionally, this request offers the possibility to store credit card data. In this case, the response submits what is known as a pseudo card number.
request
required
|
Fixed Value: creditcardcheck
|
mid
required
|
your merchant ID, 5-digit numeric
|
aid
required
|
your subaccount ID, 5-digit numeric
|
portalId
required
|
your Portal ID, 7-digit numeric
|
key
required
|
your key value, alpha-numeric
|
channel
required
|
Fixed Value: clientapi
|
channelDetail
required
|
Permitted Value: payoneHosted
|
cardpan
required
|
Format NUMERIC(13..19)
Primary account number of credit card |
cardtype
optional
|
Format LIST
The Parameter “cardtype” can be dropped and then the PAYONE Platform will return the cardtype in the response depending on the given cardpan. This cardtype has then be passed for future requests (like “preauthorization” / “authorization”) BIN range for automatic card type detection |
cardexpiredate
required
|
Format NUMERIC(4), YYMM
Credit card expiry date YYMM |
cardcvc2
optional
|
Format NUMERIC(3..4)
Credit card security number For SAQ A compliance: PAYONE Frontend hosted iFrame must be used. This parameter must not be used. |
status
|
Permitted Values
VALID
INVALID
ERROR
|
pseudocardpan
optional
|
Format NUMERIC(16..19)
Pseudo primary account number for a credit card. This token is unique per merchant and cardpan/expiredate and can be used in any payment-request with credit cards to refer to an existing credit card in the PAYONE platform. |
truncatedcardpan
optional
|
Format CHAR(13..19)
Masked cardpan, i.e. 411111xxxxxx1111 (is returned if storecarddata=yes) |
cardtype
optional
|
Format LIST
Card type of credit card |
cardexpiredate
optional
|
Format NUMERIC(4), YYMM
Credit card expiry date YYMM |
errorcode
|
Format NUMERIC(1..6)
In case of error the PAYONE Platform returns an error code for your internal usage. |
errormessage
|
Format CHAR(1..1024)
In case of error the PAYONE Platform returns an error message for your internal usage. |
customermessage
|
Format CHAR(1..1024)
The customermessage is returned to your system in order to be displayed to the customer. (Language selection is based on the end customer's language, parameter "language") |
errorcode
|
Format NUMERIC(1..6)
In case of error the PAYONE Platform returns an error code for your internal usage. |
errormessage
|
Format CHAR(1..1024)
In case of error the PAYONE Platform returns an error message for your internal usage. |
customermessage
|
Format CHAR(1..1024)
The customermessage is returned to your system in order to be displayed to the customer. (Language selection is based on the end customer's language, parameter "language") |
Host: api.pay1.de
Content-Type: application/x-www-form-urlencoded
Payload
aid=52078
api_version=3.8
callback_method=PayoneGlobals.callback
cardexpiredate=2504
cardexpiremonth=4
cardexpireyear=2025
cardpan=411111xxxxxx1111
cardtype=V
channel=clientapi
channelDetail=payoneHosted
encoding=UTF-8
hash=f5aa284c7cef8dfb3e289290bc47d236
key=17031f73e2c6f9755788bddfff04169b
mid=14648
mode=test
portalid=2037267
request=creditcardcheck
responsetype=JSON
storecarddata=yes
RESPONSE
status=VALID
cardtype=V
pseudocardpan=9410010000038248746
truncatedcardpan=411111XXXXXX1111
cardexpiredate=2504
POST Request - Pre-/ Authorization
request
required
|
Fixed Value: creditcardcheck
|
mid
required
|
your merchant ID, 5-digit numeric
|
aid
required
|
your subaccount ID, 5-digit numeric
|
portalId
required
|
your Portal ID, 7-digit numeric
|
key
required
|
your key value, alpha-numeric
|
channel
required
|
Fixed Value: clientapi
|
channelDetail
required
|
Permitted Value: payoneHosted
|
customerid
optional
|
Format CHAR(1..20)
Permitted Symbols [0-9, a-z, A-Z, .,-,_,/]
Merchant's customer ID, defined by you / merchant to refer to the customer record. "customerid" can be used to identify a customer record. If "customerid" is used then stored customer data are loaded automatically.
|
userid
optional
|
Format NUMERIC(6..12)
PAYONE User ID, defined by PAYONE |
salutation
optional
|
Format CHAR(1..10)
The customer's salutation |
title
optional
|
Format CHAR(1..20)
Samples
Dr. Prof. Dr.-Ing. Title of the customer |
firstname
optional
|
Format CHAR(1..50)
First name of customer; optional if company is used, i.e.: you may use "company" or "lastname" or "firstname" plus "lastname" |
lastname
required
|
Format CHAR(2..50)
Last name of customer; optional if company is used, i.e.: you may use "company" or "lastname" or "firstname" plus "lastname" |
company
optional
|
Format CHAR(2..50)
Comany name of customer; optional if company is used, i.e.: you may use "company" or "lastname" or "firstname" plus "lastname" |
street
optional
|
Format CHAR(1..50)
Street number and name (required: at least one character) |
addressaddition
optional
|
Format CHAR(1..50)
Samples
7th floor c/o Maier Specifies an additional address line for the invoice address of the customer. |
zip
optional
|
Format CHAR(2..50)
Permitted Symbols [0-9][A-Z][a-z][_.-/ ]
Postcode |
city
optional
|
Format CHAR(2..50)
City of customer |
country
required
|
Format LIST
|
email
optional
|
Format CHAR(5..254)
Mandatory if "add_paydata[shopping_cart_type]=DIGITAL" Permitted Symbols RFC 5322 Special Remark email validation: Max. length for email is 254 characters. Validation is set up in the following way: Username = Max. 63 characters Domain Name = Max. 63 characters "@" and "." is counted as a character as well; in case of a total of three suffixes, this would allow a total of 254 characters. email-address of customer |
telephonenumber
optional
|
Format CHAR(1..30)
Phone number of customer |
birthday
optional
|
Format DATE(8), YYYYMMDD
Samples
20190101 19991231 Date of birth of customer |
language
optional
|
Format LIST
Permitted values ISO 639-1 (Language)2-letter-codes
Language indicator (ISO 639) to specify the language that should be presented to the customer (e.g. for error messages, frontend display). If the language is not transferred, the browser language will be used. For a non-supported language English will be used. |
vatid
optional
|
Format CHAR(1..50)
VAT identification number. Used for b2b transactions to indicate VAT number of customer. |
gender
optional
|
Format LIST
Permitted values f / m / d
Gender of customer (female / male / diverse* ) * currently not in use |
personalid
optional
|
Format CHAR(1..32)
Permitted Symbols [0-9][A-Z][a-z][+-./()]
Person specific numbers or characters, e.g. number of passport / ID card |
ip
optional
|
Format CHAR(1..39)
Customer's IP-V4-address (123.123.123.123) or IP-V6-address |
shipping_firstname
required
|
Format CHAR(1..50)
First name of delivery address |
||||||
shipping_lastname
required
|
Format CHAR(1..50)
Surname of delivery address |
||||||
shipping_company
optional
|
Format CHAR(2..50)
Company name of delivery address |
||||||
shipping_street
optional
|
Format CHAR(2..50)
Street number and name of delivery address |
||||||
shipping_zip
required
|
Format CHAR(2..50)
Postcode of delivery address |
||||||
shipping_addressaddition
optional
|
Format CHAR(1..50)
Specifies an additional address line for the delivery address of the customer, e.g. "7th floor", "c/o Maier". |
||||||
shipping_country
optional
|
Format LIST
Permitted values ISO 3166 2-letter-codes
Samples
DE GB US Specifies country of address for the customer. Some countries require additional information in parameter "state" |
||||||
shipping_state
optional
|
Format LIST
Permitted values ISO 3166-2 States (regions) 2-letter-codes
|
successurl
required
|
Format CHAR(2..255)
Scheme <scheme>://<host>/<path>
<scheme>://<host>/<path>?<query> scheme-pattern: [a-zA-Z]{1}[a-zA-Z0-9]{1,9}
URL for "payment successful" |
errorurl
required
|
Format CHAR(2..255)
Scheme <scheme>://<host>/<path>
<scheme>://<host>/<path>?<query> scheme-pattern: [a-zA-Z]{1}[a-zA-Z0-9]{1,9}
URL for "faulty payment" |
backurl
required
|
Format CHAR(2..255)
Scheme <scheme>://<host>/<path>
<scheme>://<host>/<path>?<query> scheme-pattern: [a-zA-Z]{1}[a-zA-Z0-9]{1,9}
URL for "Back" or "Cancel" |
it[n]
optional
|
Format LIST
|
||||||||||
id[n]
optional
|
Format CHAR(1..32)
Array elements [n] starting with [1]; serially numbered; max [400]
International Article Number (EAN bzw. GTIN) Product number, SKU, etc. of this item |
||||||||||
pr[n]
optional
|
Format NUMERIC(10) max. 19 999 999 99
Array elements [n] starting with [1]; serially numbered; max [400]
Unit gross price of the item in smallest unit! e.g. cent |
||||||||||
no[n]
optional
|
Format NUMERIC(6)
Array elements [n] starting with [1]; serially numbered; max [400]
Quantity of this item |
||||||||||
de[n]
optional
|
Format CHAR(1..255)
Array elements [n] starting with [1]; serially numbered; max [400]
Description of this item. Will be printed on documents to customer. |
||||||||||
va[n]
optional
|
Format NUMERIC(4)
Array elements [n] starting with [1]; serially numbered; max [400]
VAT rate (% or bp) |
status
required
|
Permitted Values
APPROVED
REDIRECT
ERROR
|
txid
|
Format NUMERIC(9..12)
The txid specifies the payment process within the PAYONE platform |
userid
|
Format NUMERIC(6..12)
PAYONE User ID, defined by PAYONE |
txid
|
Format NUMERIC(9..12)
The txid specifies the payment process within the PAYONE platform |
userid
|
Format NUMERIC(6..12)
PAYONE User ID, defined by PAYONE |
redirecturl
|
Redirect URL |
errorcode
|
Format NUMERIC(1..6)
In case of error the PAYONE Platform returns an error code for your internal usage. |
errormessage
|
Format CHAR(1..1024)
In case of error the PAYONE Platform returns an error message for your internal usage. |
customermessage
|
Format CHAR(1..1024)
The customermessage is returned to your system in order to be displayed to the customer. (Language selection is based on the end customer's language, parameter "language") |
Host: api.pay1.de
Content-Type: application/x-www-form-urlencoded
PAYLOAD
aid=52078
amount=46385
cardholder=frank tester
city=Neuss
clearingtype=cc
country=DE
currency=EUR
customer_is_present=yes
de[1]=Hauptartikel
de[2]=Standard Versand
email=test@payone.com
encoding=UTF-8
errorurl=https://yourdomain.dev/failure/appendSession/
firstname=Testperson-de
gender=m
id[1]=SW10001
id[2]=ship9
initial_payment=false
ip=172.19.0.34
it[1]=goods
it[2]=shipment
key=17031f73e2c6f9755788bddfff04169b
language=de
lastname=Approved
mid=14648
mode=test
no[1]=1
no[2]=1
param=session-1|1vlvoe60n8s794k8tcg201ffku|7c4f2ebba5d6c2c79a5c70b0da5bb560
portalid=2037267
pr[1]=45995
pr[2]=390
pseudocardpan=9410010000038248746
recurrence=oneclick
reference=1233900437
request=preauthorization
salutation=Herr
shipping_city=Neuss
shipping_country=DE
shipping_firstname=Testperson-de
shipping_lastname=Approved
shipping_street=Hellersbergstraße 99, 14
shipping_zip=41460
street=Hellersbergstraße 99, 14
successurl=https://yourdomain.dev/success/vxn9KEdltaIEUyLPyucOTga2IIDPLJZt/appendSession/
telephonenumber=+491522113356
va[1]=1900
va[2]=1900
zip=41460
RESPONSE
status=APPROVED
txid=911639945
userid=598465200
POST Request - Capture
txid
required
|
Format NUMERIC(9..12)
The txid specifies the payment process within the PAYONE platform |
||||||
capturemode
required
|
Format LIST
Specifies whether this capture is the last one or whether there will be another one in future. |
||||||
sequencenumber
optional
|
Format NUMERIC(1..3)
Permitted values 0..127
Sequence number for this transaction within the payment process (1..n), e.g. PreAuthorization: 0, 1. Capture: 1, 2. Capture: 2 Required for multi partial capture (starting with the 2nd capture) |
||||||
settleaccount
optional
|
Format LIST
Provides information about whether a settlement of balances has been carried out. |
||||||
amount
required
|
Format NUMERIC(1..10)
Permitted values max. +/- 19 999 999 99
Specifies the total gross amount of a payment transaction. Value is given in smallest currency unit, e.g. Cent of Euro; Pence of Pound sterling; Öre of Swedish krona. The amount must be less than or equal to the amount of the corresponding booking. |
||||||
currency
required
|
Format LIST
Permitted values ISO 4217 (currencies) 3-letter-codes
Samples
EUR USD GBP |
||||||
narrative_text
optional
|
Format CHAR(1..81)
Dynamic text element on account statements (3 lines with 27 characters each) and credit card statements. |
it[n]
optional
|
Format LIST
|
||||||||||
id[n]
optional
|
Format CHAR(1..32)
Array elements [n] starting with [1]; serially numbered; max [400]
International Article Number (EAN bzw. GTIN) Product number, SKU, etc. of this item |
||||||||||
pr[n]
optional
|
Format NUMERIC(10) max. 19 999 999 99
Array elements [n] starting with [1]; serially numbered; max [400]
Unit gross price of the item in smallest unit! e.g. cent |
||||||||||
no[n]
optional
|
Format NUMERIC(6)
Array elements [n] starting with [1]; serially numbered; max [400]
Quantity of this item |
||||||||||
de[n]
optional
|
Format CHAR(1..255)
Array elements [n] starting with [1]; serially numbered; max [400]
Description of this item. Will be printed on documents to customer. |
||||||||||
va[n]
optional
|
Format NUMERIC(4)
Array elements [n] starting with [1]; serially numbered; max [400]
VAT rate (% or bp) |
status
|
Permitted Values
APPROVED
PENDING
ERROR
|
txid
|
Format NUMERIC(9..12)
The txid specifies the payment process within the PAYONE platform |
||||||
settleaccount
|
Format LIST
Provides information about whether a settlement of balances has been carried out. |
txid
|
Format NUMERIC(9..12)
The txid specifies the payment process within the PAYONE platform |
userid
|
Format NUMERIC(6..12)
PAYONE User ID, defined by PAYONE |
errorcode
|
Format NUMERIC(1..6)
In case of error the PAYONE Platform returns an error code for your internal usage. |
errormessage
|
Format CHAR(1..1024)
In case of error the PAYONE Platform returns an error message for your internal usage. |
Host: api.pay1.de
Content-Type: application/x-www-form-urlencoded
Payload
amount=2389
capturemode=completed
currency=EUR
de[1]=Hauptartikel mit Eigenschaften S
de[2]=Standard Versand
encoding=UTF-8
id[1]=SW10007
id[2]=Standard Versand
it[1]=goods
it[2]=shipment
key=17031f73e2c6f9755788bddfff04169b
mid=14648
mode=test
no[1]=1
no[2]=1
portalid=2037267
pr[1]=1999
pr[2]=390
request=capture
sequencenumber=1
settleaccount=auto
txid=912162519
va[1]=1900
va[2]=1900
RESPONSE
status=APPROVED
txid=912162519
settleaccount=yes
POST Request - Debit
common Parameters
txid
required
|
Format NUMERIC(9..12)
The txid specifies the payment process within the PAYONE platform |
sequencenumber
required
|
Format NUMERIC(1..3)
Permitted values 0..127 Sequence number for this transaction within the payment process (1..n), e.g. PreAuthorization: 0, 1. Capture: 1, 2. Capture: 2 Required for multi partial capture (starting with the 2nd capture) |
samount
required
|
Format NUMERIC(1..10)
Permitted values max. +/- 19 999 999 99
Specifies the total gross amount of a payment transaction. Value is given in smallest currency unit, e.g. Cent of Euro; Pence of Pound sterling; Öre of Swedish krona. The amount must be less than or equal to the amount of the corresponding booking. |
scurrency
required
|
Format LIST
|
narrative_text
optional
|
Format CHAR(1..81)
Dynamic text element on account statements (3 lines with 27 characters each) and credit card statements. |
transaction_param
optional
|
Format CHAR(1..50)
Permitted Symbols [0-9][A-Z][a-z][.-_/]
Optional parameter for merchant information (per payment request) |
it[n]
optional
|
Format LIST
|
||||||||||
id[n]
optional
|
Format CHAR(1..32)
Array elements [n] starting with [1]; serially numbered; max [400]
International Article Number (EAN bzw. GTIN) Product number, SKU, etc. of this item |
||||||||||
pr[n]
optional
|
Format NUMERIC(10) max. 19 999 999 99
Array elements [n] starting with [1]; serially numbered; max [400]
Unit gross price of the item in smallest unit! e.g. cent |
||||||||||
no[n]
optional
|
Format NUMERIC(6)
Array elements [n] starting with [1]; serially numbered; max [400]
Quantity of this item |
||||||||||
de[n]
optional
|
Format CHAR(1..255)
Array elements [n] starting with [1]; serially numbered; max [400]
Description of this item. Will be printed on documents to customer. |
||||||||||
va[n]
optional
|
Format NUMERIC(4)
Array elements [n] starting with [1]; serially numbered; max [400]
VAT rate (% or bp) |
status
|
Permitted Values
APPROVED
ERROR
|
txid
|
Format NUMERIC(9..12)
The txid specifies the payment process within the PAYONE platform |
||||||
settleaccount
|
Format LIST
Provides information about whether a settlement of balances has been carried out. |
errorcode
|
Format NUMERIC(1..6)
In case of error the PAYONE Platform returns an error code for your internal usage. |
errormessage
|
Format CHAR(1..1024)
In case of error the PAYONE Platform returns an error message for your internal usage. |
customermessage
|
Format CHAR(1..1024)
The customermessage is returned to your system in order to be displayed to the customer. (Language selection is based on the end customer's language, parameter "language") |
Host: api.pay1.de
Content-Type: application/x-www-form-urlencoded
Payload
https://api.pay1.de/post-gateway/
add_paydata[cancellation_reason]=false
amount=-2389
currency=EUR
de[1]=Hauptartikel mit Eigenschaften S
de[2]=Standard Versand
encoding=UTF-8
id[1]=SW10007
id[2]=Standard Versand
it[1]=goods
it[2]=shipment
key=17031f73e2c6f9755788bddfff04169b
mid=14648
mode=test
no[1]=1
no[2]=1
portalid=2037267
pr[1]=-1999
pr[2]=-390
request=debit
sequencenumber=2
txid=912162519
va[1]=1900
va[2]=1900
RESPONSE
status=APPROVED
txid=912162519
settleaccount=yes
ACCOUNTINFO Server API ErrorMessages | |
CREDENTIALSONFILE ServerAPIErrorMessages | |
CUSTOMERINFO ServerAPIErrorMessages | |
MERCHANTRISKINDICATOR ServerAPIErrorMessages | |
PRIORAUTHENTICATIONINFO ServerAPIErrorMessages | |
No. |
Signification |
2620 | Parameter {card_start_date} incorrect |
Value |
Comment |
BIN-Range for automatic card type detection |
---|---|---|
Visa | ||
MasterCard | ||
American Express | ||
Diners / Discover | ||
JCB | ||
Maestro International | ||
China Union Pay | ||
UATP / Airplus | ||
girocard |
*girocard is currently only viable for e-commerce-payments via Apple Pay.
In addition to the "regular" creditcardcheck, the creditcardcheck with checktype=TC
returns specific values for travel cards in the response.
creditcardcheck required
|
Fixed Value: List
Permitted Values: TD
Extended check for travel cards with specific response data |
tcprovider
|
Fixed Value: List
Permitted Values: Airplus, Degussa, Amex
Currently supported Travel Cards |
tcdata
|
Fixed Value: List
Permitted Values: yes, no
|
tcinvoice
|
Fixed Value: List
Permitted Values: yes, no
|
// request edited for clarity
cardpan=122000000000003
checktype=TC
request=creditcardcheck
storecarddata=yes
status=VALID
pseudocardpan=9122010000592458518
tcprovider=Airplus
tcinvoice=yes
cardtype=U
truncatedcardpan=122000XXXXX0003
tcdata=yes
For mode=test
, there is a range of test cards that can be used for creditcardchecks with checktype=TC
PAN | Cardtype | tcprovider | tcdata | tcinvoice |
---|---|---|---|---|
122000000000003 | U | Airplus | yes | yes |
192000100000007 | U | Airplus | yes | yes |
122018800000007 | U | Airplus | yes | no |
4864861000000002 | V | Airplus | yes | yes |
4277411000000007 | V | Degussa | yes | no |
4987441000000005 | V | Degussa | yes | yes |
5197841000000009 | M | Degussa | yes | yes |
5281591000000007 | M | Degussa | yes | yes |
370000100000001 | A | Amex | yes | yes |
Note Test Cards
tcdata=no
and no additional parameters used for travel cardsOnly if mode=live
, the creditcardcheck with checktype=tc
will actually look for the corresponding BIN-Range in the database and return additional parameters in case of a travel card.