Initiate transfer

Introduction

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

To initiate funds transfer, 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.

The Connecting Party’s server may also respond with the transaction’s commission.

API URLs

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

Request Parameters

Parameter NameDescriptionValue
consumer Necessity: RequiredTypeObject
consumer.device Necessity: RequiredTypeObject
consumer.device.serialNumberConsumer’s device serial number.Necessity: RequiredType: StringLength: 1-50
transaction Necessity: RequiredTypeObject
transaction.amountCentisTransaction amount, 1.00 EUR = 100 centis.Necessity: RequiredType: Integer
transaction.currencyUpper case letters (ISO 4217 alpha code).Necessity: RequiredType: StringLength: 3
session Necessity: 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
location Necessity: OptionalTypeObject
location.latThe latitude specified in the range of -90.0 through +90.0, both inclusive.Type: Double
location.lngThe longitude specified in the range -180.0 through +180.0, both inclusive.Type: Double
consumer.ipAddressesConsumer’s IP addresses.Type: List
consumer.ipAddresses[]Consumer’s IP address.Necessity: OptionalType: StringLength: 7-15
fromBinSource of funds card BIN (first 6 digits of card number) may be used to display pre-calculated commission.Necessity: OptionalType: StringLength: 6
toBinDestination of funds card BIN (first 6 digits of card number) may be used to display pre-calculated commission.Necessity: OptionalType: StringLength: 6

Success Response Parameters

Parameter NameDescriptionValue
endpointIdEntry point identifier for transfer transaction.Necessity: RequiredType: String
invoiceIdTransfer transaction identifier.Necessity: RequiredType: String
session Necessity: 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
rates Necessity: OptionalTypeObject
rates.minPossible minimum commission amount.Necessity: OptionalType: String
rates.maxPossible maximum commission amount.Necessity: OptionalType: String

Fail Response Parameters

Parameter NameDescriptionValue
error TypeObject
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",
  "rates": {
    "min": "string",
    "max": "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