Skip to content

[beta version] Personal data verification of cardholders

The system lets you send personal data parameters in the transaction requests if it is required to verify the customer's personal data in the system of the issuing bank with the customer's personal data in the merchant's system.

Widget integration

In the case of the integration with the payment widget or the payment page, initiate the widget or create a payment token with the additional parameters specified in the table:

object
object
A section of the customer details.
external_id
string (255)
The unique customer's identifier in the merchant's system.
birth_date
conditionally required
string
The customer's date of birth in the ISO 8601 YYYY-MM-DD format. Required only for residents of Belarus.
object
Section of additional information about the payment.
object
Information about the customer's personal identity document.
document_type
conditionally required
string (50)
Type of the ID document. Required only for non-residents of Belarus.
document_series
string (20)
Series of the ID document.
document_number
conditionally required
string (50)
Number of the ID document. Required only for non-residents of Belarus.
document_country
conditionally required
string (2)
Country that issued the ID document in ISO 3166-1 alpha-2 format. Required only for non-residents of Belarus.
personal_number
conditionally required
string (50)
Personal number specified in the ID document. Required only for residents of Belarus.
object
Section of the customer's KYC (Know Your Customer) data.
object
A section of the KYC data.
phone
string (30)
The customer's phone number.
first_name
conditionally required
string (100)
The customer's first name in latin letters. The parameter is required for non-residents of Belarus.
last_name
conditionally required
string (100)
The customer's last name in latin letters. The parameter is required for non-residents of Belarus.
middle_name
string (100)
The customer's middle name in latin letters.
first_name_ru
conditionally required
string (100)
The customer's first name in Cyrillic. The parameter is required for non-residents of Belarus if additional_data.kyc_answers.answers.first_name is not sent in the request.
last_name_ru
conditionally required
string (100)
The customer's last name in Cyrillic. The parameter is required for non-residents of Belarus if additional_data.kyc_answers.answers.last_name is not sent in the request.
last_name_ru
string (100)
The customer's last name in Cyrillic.

Example

Payment token request example
{
  "checkout": {
    "test": true,
    "transaction_type": "payment",
    "settings": {
      "return_url": "http://127.0.0.1:4567/return",
      "success_url": "http://127.0.0.1:4567/success",
      "notification_url": "http://your_shop.com/notification"
    },
    "order": {
      "tracking_id": "your_uniq_number",
      "currency": "BYN",
      "amount": 10000,
      "expired_at": "2025-11-29T05:33:38Z",
      "description": "description"
    },
    "customer": {
      "external_id": "user-12345",
      "birth_date": "1990-01-01"
    },
    "additional_data": {
      "customer_id_data": {            
        "personal_number": "30101990AB123CD4"
      }         
    }
  }
}
Payment token request example
{
  "checkout": {
    "test": true,
    "transaction_type": "payment",
    "settings": {
      "return_url": "http://127.0.0.1:4567/return",
      "success_url": "http://127.0.0.1:4567/success",
      "notification_url": "http://your_shop.com/notification"
    },
    "order": {
      "tracking_id": "your_uniq_number",
      "currency": "BYN",
      "amount": 10000,
      "expired_at": "2025-11-29T05:33:38Z",
      "description": "description"
    },
    "customer": {
      "external_id": "user-12345"
    },
    "additional_data": {
      "customer_id_data": {
        "document_type": "passport",            
        "document_number": "12345678",
        "document_country": "GB"            
      },
      "kyc_answers": {
        "answers": {
          "first_name": "Ivan",
          "last_name": "Ivanov"             
        }
      }
    }
  }
}

Authorization / Payment

Request

Send an authorization request or a payment request with the following additional parameters:

