When used behind another backend, as a proxy, Syllo provides following benefits:
Term | Description |
---|---|
KYC | Know Your Customer - a set of verification procedures used to verify identity of a customer before any financial service is offered to them. |
P2P | Peer2Peer payments - internal payments done between two or more participants of the same platform |
The Syllo API authenticates users by using username-password credentials and issuing an access token. Access token should be sent in headers of all subsequent calls:
Authoroziation: Bearer {access_token}
All responses received from the Syllo API comply to a specific structure:
{
"code": number,
"success": boolean,
"errors": Error[]
"data": Map<string, object>
}
code
Code field represent status of the response. For successful responses the code is always 200.
success
Success boolean field returns status of the operation.
data
Data object returns actual data returned by the API.
errors
Errors key stores all errors which happened during the execution of the request. Usually empty array ([]
) for successful API calls.
All erros are implementing following data structure:
{
"message": string,
"code": number,
"name": string,
"payload": Map<string, object>|null
}
message
A user-readable message.
code
Code representing an error.
name
Textual representation of the error, eg "INVALID_USERNAME_OR_PASSWORD"
payload
If required, error can contain some payload which may help with identifying the offending field or pinpointing the exact issue.
If API needs to return paginated data, following structure is used:
{
"success": boolean,
"data": {
"items": [],
"meta": {
"itemCount": number,
"totalItems": number,
"itemsPerPage": number,
"totalPages": number,
"currentPage": number
}
}
}
Authenticates the user.
User-Agent required | string Enum: "ANDROID" "APPLE" "WEB" "UNRECOGNIZED" |
X-Device-Os required | string Enum: "ANDROID" "APPLE" "WEB" "UNRECOGNIZED" |
X-Real-IP required | string |
password required | string |
rememberMe required | boolean |
username required | string |
{- "username": "user1@syllo.io",
- "password": "string",
- "rememberMe": true
}
{- "code": 200,
- "success": true,
- "errors": [ ],
- "data": {
- "accessToken": "string",
- "userRoles": [
- "string"
]
}
}
Logs the user out of the system.
authorization required | string |
X-Real-IP required | string |
logoutTrigger required | string Enum: "manual" "automatic" |
{- "logoutTrigger": "manual"
}
{- "code": 200,
- "success": true,
- "errors": [ ],
- "data": {
- "success": true
}
}
Gets all users from the system.
limit required | string |
page required | string |
value | string |
{- "code": 200,
- "success": true,
- "errors": [ ],
- "data": [
- {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "username": "string",
- "email": "string",
- "phoneNumber": "string",
- "birthDate": "string",
- "addressOne": "string",
- "addressTwo": "string",
- "flatNumber": "string",
- "buildingNumber": "string",
- "city": "string",
- "countryCode": "string",
- "postCode": "string",
- "mobileCountryCode": "string",
- "mobileShort": "string",
- "mobile": "string",
- "currencyCode": "string",
- "kycStatus": "string",
- "pushNotifications": true,
- "emailNotifications": true,
- "marketingConsent": true
}
], - "pagination": {
- "page": 0,
- "limit": 0,
- "offset": 0,
- "totalPages": 0,
- "totalItems": 0
}
}
Configuration of the marketing settings for the user.
marketingConsent required | boolean |
userId required | string |
{- "userId": "string",
- "marketingConsent": true
}
{- "code": 200,
- "success": true,
- "errors": [ ],
- "data": { }
}
Change the statuse of the user in order to further define his available actions.
- VERIFIED - can proceed with the flow, as the identification was successfuly finished.
- UNVERIFIED - to be defined.
- REJECTED - should be blocked from proceeding the flow, as the identification was not successful.
- VERIFICATION_IN_PROGRESS - the identification is still pending, the flow should be blocked paused untill the process is finished.
- PENDING_FRONTEND_VERIFICATION - to be defined.
id required | string |
kycStatus required | string Enum: "PENDING_FRONTEND_VERIFICATION" "VERIFIED" "UNVERIFIED" "REJECTED" "VERIFICATION_IN_PROGRESS" "UNRECOGNIZED" |
{- "kycStatus": "PENDING_FRONTEND_VERIFICATION"
}
{- "code": 200,
- "success": true,
- "errors": [ ],
- "data": { }
}
Change the statuse of the user in order to further define his available actions.
- DISABLED - to be defined.
- ACTIVE - to be defined.
- UNVERIFIED - to be defined.
- INCOMPLETE - to be defined.
id required | string |
userStatus required | string Enum: "INCOMPLETE" "UNVERIFIED" "ACTIVE" "DISABLED" "DELETED" "CLOSED" "UNRECOGNIZED" |
{- "userStatus": "INCOMPLETE"
}
{- "code": 200,
- "success": true,
- "errors": [ ],
- "data": { }
}
Gets all accounts from the system.
limit | string |
page required | string |
value | string |
{- "code": 200,
- "success": true,
- "errors": [ ],
- "data": [
- {
- "id": "string",
- "userUuid": "string",
- "organisationUuid": "string",
- "productId": "string",
- "feeGroupId": "string",
- "usageLimitGroupId": "string",
- "name": "string",
- "iban": "string",
- "status": "string",
- "swiftBic": "string",
- "routingNumber": "string",
- "accountNumber": "string",
- "sortCode": "string",
- "balance": "string",
- "blockedBalance": "string",
- "availableBalance": "string",
- "currency": "string",
- "vendor": "string",
- "isMain": true
}
], - "pagination": {
- "page": 0,
- "limit": 0,
- "offset": 0,
- "totalPages": 0,
- "totalItems": 0
}
}
Gets all payment devices from the system.
limit | string |
page required | string |
value | string |
{- "code": 200,
- "success": true,
- "errors": [ ],
- "data": [
- {
- "id": "string",
- "userId": "string",
- "organizationId": "string",
- "productId": "string",
- "accountId": "string",
- "type": "physical",
- "feeGroupId": "string",
- "usageLimitsGroupId": "string",
- "name": "string",
- "token": "string",
- "vendor": "string",
- "vendorReference": "string",
- "isLive": true,
- "isMain": true,
- "status": "ok",
- "expiryDate": "string",
- "pan": "string"
}
], - "pagination": {
- "page": 0,
- "limit": 0,
- "offset": 0,
- "totalPages": 0,
- "totalItems": 0
}
}
Locks Payment Device by Payment Device ID.
id required | string |
{- "code": 200,
- "success": true,
- "errors": [ ],
- "data": {
- "id": "string",
- "userId": "string",
- "organizationId": "string",
- "productId": "string",
- "accountId": "string",
- "type": "physical",
- "feeGroupId": "string",
- "usageLimitsGroupId": "string",
- "name": "string",
- "token": "string",
- "vendor": "string",
- "vendorReference": "string",
- "isLive": true,
- "isMain": true,
- "status": "ok",
- "expiryDate": "string",
- "pan": "string"
}
}
Unlocks Payment Device by Payment Device ID.
id required | string |
{- "code": 200,
- "success": true,
- "errors": [ ],
- "data": {
- "id": "string",
- "userId": "string",
- "organizationId": "string",
- "productId": "string",
- "accountId": "string",
- "type": "physical",
- "feeGroupId": "string",
- "usageLimitsGroupId": "string",
- "name": "string",
- "token": "string",
- "vendor": "string",
- "vendorReference": "string",
- "isLive": true,
- "isMain": true,
- "status": "ok",
- "expiryDate": "string",
- "pan": "string"
}
}
Returns Accounts chart data
limit required | string |
page required | string |
value | string |
{- "code": 200,
- "success": true,
- "errors": [ ],
- "data": [
- {
- "createdAt": "string",
- "updatedAt": "string",
- "id": "string",
- "userUuid": "string",
- "organisationUuid": "string",
- "accountId": "string",
- "paymentDeviceId": "string",
- "transactionCategoryId": "string",
- "merchantId": "string",
- "countryId": "string",
- "note": "string",
- "merchantName": "string",
- "merchantStreet": "string",
- "merchantCity": "string",
- "merchantRegion": "string",
- "merchantPostCode": "string",
- "merchantCountry": "string",
- "amount": "string",
- "originalAmount": "string",
- "originalCurrency": "string",
- "fee": "string",
- "feeCurrency": "string",
- "mcc": "string",
- "postDate": "string",
- "vendorReference": "string",
- "vendor": "string",
- "group": "string",
- "status": "string",
- "type": "string",
- "gpsLat": "string",
- "gpsLong": "string",
- "runningBalance": "string",
- "isFx": true,
- "currencyId": "string",
- "currency": "string",
- "settlementDate": "string",
- "direction": "string"
}
], - "pagination": {
- "page": 0,
- "limit": 0,
- "offset": 0,
- "totalPages": 0,
- "totalItems": 0
}
}
Create an dictionary.
name required | string |
scope | string |
visibility required | string Default: "PUBLIC" Enum: "PUBLIC" "PRIVATE" "UNRECOGNIZED" Type of visibility. |
{- "name": "string",
- "visibility": "PUBLIC",
- "scope": "string"
}
{ }
Updates dictionary.
id required | string |
name | string |
scope | string |
visibility | string Enum: "PUBLIC" "PRIVATE" "UNRECOGNIZED" |
{- "id": "string",
- "name": "string",
- "scope": "string",
- "visibility": "PUBLIC"
}
{- "code": 200,
- "success": true,
- "errors": [ ],
- "data": { }
}
Creates dicionary item by slug.
slug required | string |
name required | string |
ordering | number Default: 1 |
value required | string |
{- "name": "string",
- "ordering": 1,
- "value": "string"
}
{ }
Updates dictionary item by slug and ID.
id required | string |
slug required | string |
name | string |
ordering | number |
value | string |
{- "name": "string",
- "ordering": 0,
- "value": "string"
}
{- "code": 200,
- "success": true,
- "errors": [ ],
- "data": { }
}