PAYONE Secured Installment offers merchants in German-speaking countries the opportunity to integrate the "Buy Now, Pay Later" (BNPL) payment method installment as payment method in their online store. In doing so, our Partner Payla assumes the full fraud and default risk and supports merchants throughout the entire value chain from integration assistance to collection handover. |
Links:
Document | Language | Description | URL |
---|---|---|---|
Terms of payment | German | Framework for the use of the mentioned payment methods | https://legal.paylater.payone.com/de/terms-of-payment.html |
Data protection notice | German | Describes, among other things, the use of the personal data | https://legal.paylater.payone.com/de/data-protection-payments.html |
Terms of payment | English | Framework for the use of the mentioned payment methods | https://legal.paylater.payone.com/en/terms-of-payment.html |
Data protection notice | English | Describes, among other things, the use of the personal data | https://legal.paylater.payone.com/en/data-protection-payments.html |
POST Request - genericpayment – add_paydata[action] = installment_options
Genericpayment request for retrieving the installment options from the service provider.
Because the authorization request will immediatly activate the claim (start of the due date), we recommend to use the preauthorization and capture request for retail business with delivery time.
request
required
|
Fixed Value: preauthorization / authorization
|
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
|
clearingtype
required
|
Fixed Value fnc
|
financingtype
required
|
Fixed Value PIN
PIN: PAYONE Secured Installment |
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. The amount must be less than or equal to the amount of the corresponding booking. |
currency
required
|
Fixed Value EUR
|
add_paydata[action]
required
|
AN..255
Set to "installment_options" |
add_paydata[businessRelation]
required
|
AN..255
Set to "b2c" |
status
|
Permitted Values
OK
ERROR
|
workorderid
|
Format CHAR(1..50)
The workorderid is used for the genericpayment request. |
add_paydata[installment_option_id]
|
AN..255
Installment Option Identifier. |
add_paydata[amount_value]
|
AN..255
Amount to calculate installment options. |
add_paydata[amount_currency]
|
AN..255
Currency of the amount. |
add_paydata[total_amount_value]
|
AN..255
Total rate amount. |
add_paydata[total_amount_currency]
|
AN..255
Currency of the amount. |
add_paydata[first_rate_date]
|
AN..255
Due date of first rate. |
add_paydata[last_rate_amount_value]
|
AN..255
Amount of money, represented as a decimal value. |
add_paydata[last_rate_amount_currency]
|
AN..255
Currency of the amount. |
add_paydata[nominal_interest_rate]
|
AN..255
Nominal interest amount. |
add_paydata[effective_interest_rate]
|
AN..255
Effective interest amount. |
add_paydata[number_of_payments]
|
AN..255
The number of monthly payments for this installment. |
add_paydata[monthly_amount_value]
|
AN..255
Monthly rate amount. |
add_paydata[monthly_amount_currency]
|
AN..255
Currency of the amount. |
add_paydata[link_credit_information_type]
|
AN..255
Link with credit information. |
add_paydata[link_credit_information_href]
|
AN..255
URL of link. |
add_paydata[link_credit_information_type]
|
AN..255
Content type of linked data. |
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
add_paydata[action]=installment_options add_paydata[businessRelation]=b2c mid=54321 aid=12345 portalid=12345123
key=abcdefghijklmn123456789 request=genericpayment mode=live clearingtype=fnc financingtype=PIN amount=20000 currency=EUR
RESPONSE
status=OK workorderid=ABCDEFGHIJKLMNOP123 add_paydata[total_amount_currency_0]=EUR add_paydata[total_amount_currency_1]=EUR add_paydata[first_rate_date_0]=2022-11-28 add_paydata[link_credit_information_type_0]=application/pdf add_paydata[nominal_interest_rate_0]=999 add_paydata[nominal_interest_rate_1]=1199 add_paydata[amount_currency]=EUR add_paydata[nominal_interest_rate_2]=1499 add_paydata[last_rate_amount_value_0]=17033 add_paydata[first_rate_date_1]=2022-11-28 add_paydata[last_rate_amount_value_2]=4521
add_paydata[last_rate_amount_value_1]=8670
add_paydata[first_rate_date_2]=2022-11-28
add_paydata[total_amount_currency_2]=EUR
add_paydata[amount_value]=50000
add_paydata[effective_interest_rate_2]=1510
add_paydata[number_of_payments_1]=6
add_paydata[number_of_payments_0]=3
add_paydata[total_amount_value_1]=52035
add_paydata[total_amount_value_0]=51099
add_paydata[number_of_payments_2]=12
add_paydata[total_amount_value_2]=54351
add_paydata[installment_option_id_2]=IOP_bbc08f0a1b2a41268048b41e2efb31a4
add_paydata[installment_option_id_1]=IOP_78094545483947868a68a2fb01ac3015
add_paydata[link_credit_information_type_2]=application/pdf add_paydata[installment_option_id_0]=IOP_06f07670e25645d49de8ebf62a7030da
add_paydata[link_credit_information_type_1]=application/pdf
add_paydata[last_rate_amount_currency_0]=EUR
add_paydata[last_rate_amount_currency_1]=EUR
add_paydata[monthly_amount_value_2]=4530
add_paydata[monthly_amount_value_1]=8673
add_paydata[last_rate_amount_currency_2]=EUR
add_paydata[monthly_amount_value_0]=17033
add_paydata[monthly_amount_currency_1]=EUR
add_paydata[monthly_amount_currency_2]=EUR
add_paydata[monthly_amount_currency_0]=EUR
add_paydata[effective_interest_rate_0]=1013
add_paydata[link_credit_information_href_1]=https://api.playground.payla.io/v1/installment_options/IOP_78094545483947868a68a2fb01ac3015/credit_information?amount=500.00¤cy=EUR&shop_id=SHO_b2cf317247314c08bce8759c3672e991
add_paydata[link_credit_information_href_0]=https://api.playground.payla.io/v1/installment_options/IOP_06f07670e25645d49de8ebf62a7030da/credit_information?amount=500.00¤cy=EUR&shop_id=SHO_b2cf317247314c08bce8759c3672e991 add_paydata[effective_interest_rate_1]=1212
add_paydata[link_credit_information_href_2]=https://api.playground.payla.io/v1/installment_options/IOP_bbc08f0a1b2a41268048b41e2efb31a4/credit_information?amount=500.00¤cy=EUR&shop_id=SHO_b2cf317247314c08bce8759c3672e991
POST Request - Pre-/ Authorization
During the preauthorization a risk check for the customer is performed. Depending on the result the customer qualifies or disqualifies from using this payment method. When the risk of payment default is deemed too high the transaction can’t be insured and the customer is denied, yielding an error message and the status “ERROR”.
Generally, the more customer data you send, the better the risk check can decide to give an insurance or not. Nonetheless, there following table contains flags, if a parameter is optional or not.
If the preauthorization is successful the response will contain the status “APPROVED”.
Using the Preauthorization request does NOT finalize the claim. In order to start the dunning process the transactions need to be captured first.
Please bear in mind, that a preauthorization is valid for 28 days. You need to make sure, that you capture this preauthorization in this period. Otherwise, if you know that you won’t capture the amount, please send a cancel (capture with amount=0), to free the reserved guarantee.
request
required
|
Fixed Value: preauthorization / authorization
|
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
|
workorderid
required
|
Format: CHAR(1..50)
Reference ID to the generic Request. |
clearingtype
required
|
Fixed Value: fnc
|
financingtype
required
|
Fixed Value: PDD
PAYONE Secured Direct Debit |
mode
required
|
Fixed Value: test/live
Can be either test environment (test) or live environment (live) |
reference
optional
|
Format CHAR(2..255)
A unique ID that will be displayed in your shop backend and for the customer |
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. 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 |
param
optional
|
Format CHAR(1..255)
Individual parameter (per payment process) |
narrative_text
optional
|
Format CHAR(1..81)
Dynamic text element on account statements. (3 lines with 27 characters each) and credit card statements. |
customer_is_present
optional
|
Format LIST
Permitted Values yes / no
Indicates whether customer is “present” and can enter their data in the shop (=yes). Or customer is not present and can not enter any data (=no). |
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 |
||||||
businessrelation
required
|
Format LIST
Value specifies business relation between merchant and customer |
||||||
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
required
|
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 |
||||||
street
required
|
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
required
|
Format CHAR(2..50)
Permitted Symbols [0-9][A-Z][a-z][_.-/ ]
Postcode |
||||||
city
required
|
Format CHAR(2..50)
City of customer |
||||||
country
required
|
Fixed Value DE
|
||||||
state
optional
|
Format LIST
Permitted values: ISO 3166-2 States (regions) 2-letter-codes
Specifies state / region of country for the customer. "state" is required for these countries: US, CA, CN, JP, MX, BR, AR, ID, TH, IN and must not be used for all other countries. |
||||||
email
required
|
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
required
|
Format CHAR(1..30)
Phone number of customer |
||||||
birthday
required
|
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 |
||||||
bankaccountholder
required
|
Format CHAR(1..39)
Account holder |
||||||
iban
required
|
Format CHAR(10..34)
Permitted Symbols [0-9][A-Z]
IBAN to be used for payment or to be checked |
shipping_firstname
optional
|
Format CHAR(1..50)
First name of delivery address |
||||||
shipping_lastname
optional
|
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
optional
|
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
|
it[n]
required
|
|
||||||||||
id[n]
required
|
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]
required
|
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]
required
|
Format NUMERIC(6)
Array elements [n] starting with [1]; serially numbered; max [400]
Quantity of this item |
||||||||||
de[n]
required
|
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) |
add_paydata[installment_option_id]
required
|
FORMAT AN(255)
Installment Option Identifier. |
add_paydata[device_token]
required
|
FORMAT AN(255)
Device fingerprinting token. |
status
required
|
Permitted Values
APPROVED
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 |
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
request=preauthorization mid=54321 aid=12345 portalid=12345123 key=abcdefghijklmn123456789 mode=live bankaccountholder=Max Mustermann clearingtype=fnc financingtype=PIN workorderid=PP2ACV24K99WDPTB amount=20000 currency=EUR businessrelation=b2c reference=jv-1668434776 firstname=Max lastname=Mustermann street=Musterweg 1 city=Musterstadt zip=12345 country=DE birthday=19820324 telephonenumber=491731234567 email=max@mustermann.de ip=123.123.123.123 iban=DE12345678910111213141 add_paydata[device_token]=abcdefghijklmn123456789 (your customer device token) add_paydata[installment_option_id]=IOP_78094545483947868a68a2fb01ac3015 it[1]=goods it[2]=shipment id[1]=1001001 id[2]=1001002 de[1]=Testartikel 1 de[2]=Transport no[1]=1 no[2]=1 pr[1]=1000 pr[2]=100 va[1]=19 va[2]=19
RESPONSE
status=APPROVED
txid=753359579
userid=483104612
POST Request - Capture
request
required
|
Fixed Value: capture
|
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
|
txid
required
|
Format NUMERIC(9..12)
The txid specifies the payment process within the PAYONE platform |
||||||
capturemode
optional
|
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) |
||||||
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
|
Fixed Value EUR
|
||||||
settleaccount
optional
|
Format LIST
Provides information about whether a settlement of balances has been carried out. |
add_paydata[cancellation_reason]
optional
|
Format: LIST
Note: Mandatory for Capture=0 and capturemode=completed if the capture amount is lower than the reservation amount.
|
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
aid=12345
amount=20000
currency=EUR
de[1]=Testartikel 1
de[2]=Transport
id[1]=1001001
id[2]=1001002
it[1]=goods
it[2]=shipment
key=abcdefghijklmn123456789
mid=54321
mode=live
no[1]=1
no[2]=1
portalid=12345123
pr[1]=10000
pr[2]=10000
request=capture
sequencenumber=1
settleaccount=auto
txid=753359579
va[1]=19
va[2]=19
RESPONSE
status=APPROVED
txid=753359579
settleaccount=yes
POST Request - Debit
request
required
|
Fixed Value: debit
|
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
|
add_paydata[cancellation_reason]
optional
|
Format: LIST
Note: Mandatory for Capture=0 and capturemode=completed if the capture amount is lower than the reservation amount.
|
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) |
||||||
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. The amount must be less than or equal to the amount of the corresponding booking. |
||||||
currency
required
|
Fixed Value EUR
|
||||||
narrative_text
optional
|
Format CHAR(1..81)
Dynamic text element on account statements (3 lines with 27 characters each) and credit card statements. |
||||||
clearingtype
optional
|
Fixed Value wlt
|
||||||
use_customerdata
optional
|
Format LIST
Use account details from debtor's master data |
||||||
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
|
|
||||||||||
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)
VAT rate (% or bp) Array elements [n] starting with [1]; serially numbered; max [400] |
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
aid=12345
amount=-20000
currency=EUR
key=abcdefghijklmn123456789
mid=54321
mode=live
portalid=12345123
request=refund
sequencenumber=2
txid=753359579
RESPONSE
status=APPROVED
txid=753359579