object
object
A section of the customer details.
external_id
string (255)
The unique customer's identifier in the merchant's system.
birth_date
conditionally required
string
The customer's date of birth in the ISO 8601 YYYY-MM-DD format. Required only for residents of Belarus.
object
Section of additional information about the payment.
object
Information about the customer's personal identity document.
document_type
conditionally required
string (50)
Type of the ID document. Required only for non-residents of Belarus.
document_series
string (20)
Series of the ID document.
document_number
conditionally required
string (50)
Number of the ID document. Required only for non-residents of Belarus.
document_country
conditionally required
string (2)
Country that issued the ID document in ISO 3166-1 alpha-2 format. Required only for non-residents of Belarus.
personal_number
conditionally required
string (50)
Personal number specified in the ID document. Required only for residents of Belarus.
object
Section of the customer's KYC (Know Your Customer) data.
object
A section of the KYC data.
phone
string (30)
The customer's phone number.
first_name
conditionally required
string (100)
The customer's first name in latin letters. The parameter is required for non-residents of Belarus.
last_name
conditionally required
string (100)
The customer's last name in latin letters. The parameter is required for non-residents of Belarus.
middle_name
string (100)
The customer's middle name in latin letters.
first_name_ru
conditionally required
string (100)
The customer's first name in Cyrillic. The parameter is required for non-residents of Belarus if additional_data.kyc_answers.answers.first_name is not sent in the request.
last_name_ru
conditionally required
string (100)
The customer's last name in Cyrillic. The parameter is required for non-residents of Belarus if additional_data.kyc_answers.answers.last_name is not sent in the request.
last_name_ru
string (100)
The customer's last name in Cyrillic.

Request examples for authorization/payment

Info

Example for residents of Belarus
{
    "request": {
        "amount": 100,
        "currency": "BYN",
        "description": "Test transaction",
        "tracking_id": "your_uniq_number",
        "language": "ru",
        "test": true,
        "credit_card": {
            "number": "4200000000000000",
            "verification_value": "123",
            "holder": "John Doe",
            "exp_month": "05",
            "exp_year": "2027"
        },
        "customer": {
            "external_id": "user-12345",
            "birth_date": "1990-01-01"
        },
        "additional_data": {
            "customer_id_data": {                           
                "personal_number": "30101990AB123CD4"
            }
        }
    }
}
Example for non-residents of Belarus
{
    "request": {
        "amount": 100,
        "currency": "BYN",
        "description": "Test transaction",
        "tracking_id": "your_uniq_number",
        "language": "ru",
        "test": true,
        "credit_card": {
            "number": "4200000000000000",
            "verification_value": "123",
            "holder": "John Doe",
            "exp_month": "05",
            "exp_year": "2027"
        },
        "customer": {
            "external_id": "user-12345"
        },
        "additional_data": {
            "customer_id_data": {
                "document_type": "{Document type, passport}",
                "document_number": "{Document number, 1234567}",
                "document_country": "{Country that issued the document, GB}"
            },
            "kyc_answers": {
                "answers": {
                    "phone": "1234567",
                    "first_name": "Ivan",
                    "last_name": "Petrov"                                
                }
            }
        }
    }
}

Response

The response will include vpd_verification object with the personal data verification results.

object
status
string
A transaction status.
code
string (6)
Transaction processing code.
message
string (255)
code description.
friendly_message
string
code description for the customer.
object
Parameters of the personal data verification service.
status
string
The status of the personal data verification.
Possible values: pending, verified, rejected.
code
string (6)
Error code of the personal data verification service.
message
string (255)
The error description corresponding to the vpd_verification.code.
friendly_message
string (255)
vpd_verification.code description for the customer.
provider_response
object
Additional information received by the personal data verification service from the card issuer.

Authorization

