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 NameDescriptionValue
consumerNecessity: RequiredTypeObject
consumer.deviceNecessity: RequiredTypeObject
consumer.device.serialNumberConsumer’s device serial number.Necessity: RequiredType: StringLength: 1-50
transactionNecessity: RequiredTypeObject
transaction.amountCentisTransaction amount, 1.00 EUR = 100 centis.Necessity: RequiredType: Integer
transaction.currencyUpper case letters (ISO 4217 alpha code).Necessity: RequiredType: StringLength: 3
sessionNecessity: RequiredTypeObject
session.accessTokenAccess token key received in Optional consumer authentication.Necessity: RequiredType: StringLength: 32-128
consumer.device.imeiConsumer’s device international mobile equipment identity.Necessity: OptionalType: StringLength: 14-16
locationNecessity: OptionalTypeObject
location.latThe latitude specified in the range of -90.0 through +90.0, both inclusive.Necessity: OptionalType: Double
location.lngThe longitude specified in the range -180.0 through +180.0, both inclusive.Necessity: OptionalType: Double
consumer.ipAddressesConsumer’s IP addresses.Necessity: OptionalType: List
consumer.ipAddresses[]Consumer’s IP address.Necessity: OptionalType: StringLength: 7-15

Success Response Parameters

Parameter NameDescriptionValue
endpointIdEntry point identifier for sale transaction.Necessity: RequiredType: String
invoiceIdTransfer transaction identifier.Necessity: RequiredType: String
sessionNecessity: RequiredTypeObject
session.nonceUnique random string generated by Connecting Party’s server.Necessity: RequiredType: String
session.signatureChecksum 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 NameDescriptionValue
errorTypeObject
error.causeCause of the error. Possible values: FILTEREDINVALID_REQUESTSERVER_FAILEDSERVER_UNAVAILABLE.Type: Enum
error.codeThe unique error code.Type: String
error.messageDescription 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