Precheck
POST/financing/v1/precheck
Precheck application
Returns probability of application's approval and limits of particular customer, if known to Skip Pay
Financing type | Supported |
---|---|
DEFERRED_PAYMENT | YES |
PAY_IN_THREE | YES |
It has to be called with valid access token (see the Security section) from your server. If you plan to integrate it in client flow, you should implement REST endpoint bound to your shopping basket session, that will be used as a proxy to call Skip Pay API - NEVER put access token directly to client side.
Possible error codes explanation:
Status code | Code | Explanation |
---|---|---|
400 | INVALID_REQUEST | Request was not well formatted (malformed request syntax, size too large, etc.) |
422 | PERSONAL_ID_INVALID | PersonalId is not valid |
Request
- application/json
Body
Array [
]
Array [
]
- DeliveryCarrierPredefined
- DeliveryCarrierCustom
Array [
]
customer
object
Customer data
Possible values: <= 60 characters
Academical degree, in front of the name.
Possible values: <= 60 characters
Academical degree, behind name.
Possible values: <= 254 characters
E-mail address of customer
addresses
object[]
Addresses. All types are allowed.
Name on address
Country. (see ISO 3166 alpha-2)
Possible values: <= 100 characters
City
Possible values: <= 100 characters
Street/city part
Possible values: <= 50 characters
Street number
Possible values: <= 30 characters
Postal code
Possible values: [PERMANENT
, CONTACT
, DELIVERY
, BILLING
]
Type of the address. Only some of the types are allowed in each context.
Possible values: <= 20 characters
Tax identification number (ICO)
Possible values: <= 20 characters
VAT identification number
extraData
object
Historical count of customer transactions made in partner's e-shop
Historical count of customer cashless transactions made in partner's e-shop
Date of customer's latest (newest) transaction on partner e-shop.
Date of customer's earliest (oldest) transaction on partner e-shop.
Possible values: >= 1
Total time spent on partners website (in seconds)
Possible values: >= 1
Total time spent on partners website in review and comments sections (in seconds)
Possible values: >= 1
Total count of removed items form shopping basket during current shopping
Possible values: >= 1
Number of viewed pages with products
Possible values: <= 10 characters
List of custom tags (ie. information, that customer is club member, vip customer, etc.)
Possible values: <= 60 characters
Customer first (given) name. Must be paired with lastName
. Required if fullName
is empty.
Possible values: <= 60 characters
Customer last (family) name. Must be paired with firstName
. Required if fullName
is empty.
Possible values: <= 240 characters
Customer full name, including academical degrees and salutation. Required only if firstName
or lastName
are empty.
Possible values: <= 13 characters
Phone number with country code (including leading +
).
order
object
Order information for precheck validation
Possible values: <= 100 characters
Order number (internal for e-shop)
Variable symbols for pairing. First symbol in array is used for making the payment to your account (if not specified later in Mark order items as sent
or Mark order items as delivered
) or we expect you make payment on our account with this symbol (if not specified later in Mark order items as returned
operation). Strings must contain only numbers, maximum length is 10 characters (digits). Leading zeros are ignored.
Total VAT amounts split by their VAT rates
addresses
object[]
Addresses. Only BILLING
and DELIVERY
types are allowed.
Possible values: <= 100 characters
Name on address
Country. (see ISO 3166 alpha-2)
Possible values: <= 100 characters
City
Possible values: <= 100 characters
Street/city part
Possible values: <= 100 characters
Street number
Possible values: <= 30 characters
Postal code
Possible values: [PERMANENT
, CONTACT
, DELIVERY
, BILLING
]
Type of the address. Only some of the types are allowed in each context.
Possible values: [DELIVERY_CARRIER
, PERSONAL_BRANCH
, PERSONAL_PARTNER
, ONLINE
]
Delivery type, for DELIVERY_CARRIER
type can be further specified by deliveryCarrier
attribute.
deliveryCarrier
object
oneOf
Possible values: [AIRWAY
, CZ_POST_HAND
, CZ_POST_OFFICE
, CZ_POST_OTHER
, DACHSER
, DB_SCHENKER
, DEUTSCHE_POST_DHL
, DHL
, DHL_EXPRESS
, DHL_FREIGHT
, DPD
, DSV
, FEDEX
, FOFR
, GEBRUDER_WEISS
, GEIS
, GLS
, HDS_COMFORT
, HDS_STANDARD
, IN_TIME
, JAPO_TRANSPORT
, LIFTAGO
, LOCAL_COURIER
, MAGYAR_POSTA
, MALL_DELIVERY
, MALL_DEPOSIT
, MESSENGER
, POSTA_BEZ_HRANIC
, PPL
, PPL_PARCEL_CONNECT
, RABEN
, SAMEDAY
, SDS
, SLOVAK_PARCEL_SERVICE
, SLOVENSKA_POSTA
, SPRING_GDS
, TNT
, TOP_TRANS
, UPS
, WEDO
, WEDO_ULOZENKA
, ZASILKOVNA
]
Possible values: <= 250
For carriers not found in the enumeration of carrierId, specify the value as text.
Date and time until order is reserved.
Until 'reservationDate' Skip Pay will try to notify partner with Application notification about approval or rejection.
After this date and time, e-shop does not guarantee items availability (if application processing is longer, it may endanger order fullfillment).
items
object[]
Order items
Possible values: <= 200 characters
Internal code for item (internal to e-shop). Used to better identify the item for future changes
Possible values: <= 64 characters
EAN code
Possible values: <= 255 characters
Item name
Possible values: [PHYSICAL
, DISCOUNT
, SHIPPING_FEE
, SALES_TAX
, DIGITAL
, GIFT_CARD
, STORE_CREDIT
, FEE
, INSURANCE
]
Item type
Possible values: <= 250 characters
Item variant
Possible values: <= 250 characters
Producer name
List of item categories
Possible values: <= 200 characters
URL of the item in e-shop
(positive float/decimal up to 3 decimal places) Item quantity. If empty, considered as 1.
Merchant identification (ie. in case of multiple e-shops managed by one credentials)
Possible values: [DEFERRED_PAYMENT
, PAY_IN_THREE
]
Financing type, if type is not sent DEFERRED_PAYMENT
is selected.
Responses
- 200
- 400
- 422
Probability of approval
- application/json
- Schema
- Example (from schema)
Schema
Array [
]
Unique identificator of precheck. Send this identificator in ApplicationRequest for better approval rate.
results
object[]
required
Precheck results for each type of product.
Possible values: [DEFERRED_PAYMENT
, PAY_IN_THREE
]
Precheck result type for Funding type.
A recommendation of whether the order should be passed to the Skip Pay.
true = Application is going to be likely approved. false = Application is going to be likely rejected.
Probability of approval.
0 = 0% to be approved 1 = 100% to be approved
Partner can create custom logic not to follow the recommendation (be more strict or benevolent).
Completness of the result. <0, 1> The lower is the value, the lower accuracy of the result.
Possible values: [OK
, UNKNOWN
, NOT_AVAILABLE
, ADDITIONAL_DATA_SECURITY
, ADDITIONAL_DATA_LIMIT
, INSUFFICIENT_LIMIT
, INSUFFICIENT_LIMIT_OPPORTUNITY
, DETAILS_NOT_MATCHING
, MANUAL_VERIFICATION
]
Result code.
Possible values: [UNKNOWN
, FIRST_ORDER
, FULL
, BLOCKED
]
Customer type.
Custom message for customer.
Examples: “V Skip Pay peněžence nemáte dostatečný limit.” “Uveďte do objednávky jméno a příjmení, které používáte ve službě Skip Pay.” etc.
List of additional data that customer has to send.
Possible values in array: PERSONAL_ID
, ID_CARD_NO
, ID_CARD_EXPIRY_DATE
, ID_CARD_SCAN
, THIRD_PARTY_TELCO_CONSENT
.
limits
object
Customer's limits
{
"id": "string",
"results": [
{
"type": "PAY_IN_THREE",
"recommendation": true,
"probabilityOfApproval": 0,
"completeness": 0,
"code": "OK",
"PrecheckResultResponseSerializer": "UNKNOWN",
"message": "string",
"additionalData": [
"string"
]
}
],
"limits": {
"availableLimit": {
"amount": 12590,
"currency": "CZK"
},
"totalLimit": {
"amount": 12590,
"currency": "CZK"
}
}
}
Error in processing request
- application/json
- Schema
- Example (from schema)
Schema
Array [
]
errors
object[]
required
Array with errors
Unique internal error code
Human readable error description (non-localized)
Possible values: [ERROR
, WARN
, INFO
]
JSON path of request attribute that caused the error (if applicable)
Internal ticket ID, used for error backtracking
{
"errors": [
{
"code": "ERR_1000_SOME_ERROR_CODE",
"message": "Some error/validation message description",
"severity": "ERROR",
"attribute": "personalBirthNumber",
"ticketId": "UAT1:AMS:20160516-091658.450:45e4"
}
]
}
Error in processing request
- application/json
- Schema
- Example (from schema)
Schema
Array [
]
errors
object[]
required
Array with errors
Unique internal error code
Human readable error description (non-localized)
Possible values: [ERROR
, WARN
, INFO
]
JSON path of request attribute that caused the error (if applicable)
Internal ticket ID, used for error backtracking
{
"errors": [
{
"code": "ERR_1000_SOME_ERROR_CODE",
"message": "Some error/validation message description",
"severity": "ERROR",
"attribute": "personalBirthNumber",
"ticketId": "UAT1:AMS:20160516-091658.450:45e4"
}
]
}