Initiate sale

Introduction

Initiate sale is initiated through HTTPS POST request by using URLs and the parameters.

To initiate sale, Connecting Party’s app sends {accessToken} with transaction amount and other device parameters to Connecting Party’s server, which are used to start a session with unique random {nonce} and encrypted {signature}.

In response Connecting Party’s server also provides information about invoice in Connecting Party’s system and endpoint in Billblend.

API URLs

Connecting Party Server
https://proxy.connectingpartyserver.com/sale/initiate-sale

Request Parameters

Parameter Name Description Value
consumer   Necessity: RequiredTypeObject
consumer.device   Necessity: RequiredTypeObject
consumer.device.serialNumber Consumer’s device serial number. Necessity: RequiredType: StringLength: 1-50
transaction   Necessity: RequiredTypeObject
transaction.amountCentis Transaction amount, 1.00 EUR = 100 centis. Necessity: RequiredType: Integer
transaction.currency Upper case letters (ISO 4217 alpha code). Necessity: RequiredType: StringLength: 3
session   Necessity: RequiredTypeObject
session.accessToken Access token key received in Optional consumer authentication. Necessity: RequiredType: StringLength: 32-128
consumer.device.imei Consumer’s device international mobile equipment identity. Necessity: OptionalType: StringLength: 14-16
location   Necessity: OptionalTypeObject
location.lat The latitude specified in the range of -90.0 through +90.0, both inclusive. Necessity: OptionalType: Double
location.lng The longitude specified in the range -180.0 through +180.0, both inclusive. Necessity: OptionalType: Double
consumer.ipAddresses Consumer’s IP addresses. Necessity: OptionalType: List
consumer.ipAddresses[] Consumer’s IP address. Necessity: OptionalType: StringLength: 7-15

Success Response Parameters

Parameter Name Description Value
endpointId Entry point identifier for sale transaction. Necessity: RequiredType: String
invoiceId Transfer transaction identifier. Necessity: RequiredType: String
session   Necessity: RequiredTypeObject
session.nonce Unique random string generated by Connecting Party’s server. Necessity: RequiredType: String
session.signature Checksum generated by hmac-sha1 (see Signature computation) from the concatenation of the accessToken, consumer.device.serialNumber, endpointId, session.nonce, invoiceId, transaction.amountCentis and the transaction.currency. Necessity: RequiredType: String

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

Request Example

{
  "consumer": {
    "device": {
      "imei": "string",
      "serialNumber": "string"
    },
    "ipAddresses": ["string"]
  },
  "location": {
    "lat": "double",
    "lng": "double"
  },
  "session": {
    "accessToken": "string"
  },
  "transaction": {
    "amountCentis": "integer",
    "currency": "string"
  }
}

Success Response Example

{
  "endpointId": "string",
  "invoiceId": "string",
  "session": {
    "nonce": "string",
    "signature": "string"
  }
}

Fail Response Example

{
  "error": {
    "cause": "enum",
    "code": "string",
    "message": "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