Successful verification
{
    "transaction": {
        "uid": "26d6f343-b36e-4306-b6a3-013e2b969ec2",
        "status": "successful",
        "amount": 100,
        "currency": "BYN",
        "description": "Test transaction",
        "type": "authorization",
        "payment_method_type": "credit_card",
        "tracking_id": "your_uniq_number",
        "message": "Transaction is successful.",
        "test": true,
        "created_at": "2025-09-10T13:52:04.428Z",
        "updated_at": "2025-09-10T13:52:07.029Z",
        "paid_at": "2025-09-10T13:52:06.945Z",
        "expired_at": null,
        "recurring_type": null,
        "closed_at": null,
        "settled_at": null,
        "manually_corrected_at": null,
        "language": "en",
        "credit_card": {
            "holder": "John Doe",
            "stamp": "d1c853d9d6623ad497d6df0f90b92d19ae8393913b17198ac6006bdc2700485a",
            "brand": "visa",
            "last_4": "0000",
            "first_1": "4",
            "bin": "420000",
            "bin_8": "42000000",
            "issuer_country": "US",
            "issuer_name": "VISA Demo Bank",
            "product": "F",
            "exp_month": 5,
            "exp_year": 2027,
            "token_provider": null,
            "token": null
        },
        "receipt_url": "https://merchant.bepaid.by/customer/transactions/26d6f343-b36e-4306-b6a3-013e2b969ec2/065724d397951ad8fcd066cdb7edd678b78f50fc8866c64cdb198993eb554dcb?language=en",
        "status_code": null,
        "gateway": {
            "iframe": true
        },
        "mute_notifications": null,
        "version": 4,
        "psp_settled_at": null,
        "registry_id": null,
        "three_ds_expired_at": null,
        "id": "26d6f343-b36e-4306-b6a3-013e2b969ec2",
        "additional_data": {
            "customer_id_data": {
                "document_type": "passport",                              
                "document_number": "1234567",
                "document_country": "GB"                              
            },
            "kyc_answers": {                             
                "answers": {                                  
                    "phone": "1234567890",
                    "first_name": "Ivan",
                    "last_name": "Petrov",
                    "middle_name": "Sergeevich",
                    "first_name_ru": "Иван",
                    "last_name_ru": "Петров",
                    "middle_name_ru": "Сергеевич"
                }
            }
        },
        "redirect_url": "https://gateway.bepaid.by/process/26d6f343-b36e-4306-b6a3-013e2b969ec2",
        "code": "S.0000",
        "friendly_message": "The transaction is successfully processed.",
        "vpd_verification": {
            "status": "verified"
        },        
        "smart_routing_verification": {
            "status": "successful"
        },
        "payment": {
            "auth_code": "654321",
            "bank_code": "05",
            "rrn": "999",
            "ref_id": "777888",
            "message": "Payment was approved",
            "amount": 100,
            "currency": "BYN",
            "billing_descriptor": "test descriptor",
            "gateway_id": 2505,
            "status": "successful"
        },
        "avs_cvc_verification": {
            "avs_verification": {
                "result_code": "1"
            },
            "cvc_verification": {
                "result_code": "1"
            }
        },
        "customer": {
            "ip": null,
            "email": "ivan.petrov@example.com",
            "device_id": null,
            "birth_date": "1990-01-01",
            "external_id": "user-12345"
        },
        "billing_address": {
            "first_name": null,
            "last_name": null,
            "address": "1st Street",
            "country": "US",
            "city": "Denver",
            "zip": "96002",
            "state": "CO",
            "phone": null
        }
    }
}
Failed verification
{
    "uid": "ab8dd5da-3e28-4f28-8cf7-ac714f8fd2cb",
    "code": "F.0996",
    "friendly_message": "Транзакция не была подтверждена.",
    "message": "Транзакция не была подтверждена в VPD.",
    "status": "failed",
    "amount": 100,
    "currency": "USD",
    "description": "Test transaction",
    "type": "authorization",
    "payment_method": {
        "payment_method_type": "credit_card",
        "holder": "John Doe",
        "stamp": "d1c853d9d6623ad497d6df0f90b92d19ae8393913b17198ac6006bdc2700485a",
        "brand": "visa",
        "last_4": "0000",
        "first_1": "4",
        "bin": "420000",
        "bin_8": "42000000",
        "issuer_country": "US",
        "issuer_name": "VISA Demo Bank",
        "product": "F",
        "exp_month": 5,
        "exp_year": 2028,
        "token_provider": null,
        "token": null
    },
    "tracking_id": "your_uniq_number",
    "test": true,
    "created_at": "2025-09-10T14:06:18.885Z",
    "updated_at": "2025-09-10T14:06:19.267Z",
    "paid_at": null,
    "expired_at": null,
    "recurring_type": null,
    "closed_at": null,
    "settled_at": null,
    "manually_corrected_at": null,
    "language": "en",
    "redirect_url": "https://gateway.bepaid.by/process/ab8dd5da-3e28-4f28-8cf7-ac714f8fd2cb",
    "status_code": null,
    "links": {
        "receipt_url": "https://merchant.bepaid.by/customer/transactions/ab8dd5da-3e28-4f28-8cf7-ac714f8fd2cb/2b144de0d9ab776b9788b19192ead0548452ebdeb071a139a4532450fc637a0a?language=en"
    },
    "gateway": {
        "iframe": true
    },
    "mute_notifications": null,
    "version": 2,
    "psp_settled_at": null,
    "registry_id": null,
    "three_ds_expired_at": null,
    "customer": {
        "ip": "127.0.0.1",
        "email": "john@example.com",
        "device_id": null,
        "birth_date": null,
        "external_id": null,
        "first_name": "John",
        "last_name": "Doe",
        "address": "1st Street",
        "country": "US",
        "city": "Denver",
        "zip": "96002",
        "state": "CO",
        "phone": null
    },
        "vpd_verification": {
            "status": "rejected",
            "code": "F.0100",
            "message": "Customer verification failed.",
            "friendly_message": "Customer verification failed.",
            "provider_response": {
                "is_clientcard": 1,
                "is_bdcorrect": 0
        }
        },
        "smart_routing_verification": {
            "status": "successful"
        },
    "transaction": {
        "auth_code": null,
        "bank_code": null,
        "rrn": null,
        "ref_id": null,
        "message": null,
        "amount": 100,
        "currency": "USD",
        "billing_descriptor": null,
        "gateway_id": 2483,
        "status": "incomplete"
    }
}   

