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 Name | Description | Value |
|---|---|---|
| consumer | Β | Necessity: RequiredType:Β Object |
| consumer.device | Β | Necessity: RequiredType:Β Object |
| consumer.device.serialNumber | Consumerβs device serial number. | Necessity: RequiredType: StringLength: 1-50 |
| transaction | Β | Necessity: RequiredType:Β Object |
| 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: RequiredType:Β Object |
| 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: OptionalType:Β Object |
| location.lat | The latitude specified in the range of -90.0 through +90.0, both inclusive. | Type: Double |
| location.lng | The longitude specified in the range -180.0 through +180.0, both inclusive. | Type: Double |
| consumer.ipAddresses | Consumerβs IP addresses. | Type: List |
| consumer.ipAddresses[] | Consumerβs IP address. | Necessity: OptionalType: StringLength: 7-15 |
| fromBin | Source of funds card BIN (first 6 digits of card number) may be used to display pre-calculated commission. | Necessity: OptionalType: StringLength: 6 |
| toBin | Destination 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 Name | Description | Value |
|---|---|---|
| endpointId | Entry point identifier for transfer transaction. | Necessity: RequiredType: String |
| invoiceId | Transfer transaction identifier. | Necessity: RequiredType: String |
| session | Β | Necessity: RequiredType:Β Object |
| 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 |
| rates | Β | Necessity: OptionalType:Β Object |
| rates.min | Possible minimum commission amount. | Necessity: OptionalType: String |
| rates.max | Possible maximum commission amount. | Necessity: OptionalType: String |
Fail Response Parameters
| Parameter Name | Description | Value |
|---|---|---|
| error | Β | Type:Β Object |
| error.cause | Cause of the error. Possible values:Β FILTERED,Β INVALID_REQUEST,Β SERVER_FAILED,Β SERVER_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",
"rates": {
"min": "string",
"max": "string"
},
"session": {
"nonce": "string",
"signature": "string"
}
}
Fail Response Example
{
"error": {
"cause": "enum",
"code": "string",
"message": "string"
}
}