Skip to content

Alfa-Bank card verification

Methods for verifying that a card matches an individual's full name via the Alfa-Bank service.

Pass these headers in every request:

Name Type Required Description
X-Api-Key string Yes Unique shop identifier
X-Signature string Yes Request signature

The signature is generated using secret_key — the secret key found in the merchant's shop settings.

Identification by transaction

Method: POST

  • Production: https://api.pay.kvell.group/v1/person/scoring/alfabank/transaction
  • Stage: https://api.pay.stage.kvell.group/v1/person/scoring/alfabank/transaction

Request body

Name Type Required Description
first_name string Yes Individual's first name. Allowed characters: Russian letters, hyphen, space
last_name string Yes Individual's last name. Allowed characters: Russian letters, hyphen, space
middle_name string Yes Individual's patronymic. Allowed characters: Russian letters, hyphen, space
verification_type string Yes Verification type (CARDHOLDER/ACCOUNT_OWNER/ANY).
transaction string Yes Number of a successful transaction on the merchant's side.
  • CARDHOLDER — verify the full name against the cardholder's full name
  • ACCOUNT_OWNER — verify the full name against the account owner's full name
  • ANY — verify the full name against both, matching at least one

Request example

{
  "first_name": "АРТЁМ",
  "last_name": "АРТЁМОВ",
  "middle_name": "АРТЁМОВИЧ",
  "verification_type": "CARDHOLDER",
  "transaction": "99ad8b11-48b8-41ea-85b7-29136d714fb1"
}

Building the signature

sha256({x-api-key}{json <request body>}{secret_key})

Response

{
  "result": "FULL_MATCH"
}
Name
Type Description
result string Verification result. Enum: FULL_MATCH, PARTIAL_MATCH, MISMATCH

or

Name
Type Description
error json Parameter explicitly marking an error response
code string Error code
message string Error description

Identification by card number

Method: POST

  • Production: https://api.pay.kvell.group/v1/person/scoring/alfabank/card
  • Stage: https://api.pay.stage.kvell.group/v1/person/scoring/alfabank/card

Request body

Name Type Required Description
first_name string Yes Individual's first name. Allowed characters: Russian letters, hyphen, space
last_name string Yes Individual's last name. Allowed characters: Russian letters, hyphen, space
middle_name string Yes Individual's patronymic. Allowed characters: Russian letters, hyphen, space
verification_type string Yes Verification type (CARDHOLDER/ACCOUNT_OWNER/ANY).
pan string Yes Card number.
  • CARDHOLDER — verify the full name against the cardholder's full name
  • ACCOUNT_OWNER — verify the full name against the account owner's full name
  • ANY — verify the full name against both, matching at least one

Request example

{
  "first_name": "АРТЁМ",
  "last_name": "АРТЁМОВ",
  "middle_name": "АРТЁМОВИЧ",
  "verification_type": "CARDHOLDER",
  "pan": "4111111111111111"
}

Building the signature

The X-Signature signature is generated by concatenating X-Api-Key, json <request body>, and secret_key. sha256 is computed from the resulting string:

sha256({x-api-key}{json <request body>}{secret_key})

Response

{
  "result": "FULL_MATCH"
}
Name
Type Description
result string Verification result. Enum: FULL_MATCH, PARTIAL_MATCH, MISMATCH

or

Name
Type Description
error json Parameter explicitly marking an error response
code string Error code
message string Error description