Payout

Request

Send a payout request with the following additional data:

object
conditionally required
object
A section of the customer details.
birth_date
conditionally required
string
The date of birth of the payout recipient in the ISO 8601 YYYY-MM-DD format. Required only for residents of Belarus.
object
Section of additional information about the payment.
object
Information about the customer's personal identity document.
document_type
conditionally required
string (50)
Type of the ID document. Required only for non-residents of Belarus.
document_series
string (20)
Series of the ID document.
document_number
conditionally required
string (50)
Number of the ID document. Required only for non-residents of Belarus.
document_country
conditionally required
string (2)
Country that issued the ID document in ISO 3166-1 alpha-2 format. Required only for non-residents of Belarus.
personal_number
conditionally required
string (50)
Personal number specified in the ID document. Required only for residents of Belarus.
object
Section of the customer's KYC (Know Your Customer) data.
object
A section of the KYC data.
phone
string (30)
The customer's phone number.
first_name
conditionally required
string (100)
The customer's first name in latin letters. The parameter is required only for non-residents of Belarus.
last_name
conditionally required
string (100)
The customer's last name in latin letters. The parameter is required only for non-residents of Belarus.
middle_name
string (100)
The customer's middle name in latin letters.
first_name_ru
conditionally required
string (100)
The customer's first name in Cyrillic. The parameter is required for non-residents of Belarus if additional_data.kyc_answers.answers.first_name is not sent in the request.
last_name_ru
conditionally required
string (100)
The customer's last name in Cyrillic. The parameter is required for non-residents of Belarus if additional_data.kyc_answers.answers.last_name is not sent in the request.
middle_name_ru
string (100)
The customer's middle name in Cyrillic.

Example

