Skip to main content

KYC reliance


If you have already verified the customer, we can process this KYC data via API request and make additional risk checks on our end during the transaction creation.

To use this feature, the Customer Takeover Data parameters (see above) and additional KYC reliance parameters are mandatory - please see the initiate payment API call for details. The additional parameters relevant to KYC reliance feature need to be sent in the "customer_takeover_data" -> "document" object.

The additional parameters include the document ID, document type, document date of issuance and expiry, document issuing authority and tax ID.

  • If the checks on our end fail, we will return the error code 3161 ("action_not_allowed").
  • Since the Customer Data Takeover is mandatory for this feature, we will return the error code 3150 ("missing_mandatory_parameter") in case one of the parameters is missing.
  • If the KYC data is invalid, we will return the error code 10028 ("invalid_request_parameter")
  • If the customer reached their limit, we will return the error code 33005 ("merchant_client_limit_reached")
  • If the customer is soft-declined after the risk check, we will return error code 2705 ("soft_risk_decline").
  • If the customer is hard-declined after the risk check, we will return error code 2706 ("hard_risk_decline").

Customer data takeover & KYC/KYB Reliance parameters:

ParameterRequiredData Type & LengthExample
first_nameMandatorystring - max 80 charactersMax
last_nameMandatorystring - max 80 charactersMustermann
date_of_birthMandatorystring - max 6 digits (ISO8601 -> YYYY-MM-DD)1990-12-31
address1Mandatorystring - max 105 charactersMusterstrasse 2
postcodeMandatorystring - max 10 characters1234
cityMandatorystring - max 80 charactersVienna
country_iso2Mandatorystring - max 2 characters (ISO 3166-1 alpha 2)AT
phone_numberMandatorystring - max 19 digits+43676123456789
emailMandatorystring - max 80 charactersexample@test.at
documentMandatoryArray(object)-
document: id_numberMandatorystring - max 80 digits8010369012345
document: typeMandatorystring - enum - max 15 charactersValid values: PASSPORT, ID_CARD, RESIDENCE_CARD, DRIVING_LICENSE
document: issuing_authorityMandatory if availablestring - max 80 charactersPassport Service Paris
document: date_of_issauanceMandatory if availablestring - max 6 digits (ISO8601 -> YYYY-MM-DD)2010-12-31
document: date_of_expiryMandatorystring - max 6 digits (ISO8601 -> YYYY-MM-DD)2030-12-31
tax_idMandatory only in Italystring - max 40 characters1NTEST01SGxo9HZ
place_of_birthOptionalstring - max 80 charactersVersaille
kyc_levelMandatorystring - max 3 charactersFULL
kyc_reliance_typeMandatorystring - max 21 charactersValid values: KYC_RELIANCE, OPTIONAL_KYC_RELIANCE, KYB_RELIANCE, KYB_SME_RELIANCE
ip_addressOptionalstring - max 45 characters127.0.0.1
geo_informationOptionalArray(object)-
geo_information: latOptionalstring - max 8 characters48.42111
geo_information: lngOptionalstring - max 8 characters16.21466
mccMandatory when kyc_reliance_type is set to either KYB_RELIANCE (in case of Sole Trader) or KYB_SME_RELIANCE (in case of KYB SME/Full-fledged)string - max 4 characters7995

Geofencing

As part of our KYC Reliance enhancements, we’ve added geofencing for barcode payments. You can restrict redemption to a configurable radius around the barcode’s generation geolocation and within a specified timeframe. An optional webhook can notify you whenever a payment is rejected for violating the radius or timeframe conditions.