About Paysafe Pay Later
General information about Paysafe Pay Later
Further information can be found on the website of Paysafe Pay Later (https://www.paysafe.com).
Process flow chart
Paysafe Pay Later process flow
Paygate interface
Format Description a alphabetical as alphabetical with special characters n numeric an alphanumeric ans alphanumeric with special characters ns numeric with special characters bool boolean expression (true or false) 3 fixed length with 3 digits/characters ..3 variable length with maximum 3 digits/characters enum enumeration of allowed values dttm ISODateTime (YYYY-MM-DDThh:mm:ss) Abbreviation Description CND condition M mandatory O optional C conditional Notice: Please note that the names of parameters can be returned in upper or lower case.Definitions
Data formats
Abbreviations
Comment If a parameter is mandatory, then it must be present If a parameter is optional, then it can be present, but it is not required If a parameter is conditional, then there is a conditional rule which specifies whether it is mandatory or optional
Paysafe Pay Later Invoice payment and Instalment payment
Paysafe Pay Later offers payment by instalment, on account or direct debit options. Different requests, which are controlled via the EventToken parameter, are necessary to completely finalise an authorisation.
Instalment payment:
- Instalment calculation (Calculation)
- Acceptance check before transaction (PreCheck)
- Authorization of the amount at transaction with disclosure of instalment term (PreAuthorization)
Purchase on account & direct debit:
- Acceptance check before transaction (PreCheck)
- Authorization of the amount at transaction (PreAuthorization)
There are further requests after authorisation which are carried out via the same URL:
- Re-authorization in order to change the amount before posting/dispatch. Not possible with payment by instalment. (ReAuthorization)
- Credit notification. Only possible after posting/dispatch. (RefundAnnouncements)
- Data completion only after subsequent disclosure of IDs. (AddData)
Creating/updating Paysafe Pay Later payments
In order to initialize a Paysafe Pay Later payment via server-to-server communication, please go to the following URL:
Notice: For security reasons, Paygate rejects all payment requests with formatting errors. Therefore please use the correct data type for each parameter.
The following table describes the transfer parameters to be encrypted:
Parameter | Format | CND | Description |
---|---|---|---|
MerchantID | ans..30 | M | MerchantID, assigned by Computop. Additionally this parameter has to be passed in plain language too. |
TransID | ans..64 | M | TransactionID which should be unique for each payment |
RefNr | ns..30 | O | Unique reference number |
Amount | n..10 | M | Amount in the smallest currency unit (e.g. EUR Cent). Only EUR and CHF allowed. Please contact the helpdesk, if you want to capture amounts < 100 (smallest currency unit). Notice: Please note the allowed eachten Sie bitte die minimum and maximum amounts. Within the Test-environment these are for purchase on invoice (B2C & B2B): min. 50,00 and max. 5.000,00 EUR/CHF and for purchase on installments min. 150,00 and max. 5000,00 EUR/CHF. Within the Live-environment apply the amounts contractually agreed with Pay Later. These can be values between 1,00 EUR/CHF and 1.000.000,00 EUR/CHF. |
Currency | a3 | M | Currency, three digits DIN / ISO 4217 |
MAC | an64 | O | Hash Message Authentication Code (HMAC) with SHA-256 algorithm |
OrderDesc | ans..768 | O | Description of the goods purchased |
UserData | ans..1024 | O | If specified upon call, Paygate forwards the parameter with the payment result to the shop. |
EventToken | a2 | M | Token for the call of a specific request. <CL> for Calculation <PC> for PreCheck <PA> for PreAuthorization <PZ> for ReAutorization (not with instalment payment) <RA> for RefundAnnouncement (only after capture/shipment) <AD> for AddData |
PayID | an32 | C | ID assigned by Paygate for the payment, e.g. for referencing of batch files. Obligatory for EventToken <PC> (only for instalment payment), <PA>, <PZ>, <RA>, <AD>. |
PayType | ans..15 | C | Payment method Mandatory for: installment, if EventToken <CL>: INSTALLMENT purchase on invoice, if EventToken <PC>: INVOICE direct debit, if EventToken <PC>: DIRECTDEBIT |
CompanyOrPerson | a1 | O | <P> person (standard) or <F> company. Only <P> possible for PayType <INSTALLMENT>. |
Reason | a..64 | O | Legible reason for the transaction |
InstallmentNumber | n..2 | C | Number of monthly instalments. Mandatory for EventToken <PA> and PayType <INSTALLMENT> |
TaxAmount | n..10 | O | VAT. Amount in the smallest currency unit (e.g. EUR Cent) |
FirstName | ans..30 | C | First name. Obligatory for EventToken <PC> |
LastName | ans..30 | C | Last name. Obligatory for EventToken <PC> |
BirthDate | ans10 | C | Date of birth in the format YYYY-MM-DD Obligatory for CompanyOrPerson <P> |
Gender | a1 | OC | Gender: <F> for female, <M> for male. The gender may not be forwarded for CompanyOrPerson <F>. |
Title | ans..20 | O | Title, e.g. Dr. or Prof. |
AddrCountryCode | a2 | OC | Country code for the invoicing address, 2 characters according to ISO 3166. Obligatory for EventToken <PC>. Optional for EventToken <CL>. |
AddrCity | ans..40 | C | Town/city. Obligatory for EventToken <PC>. |
AddrZip | ans..10 | C | Postcode. Obligatory for EventToken <PC>. |
AddrStreet | ans..100 | C | Street name and house number. Obligatory for EventToken <PC>. |
AddrState | ans..40 | O | Federal state |
ans..100 | C | Email address of the customer. Obligatory for EventToken <PC>. | |
IPAddr | ans..15 | C | IP address. Obligatory for EventToken <PC>. |
Language | a2 | O | Customer’s language, e.g. <de> for German |
Phone | ans..20 | C | Telephone number. Obligatory for AddrCountryCode <nl>. |
MobileNo | ans..20 | O | Mobile telephone number |
BrowserSessionID | ans..128 | C | Unique SessonID: mandatory when using the Paysafe Pay Later Fraud Prevention Tool (JavaScript-Code-Snippet), if EventToken <PC> or <PA>. |
Delivery data | |||
sdFirstName | ans..30 | O | First name in the delivery address |
sdLastName | ans..30 | O | Last name in the delivery address |
sdCompany | ans..100 | O | Company name in the delivery address |
sdCountryCode | a2 | C | Country code for the delivery address, 2 characters according to ISO 3166. Obligatory if sdFirstName or sdCompany is transmitted. |
sdStreet | ans..100 | C | Number and street of the delivery address. Obligatory if sdFirstName or sdCompany is transmitted. |
sdZIP | ans..10 | C | Postcode of the delivery address. Obligatory if sdFirstName or sdCompany is transmitted. |
sdCity | ans..40 | C | Town/city of the delivery address. Obligatory if sdFirstName or sdCompany is transmitted. |
sdState | ans..40 | O | Federal state of the delivery address |
Company data | |||
CompanyName | ans..100 | C | Company name. Obligatory for CompanyOrPerson <F>. |
VatID | ans..25 | O | VAT ID |
RegisterNumber | ans..20 | O | Register of Companies number/commercial register |
CompanyID | ans..30 | O | Other register number except VAT ID or Register of Companies number/Commercial Register |
CountryCode | a2 | C | Country code for the bank account, 2 characters according to ISO 3166. Obligatory for PayType <INSTALLMENT> or <DIRECTDEBIT> and EventToken <PA>. |
HolderName | ans..100 | C | Name of account holder. Obligatory for PayType <INSTALLMENT> or <DIRECTDEBIT> and EventToken <PA>. |
IBAN | ans..34 | C | International Bank Account Number. Obligatory for PayType <INSTALLMENT> or <DIRECTDEBIT>, EventToken <PA> and CountryCode <de> or CountryCode <at>. |
BIC | ans..11 | O | Bank Identifier Code |
CustomerGroup | ans..12 | O | Description of the customer group |
CustomerID | ans..30 | O | Customer number at the merchant |
NumberPaidPurchases | n..4 | O | Number of successful purchases |
CustomerScore | n..4 | O | Internal score value at merchant |
ShopURL | ans..128 | O | URL of the web shop |
DateOfRegistration | n8 | O | Registration date of customer in format YYYYMMDD |
TrackingID | ans..50 | O | Tracking ID of merchant system |
ParcelTrackingID | ans..50 | O | Parcel tracking number for returns |
ParcelService | ans..12 | O | Logistics company |
OrderID | ans..32 | O | Order number |
ArticleList | ans..1024 | O | Description and price of the goods purchased Example: <Description>;<Net price>;<VAT>+… <;>separates fields within an article Data type (size): Description = alphanumeric (100) |
ShopID | ans..64 | O | ID of the shop: ID issued by Paysafe Pay Later. |
ShopName | ans..128 | O | Shop-URL without www. or http. - e.g. „myShop.com“ |
LegalName | ans..128 | OC | Obligatory if ShopID is transmitted: Shop company name including legal form, e.g. “MyShop GmbH” or “MyShop AG“ If ShopID is not transmitted the parameter will be ignored. |
GoodsCategory | a..20 | OC | Obligatory if ShopID is transmitted: Type of product Tangible goods: TANGIBLE_GOODS Services: SERVICE_PROVIDER If ShopID is not transmitted the parameter will be ignored. |
Parameters for Paysafe Pay Later payments
The following table describes the result parameters with which the Paygate responds to your system:
Parameter | Format | CND | Description |
---|---|---|---|
MID | ans..30 | M | MerchantID, assigned by Computop |
PayID | an32 | M | ID assigned by Paygate for the payment, e.g. for referencing in batch files. |
XID | an32 | M | ID for all single transactions (authorisation, capture, credit note) for one payment assigned by Paygate |
TransID | ans..64 | M | Merchant’s transaction number |
RefNr | ans..30 | O | Unique reference number for your accounts |
Status | a..50 | M | OK, AUTHORIZE_REQUEST or FAILED |
Description | ans..1024 | M | Further details in the event that payment is rejected. Please do not use the Description but the Code parameter for the transaction status analysis! |
Code | n8 | M | Error code according to Paygate Response Codes (A4 Error codes) |
UserData | ans..1024 | O | If specified upon call, Paygate forwards the parameter with the payment result to the shop. |
CodeExt | ans..10 | O | Error code from Paysafe Pay Later, if agreed with Computop support |
ErrorText | ans..256 | O | Error text from Paysafe Pay Later, if agreed with Computop support |
Reference | ans..32 | M | Internal Paysafe Pay Later ID for the transaction |
PaymentPurpose | ans..32 | O | Purpose of payment from Paysafe Pay Later, which must be stated by the customer upon transfer |
PaymentDetails | ans..1024 | O | Payment details Example: <OriginalAmount>;<TotalAmount>;<MinimumInstalment>;<TermHirePurchase>;<InterestRate>;<EffIntRate>;<PaymentReason>;<Currency>;<CreditInfoUrl>;<PaymentAmount1>;<PaymentDate1>;<PaymentAmountN>;<PaymentDateN>+… <;>separates fields within an article Data type (size): Original amount = alphanumeric (16) |
UrlTerms | ans..1024 | O | URL to the general terms and conditions of business |
ConsentUrl | ans..1024 | O | URL to data protection regulations |
Result parameters for Paysafe Pay Later payments
Capturing a Paysafe Pay Later payment
In order to capture a Paysafe Pay Later payment via a server-to-server communication, go to the following URL:
Notice: A capture or partial capture is only possible for invoice payment. For instalment payment the capture is made automatically (Autocapture), so that a capture is not possible anymore.
Notice: For security reasons, Paygate rejects all payment requests with formatting errors. Therefore please use the correct data type for each parameter.
The following table describes the encrypted payment request parameters:
Parameter | Format | CND | Description |
---|---|---|---|
MerchantID | ans..30 | M | MerchantID, assigned by Computop. Additionally this parameter has to be passed in plain language too. |
PayID | an32 | M | ID assigned by Paygate for the payment, e.g. for referencing in batch files |
TransID | ans..64 | M | ID assigned by Merchant for the payment process to be captured |
RefNr | ans..30 | M | Unique reference number for your accounts |
Amount | n..10 | M | Amount in the smallest currency unit (e.g. EUR Cent) Please contact the helpdesk, if you want to capture amounts < 100 (smallest currency unit). |
Currency | a3 | M | Currency, three digits DIN / ISO 4217 |
MAC | an64 | O | Hash Message Authentication Code (HMAC) with SHA-256 algorithm |
OrderDesc | ans..768 | O | Description of purchased goods, unit prices, merchant’s comment etc. |
UserData | ans..1024 | O | If specified upon call, Paygate forwards the parameter with the payment result to the shop. |
ReqID | ans..32 | O | To avoid double payments, enter an alphanumeric value which identifies your transaction and may be assigned only once. If the transaction is submitted again with the same ReqID, Paygate will not carry out the payment, but will just return the status of the original transaction. Please note that the Paygate must have a finalized transaction status for the first initial action. Submissions with identical ReqID for an open status will be processed regularly. |
TaxAmount | n..10 | O | VAT. Amount in the smallest currency unit (e.g. EUR Cent) |
Reason | a..64 | O | Legible reason for the transaction |
CustomerID | ans..30 | O | Customer number at the merchant |
TrackingID | ans..50 | O | Tracking ID of merchant system |
ParcelTrackingID | ans..50 | O | Parcel tracking number for returns |
ParcelService | ans..12 | O | Logistics company |
OrderID | ans..32 | O | Order number |
Parameters for capturing a Paysafe Pay Later payment
The following table describes the Paygate response parameters:
Parameter | Format | CND | Description |
---|---|---|---|
MID | ans..30 | M | MerchantID, assigned by Computop |
PayID | an32 | M | ID assigned by Paygate for the payment, e.g. for referencing in batch files |
XID | an32 | M | ID for all single transactions (authorisation, capture, credit note) for one payment assigned by Paygate |
TransID | ans..64 | M | TransactionID which should be unique for each payment |
RefNr | ans..30 | O | Unique reference number for your accounts |
Status | a..50 | M | OK, AUTHORIZE_REQUEST or FAILED |
Description | ans..1024 | M | Further details in the event that payment is rejected. Please do not use the Description but the Code parameter for the transaction status analysis! |
Code | n8 | M | Error code according to Paygate Response Codes (A4 Error codes) |
UserData | ans..1024 | O | If specified upon call, Paygate forwards the parameter with the payment result to the shop. |
CodeExt | ans..10 | O | Error code from Paysafe Pay Later, if agreed with Computop support |
ErrorText | ans..256 | O | Error text from Paysafe Pay Later, if agreed with Computop support |
Reference | ans..32 | M | Internal Paysafe Pay Later ID for the transaction |
Response parameters for capturing a Paysafe Pay Later payment
Cancelling a Paysafe Pay Later authorization
In order to cancel a Paysafe Pay Later authorization via a server-to-server communication, go to the following URL:
Notice: A cancellation is only possible for invoice payment. For instalment payment the capture is made automatically (Autocapture), so that a cancellation is not possible anymore.
Notice: For security reasons, Paygate rejects all payment requests with formatting errors. Therefore please use the correct data type for each parameter.
The following table describes the encrypted payment request parameters:
Parameter | Format | CND | Description |
---|---|---|---|
MerchantID | ans..30 | M | MerchantID, assigned by Computop. Additionally this parameter has to be passed in plain language too. |
PayID | an32 | M | ID assigned by Paygate for the payment, e.g. for referencing in batch files |
TransID | ans..64 | M | Merchant ID for the identification of the payment process to be reversed |
RefNr | ans..30 | M | Unique reference number for your accounts |
Amount | n..10 | M | Amount in the smallest currency unit (e.g. EUR Cent) Please contact the helpdesk, if you want to capture amounts < 100 (smallest currency unit). |
Currency | a3 | M | Currency, three digits DIN / ISO 4217 |
MAC | an64 | O | Hash Message Authentication Code (HMAC) with SHA-256 algorithm |
OrderDesc | ans..768 | O | Description of purchased goods, unit prices, merchant’s comment etc. |
UserData | ans..1024 | O | If specified upon call, Paygate forwards the parameter with the payment result to the shop. |
ReqID | ans..32 | O | To avoid double payments, enter an alphanumeric value which identifies your transaction and may be assigned only once. If the transaction is submitted again with the same ReqID, Paygate will not carry out the payment, but will just return the status of the original transaction. Please note that the Paygate must have a finalized transaction status for the first initial action. Submissions with identical ReqID for an open status will be processed regularly. |
Parameters for cancelling a Paysafe Pay Later payment
The following table describes the Paygate response parameters:
Parameter | Format | CND | Description |
---|---|---|---|
MID | ans..30 | M | MerchantID, assigned by Computop |
PayID | an32 | M | ID assigned by Paygate for the payment, e.g. for referencing in batch files |
XID | an32 | M | ID for all single transactions (authorisation, capture, credit note) for one payment assigned by Paygate |
TransID | ans..64 | M | TransactionID which should be unique for each payment |
RefNr | ans..30 | O | Unique reference number for your accounts |
Status | a..50 | M | OK, AUTHORIZE_REQUEST or FAILED |
Description | ans..1024 | M | Further details in the event that payment is rejected. Please do not use the Description but the Code parameter for the transaction status analysis! |
Code | n8 | M | Error code according to Paygate Response Codes (A4 Error codes) |
UserData | ans..1024 | O | If specified upon call, Paygate forwards the parameter with the payment result to the shop. |
CodeExt | ans..10 | O | Error code from Paysafe Pay Later, if agreed with Computop support |
ErrorText | ans..256 | O | Error text from Paysafe Pay Later, if agreed with Computop support |
Reference | ans..32 | M | Internal Paysafe Pay Later ID for the transaction |
Response parameters for cancelling a Paysafe Pay Later payment
Crediting Paysafe Pay Later payments
In order to credit a Paysafe Pay Later payment via a server-to-server communication, go to the following URL:
Notice: For security reasons, Paygate rejects all payment requests with formatting errors. Therefore please use the correct data type for each parameter.
The following table describes the encrypted payment request parameters:
Parameter | Format | CND | Description |
---|---|---|---|
MerchantID | ans..30 | M | MerchantID, assigned by Computop. Additionally this parameter has to be passed in plain language too. |
PayID | an32 | M | ID assigned by Paygate for the payment, e.g. for referencing in batch files |
TransID | ans..64 | M | ID assigned by Merchant for the payment process to be credited |
RefNr | ans..30 | M | Unique reference number for your accounts |
Amount | n..10 | M | Amount in the smallest currency unit (e.g. EUR Cent) Please contact the helpdesk, if you want to capture amounts < 100 (smallest currency unit). |
Currency | a3 | M | Currency, three digits DIN / ISO 4217 |
MAC | an64 | O | Hash Message Authentication Code (HMAC) with SHA-256 algorithm |
OrderDesc | ans..768 | O | Description of purchased goods, unit prices, merchant’s comment etc. |
UserData | ans..1024 | O | If specified upon call, Paygate forwards the parameter with the payment result to the shop. |
ReqID | ans..32 | O | To avoid double payments, enter an alphanumeric value which identifies your transaction and may be assigned only once. If the transaction is submitted again with the same ReqID, Paygate will not carry out the payment, but will just return the status of the original transaction. Please note that the Paygate must have a finalized transaction status for the first initial action. Submissions with identical ReqID for an open status will be processed regularly. |
TaxAmount | n..10 | O | VAT. Amount in the smallest currency unit (e.g. EUR Cent) |
Reason | a..64 | O | Legible reason for the transaction |
Parameters for crediting a Paysafe Pay Later payment
The following table describes the Paygate response parameters:
Parameter | Format | CND | Description |
---|---|---|---|
MID | ans..30 | M | MerchantID, assigned by Computop |
PayID | an32 | M | ID assigned by Paygate for the payment, e.g. for referencing in batch files |
XID | an32 | M | ID for all single transactions (authorisation, capture, credit note) for one payment assigned by Paygate |
TransID | ans..64 | M | TransactionID which should be unique for each payment |
RefNr | ans..30 | O | Unique reference number for your accounts |
Status | a..50 | M | OK, AUTHORIZE_REQUEST or FAILED |
Description | ans..1024 | M | Further details in the event that payment is rejected. Please do not use the Description but the Code parameter for the transaction status analysis! |
Code | n8 | M | Error code according to Paygate Response Codes (A4 Error codes) |
UserData | ans..1024 | O | If specified upon call, Paygate forwards the parameter with the payment result to the shop. |
CodeExt | ans..10 | O | Error code from Paysafe Pay Later, if agreed with Computop support |
ErrorText | ans..256 | O | Error text from Paysafe Pay Later, if agreed with Computop support |
Reference | ans..32 | M | Internal Paysafe Pay Later ID for the transaction |
Response parameters for crediting a Paysafe Pay Later payment
Batch processing via the interface
Basic information about using Batch files and about their structure can be found in the Batch Manager manual. Within batch processing not alle functions are available which are usually available for the online interface.
This section describes the parameters which must be transferred within the data set (Record) for executing a Paysafe Pay Later capture or credit and which information can be found within the response file about the payment status.
Following table gives an overview of all batch versions that are possible for a specific action and their specialities:
Action | Version | Description |
---|---|---|
Capture | 1.0 / 2.0 | Standard version without return of parameter Code |
| 1.x / 2.x | with RefNr (valid for all versions other than 1.0) |
Credit | 1.0 / 2.0 | Standard version without return of parameter Code |
| 1.x / 2.x | with RefNr (valid for all versions other than 1.0) |
Reverse | 1.0 / 2.0 | Standard version without return of parameter Code |
| 1.x / 2x. | with RefNr (valid for all versions other than 1.0) |
Description of the possible batch versions
The structure for a capture or credit within a Batch file to be submitted is the following:
HEAD,<MerchantID>,<Date>,<Version> Payolution,Capture,<Amount>,<Currency>,<TransID>,(<RefNr>,)<PayID> Payolution,Credit,<Amount>,<Currency>,<TransID>,(<RefNr>,)<PayID> FOOT,<CountRecords>,<SumAmount> |
Example for Master MID Funktion:
HEAD,[Master]MerchantID,Date,2.x Type,Action,[Slave]MID,Amount,Currency,TransID,Data (depends on Action) FOOT,CountRecords,SumAmount |
The following table describes the individual fields and values used within the data set (record) in the batch file:
Parameter | Format | CND | Description |
---|---|---|---|
Type | a..11 | M | HEAD for Header, FOOT for Footer, Payolution for the transactions |
Action | a..20 | M | The parameter Action defines the type of transaction: Capture Credit |
Amount | n..10 | M | Amount in the smallest currency unit (e.g. EUR Cent) Please contact the helpdesk, if you want to capture amounts < 100 (smallest currency unit). |
Currency | a3 | M | Currency code, three digits DIN / ISO 4217 |
TransID | ans..64 | M | TransactionID which should be unique for each payment |
RefNr | ans..30 | O | Unique reference number |
PayID | an32 | M | ID for this transaction given by Paygate |
Description of fields within the record for Batch files
The record area within the response file for Batch transactions looks the following way:
HEAD,<MerchantID>,<Date>,<Version> Payolution,Capture,<Amount>,<Currency>,<TransID>,(<RefNr>,)<PayID>,<Status>,<Code> Payolution,Credit,<Amount>,<Currency>,<TransID>,(<RefNr>,)<PayID>,<Status>,<Code> FOOT,<CountRecords>,<SumAmount> |
The following table describes the response parameters which the Batch Manager saves in the Record area for each transaction (standard parameters not explained here, such as <TransID> or <RefNR> and request parameters are returned unchanged and correspond to the call as specified in):
Parameter | Format | CND | Description |
---|---|---|---|
Action | a..20 | M | The parameter Action defines the type of transaction: Capture Credit |
PayID | an32 | M | ID for this transaction given by Paygate |
Status | a..50 | M | OK or FAILED |
Code | n8 | M | Error code according to Paygate Response Codes (A4 Error codes) |
Description of result parameters within the record for Batch files