Payout request example
{
    "request": {
        "amount": 100,
        "currency": "BYN",
        "description": "Test transaction",
        "tracking_id": "tracking_id_000",
        "recipient": {
            "birth_date": "1990-01-01",
            "phone": "+375291234567",
            "email": "ivan.petrov@example.com"
        },                    
        "recipient_billing_address": {
            "first_name": "John",
            "last_name": "Doe",
            "country": "US",
            "city": "Denver",
            "state": "CO",
            "zip": "96002",
            "address": "1st Street",
            "phone": "375444444444"
        },
        "recipient_credit_card": {
            "number": "5555555555554444",
            "holder": "John Doe",
            "exp_month": "12",
            "exp_year": "2027"
        },
        "additional_data": {
            "customer_id_data": {
                "personal_number": "30101990AB123CD4"
            }
        }
    }
}
Payout request example
{
    "request": {
        "amount": 100,
        "currency": "BYN",
        "description": "Test transaction",
        "tracking_id": "tracking_id_000",
        "recipient": {                        
            "phone": "+375291234567",
            "email": "ivan.petrov@example.com"
        },                   
        "recipient_billing_address": {
            "first_name": "John",
            "last_name": "Doe",
            "country": "US",
            "city": "Denver",
            "state": "CO",
            "zip": "96002",
            "address": "1st Street",
            "phone": "375444444444"
        },
        "recipient_credit_card": {
            "number": "5555555555554444",
            "holder": "John Doe",
            "exp_month": "12",
            "exp_year": "2027"
        },
        "additional_data": {
            "customer_id_data": {
                "document_type": "{Document type, passport}",
                "document_number": "{Document number, 1234567}",
                "document_country": "{Country that issued the document, GB}"
            },
            "kyc_answers": {
                "answers": {
                    "phone": "1234567890",
                    "first_name": "Ivan",
                    "last_name": "Petrov"                        
                }
            }
        }
    }
}

Response

The response will include an additional object vpd_verification with the personal data verification results.

Successful verification
{
    "transaction": {
        "uid": "26d6f343-b36e-4306-b6a3-013e2b969ec2",
        "status": "successful",
        "amount": 100,
        "currency": "BYN",
        "description": "Test transaction",
        "type": "payout",
        "payment_method_type": "credit_card",
        "tracking_id": "your_uniq_number",
        "message": "Transaction is successful.",
        "test": true,
        "created_at": "2025-09-10T13:52:04.428Z",
        "updated_at": "2025-09-10T13:52:07.029Z",
        "paid_at": "2025-09-10T13:52:06.945Z",
        "expired_at": null,
        "recurring_type": null,
        "closed_at": null,
        "settled_at": null,
        "manually_corrected_at": null,
        "language": "en",
        "credit_card": {
            "holder": "John Doe",
            "stamp": "d1c853d9d6623ad497d6df0f90b92d19ae8393913b17198ac6006bdc2700485a",
            "brand": "visa",
            "last_4": "0000",
            "first_1": "4",
            "bin": "420000",
            "bin_8": "42000000",
            "issuer_country": "US",
            "issuer_name": "VISA Demo Bank",
            "product": "F",
            "exp_month": 5,
            "exp_year": 2027,
            "token_provider": null,
            "token": null
        },
        "receipt_url": "https://merchant.bepaid.by/customer/transactions/26d6f343-b36e-4306-b6a3-013e2b969ec2/065724d397951ad8fcd066cdb7edd678b78f50fc8866c64cdb198993eb554dcb?language=en",
        "status_code": null,
        "gateway": {
            "iframe": true
        },
        "mute_notifications": null,
        "version": 4,
        "psp_settled_at": null,
        "registry_id": null,
        "three_ds_expired_at": null,
        "id": "26d6f343-b36e-4306-b6a3-013e2b969ec2",
        "additional_data": {
            "customer_id_data": {
                "document_type": "passport",                              
                "document_number": "1234567",
                "document_country": "GB"                              
            },
            "kyc_answers": {                              
                "answers": {                                 
                    "phone": "1234567890",
                    "first_name": "Ivan",
                    "last_name": "Petrov",
                    "middle_name": "Sergeevich",
                    "first_name_ru": "Иван",
                    "last_name_ru": "Петров",
                    "middle_name_ru": "Сергеевич"                                  
                }
            }
        },
        "redirect_url": "https://gateway.bepaid.by/process/26d6f343-b36e-4306-b6a3-013e2b969ec2",
        "code": "S.0000",
        "friendly_message": "The transaction is successfully processed.",
        "vpd_verification": {
            "status": "verified"
        },        
        "smart_routing_verification": {
            "status": "successful"
        },
        "payment": {
            "auth_code": "654321",
            "bank_code": "05",
            "rrn": "999",
            "ref_id": "777888",
            "message": "Payment was approved",
            "amount": 100,
            "currency": "BYN",
            "billing_descriptor": "test descriptor",
            "gateway_id": 2505,
            "status": "successful"
        },
        "avs_cvc_verification": {
            "avs_verification": {
                "result_code": "1"
            },
            "cvc_verification": {
                "result_code": "1"
            }
        },
        "customer": {
            "ip": null,
            "email": "ivan.petrov@example.com",
            "device_id": null,
            "birth_date": "1990-01-01",
            "external_id": "user-12345"
        },
        "billing_address": {
            "first_name": null,
            "last_name": null,
            "address": "1st Street",
            "country": "US",
            "city": "Denver",
            "zip": "96002",
            "state": "CO",
            "phone": null
        }
    }
}

