Check verification

Introduction

Check verification is initiated through HTTPS POST request by using URLs and the parameters.

Check verification is used for security purposes and allows Billblend to compare the data sent by Connecting Party’s app with the data stored on Connecting Party’s server.

It is highly recommended to respond with the actual information stored on Connecting Party’s server.

API URLs

Connecting Party Server
https://proxy.connectingpartyserver.com/verification/{invoiceId}/check

Request Parameters

Parameter Name Description Value
consumer   TypeObject
consumer.device   TypeObject
consumer.device.serialNumber Consumer’s device serial number. Type: StringLength: 1-50
session   TypeObject
session.accessToken Consumer’s access token key sent by Connecting Party’s app. Type: StringLength: 32-128
session.nonce Value sent by Connecting Party’s app. Type: StringLength: 32-128
session.signature Value sent by Connecting Party’s app. Type: StringLength: 32-128
session.token The session token of verification transaction. Type: StringLength: 16-36

Success Response Parameters

Parameter Name Description Value
invoiceId Verification transaction identifier. Necessity: RequiredType: String
session   Necessity: RequiredTypeObject
session.checkSignature Checksum generated by hmac-sha1 (see Signature computation) from the concatenation of consumer.device.serialNumber, session.nonce, endpointId and invoiceId. Necessity: RequiredType: String
session.nonce Unique random string generated by Connecting Party’s server in Initiate verification response. Necessity: RequiredType: String
session.token The session token of verification transaction. Necessity: RequiredType: String
billing   Necessity: OptionalTypeObject
billing.address   Necessity: OptionalTypeObject
billing.address.city City name. Necessity: OptionalType: String
billing.address.country ISO alpha3 country code. Necessity: OptionalType: String
billing.address.postcodeZip ZIP post code. Necessity: OptionalType: String
billing.address.state State is used if present. For example, Los Angeles is in CA state. Necessity: OptionalType: String
billing.address.street Street is used for district names and street names. Necessity: OptionalType: String
billing.address.street2 Street 2 is used for long addresses. Usually it contains apartment and building №. Necessity: OptionalType: String
billing.phone Customer’s contact phone number. Necessity: OptionalType: String
consumer.birthDay Consumer’s birth day in “ddMMyyyy” format. Necessity: OptionalType: String
consumer.email Consumer’s email address. Necessity: OptionalType: String
consumer.ipAddresses Consumer’s IP addresses. Necessity: OptionalType: List
consumer.ipAddresses[] Consumer’s IP address. Necessity: OptionalType: String
transaction.currency Upper case letters (ISO 4217 alpha code). Necessity: OptionalType: String
transaction.randomSumCentis Random sum amount (for random sum check), 1.00 EUR = 100 centis. Necessity: OptionalType: Integer

Fail Response Parameters

Parameter Name Description Value
error   TypeObject
error.cause Cause of the error. Possible values: FILTEREDINVALID_REQUESTSERVER_FAILEDSERVER_UNAVAILABLE. Type: Enum
error.code The unique error code. Type: String
error.message Description of the error. Type: String
invoiceId Verification transaction identifier. Type: String

Request Example

{
  "consumer": {
    "device": {
      "serialNumber": "string"
    }
  },
  "session": {
    "accessToken": "string",
    "nonce": "string",
    "signature": "string",
    "token": "string"
  }
}

Success Response Example

{
  "billing": {
    "address": {
      "city": "string",
      "country": "string",
      "postcodeZip": "string",
      "state": "string",
      "street": "string",
      "street2": "string"
    },
    "phone": "string"
  },
  "consumer": {
    "birthDay": "string",
    "email": "string",
    "ipAddresses": ["string"]
  },
  "invoiceId": "string",
  "session": {
    "checkSignature": "string",
    "nonce": "string",
    "token": "string"
  },
  "transaction": {
    "currency": "string",
    "randomSumCentis": "integer"
  }
}

Fail Response Example

{
  "error": {
    "cause": "enum",
    "code": "string",
    "message": "string"
  },
  "invoiceId": "string"
}

Contact us

By clicking on the button, you agree to the data protection policy

Complete the quiz

By clicking on the button, you agree to the data protection policy