Possible values for the document_type parameter

document_type parameter value Description of the document_type parameter value
passport Passport
international_passport International passport
foreign_passport Foreign citizen’s passport
id_card Identity card (ID card)
driver_license Driver's license
residence_permit Residence permist for a foreign citizen (regular)
residence_permit_refugee Refugee residence permit. (regular)
residence_permit_bio_refugee Refugee residence permit (biometric).
residence_permit_bio_stateless Stateless person’s residence permit (biometric)
temporary_residence_permit Temporary residence permit
temporary_identity_card Temporary identity card
military_identity_card Military service ID card
military_id Military ID
refugee_certificate Refugee certificate
temporary_asylum_certificate Temporary asylum certificate
resettler_certificate Resettler certificate or applicant for status
travel_document_foreign Travel document of a foreign citizen
migration_card Migration card
seafarer_passport Seafarer’s passport / seafarer’s identity card
diplomatic_certificate Diplomatic identity card
return_certificate Return certificate
other Other identity document

Testing

To test the verification, send one of the requests on this page and add parameter request.test set to true. For successful verification, use the parameter values from the table below:

Parameter (in brackets – for payouts) Residents of Belarus Non-residents of Belarus
credit_card.number (recipient_credit_card.number) 9112395040140378 9112395040140378
credit_card.exp_month (recipient_credit_card.exp_month) any any
credit_card.exp_year (recipient_credit_card.exp_year) later than 2025 later than 2025
additional_data.customer_id_data.personal_number 30101990AB123CD4 -
customer.birth_date (recipient.birth_date) 1990-01-01 -
additional_data.customer_id_data.document_number - AA1234567
additional_data.customer_id_data.document_type - passport
additional_data.customer_id_data.document_country - PL
additional_data.kyc_answers.answers.first_name - Ivan
additional_data.kyc_answers.answers.last_name - Ivanov

Request

Example

Payment request example
{
    "request": {
        "amount": "100",
        "currency": "BYN",
        "test": true,
        "description": "Test transaction",
        "language": "ru",
        "notification_url": "https://notification-url",
        "credit_card": {
            "number": "9112395040140378",
            "verification_value": "123",
            "holder": "John Doe",
            "exp_month": "05",
            "exp_year": "2026"
        },
        "customer": {
            "external_id": "user-12345",
            "birth_date": "1990-01-01"
        },
        "additional_data": {
            "customer_id_data": {
                "personal_number": "30101990AB123CD4"
            }
        }
    }
}
Payment request example
{
    "request": {
        "amount": "100",
        "currency": "BYN",
        "test": true,
        "description": "Test transaction",
        "language": "ru",
        "notification_url": "https://notification-url",
        "credit_card": {
            "number": "9112395040140378",
            "verification_value": "123",
            "holder": "John Doe",
            "exp_month": "05",
            "exp_year": "2026"
        },
        "customer": {
            "external_id": "user-12345"
        },
        "additional_data": {
            "customer_id_data": {
                "document_number": "AA1234567",
                "document_type": "passport",
                "document_country": "PL"
            },
            "kyc_answers": {
                "answers": {
                    "first_name": "Ivan",
                    "last_name": "Ivanov"
                }
            }
        }
    }
}

Response

If verification results in an error, processing code F.0996 will be sent in the transaction.code parameter and the parameter vpd_verification.code will include one of the validation errors by the personal data verification service.

1. Successful verification

Use the parameters from the table for the request.

Response fragment: successful verification
{
    "transaction": {
        "uid": "26d6f343-b36e-4306-b6a3-013e2b969ec2",
        "status": "successful",
        ...
        "message": "Transaction is successful.",
        "test": true,
        "code": "S.0000",
        "friendly_message": "The transaction is successfully processed.",
        "vpd_verification": {
            "status": "verified"
        },
        "smart_routing_verification": {
            "status": "successful"
        }
    }
}

2. Verification status rejected: the submitted customer data does not match the data in the issuer's system

To get this result:

  • for residents of Belarus, send the birth_date value different from the one provided in the table;
  • for non-residents of Belarus, send the document_number value different from the one provided in the table.
Request fragment: wrong value of the birth_date parameter
{
  "request": {
    "credit_card": {
            "number": "9112395040140378"
            },
    "customer": {
      "birth_date": "1991-02-02"
    },
    "additional_data": {
      "customer_id_data": {
        "personal_number": "30101990AB123CD4"
      }
    }
  }
}
Response fragment: verification status is rejected, the submitted customer data does not match the data in the issuer's system
{
    "transaction": {
        "uid": "ab8dd5da-3e28-4f28-8cf7-ac714f8fd2cb",
        "code": "F.0996",
        "friendly_message": "The transaction was not verified.",
        "message": "The transaction was not verified by the verification service VPD.",
        "status": "failed",
        "vpd_verification": {
            "status": "rejected",
            "code": "F.0100",
            "message": "Customer verification failed.",
            "friendly_message": "Customer verification failed.",
            "provider_response": {
                "is_clientcard": 1,
                "is_bdcorrect": 0
            }
        }
    }
}

3. Parameters validation error

To get the validation error:

  • for residents of Belarus, send the request without the required parameter personal_number;
  • for non-residents of Belarus, send the request without the required parameter document_country.
Request fragment: the required parameter personal_number is not specified
{
  "request": {
    "credit_card": {
            "number": "9112380131987184"
            },
    "customer": {
      "birth_date": "1991-01-01"
    },
    "additional_data": {
      "customer_id_data": {
        "personal_number": ""
      }
    }
  }
}
Response fragment: verification status is rejected, one of the required parameters is missing
{
    "uid": "b3c81448-91ef-4d72-af47-c923f796a2fb",
    "code": "F.0996",
    "friendly_message": "Транзакция не была подтверждена сервисом верификации VPD.",
    "status": "failed",
    ...
    "message": "Транзакция не была подтверждена.",
    ...
    "vpd_verification": {
        "status": "rejected",
        "code": "F.0102",
        "message": "Invalid request parameters. Check the transaction parameters or contact the payment service provider for details.",
        "friendly_message": "Invalid request parameters. Contact the merchant for details.",
        "provider_response": {
            "is_clientcard": 1,
            "is_bdcorrect": 0
        },
        "service_code": "vpd_rejected"
    },
    ...
}

4. rejected verification status: the personal data verification service (VPD) was not defined for the submitted card bin

To reproduce this error, use the number of any card issued in Belarus, except for 9112395040140378. For example, 9112380131987184.

Request fragment: wrong card number
{
    "request": {
        "amount": "100",
        "currency": "BYN",
        "test": true,
        "description": "Test transaction",
        "language": "ru",
        "notification_url": "https://notification-url",
        "credit_card": {
            "number": "9112380131987184",
            "verification_value": "123",
            "holder": "John Doe",
            "exp_month": "05",
            "exp_year": "2026"
        },
        "customer": {
            "external_id": "user-12345",
            "birth_date": "1990-01-01"
        },
        "additional_data": {
            "customer_id_data": {
                "personal_number": "30101990AB123CD4"
            }
        }
    }
}
Response fragment: verification status is rejected, the personal data verification service (VPD) was not defined for the submitted card bin
{
    "transaction": {
        "uid": "ab8dd5da-3e28-4f28-8cf7-ac714f8fd2cb",
        "code": "F.0996",
        "friendly_message": "The transaction was not verified.",
        "message": "The transaction was not verified by the verification service VPD.",
        "status": "failed",
        "vpd_verification": {
            "status": "rejected",
            "code": "F.0101",
            "message": "Customer verification failed. The verification service VPD for transmitted data is not defined.",
            "friendly_message": "Customer verification failed."
        }
    }
}