Публічні API ТАС24 Бізнес

Дана документація дозволить клієнтам ТАС24 Бізнес автоматизувати процеси управління рахунками, виписками, платежами. Для використання даної документації користувач повинен зареєструватися у ТАС24 Бізнес і пройти процес анкетування і активації рахунку

API Endpoint
https://tas24b.ua/
Response Content-Types: application/json
Schemes: https
Version: 1.0.0

Авторизація

Авторизація користувача комплексом 1С через api ТАС24БІЗНЕС

POST /auth-service/auth/tmp/by/phone

Для можливості авторизації користувача через api ТАС24БІЗНЕС необхідно:

phone_number: string
in path

Логін (номер телефону зареєстрованого клієнта в форматі 380 ...)

password: string
in path

Пароль вказаний при реєстрації в ТАС24Бізнес

Request Example
{
  "phone_number": "380633333333",
  "password": "passworD1"
}
200 OK

Результатом запиту буде відправка ОТП пароля користувачеві на зазначений номер

Response Example (200 OK)
{
  "token": "11111111-2222-3333-4444-5555555555552",
  "type": "TMP",
  "expire_time": 30,
  "require_captcha": false
}

Авторизація через email

POST /auth-service/auth/tmp/by/email

У разі якщо необхідно пройти авторизацію через email потрібно відправити application json на URL https://tas24b.ua/auth-service/auth/tmp/by/email

email: string
in path

Пошта зазначена при реєстрації в ТАС24Бізнес

password: string
in path

Пароль вказаний при реєстрації в ТАС24Бізнес

Request Example
{
  "email": "380633333333@24b.ua",
  "password": "passworD1"
}
200 OK

Результатом запиту буде відправка ОТП пароля користувачеві на зазначений email

Response Example (200 OK)
{
  "token": "11111111-2222-3333-4444-5555555555552",
  "type": "TMP",
  "expire_time": 30,
  "require_captcha": false
}

Отримання авторизаційних даних користувача по api ТАС24БІЗНЕС

POST /auth-service/auth/by/phone_otp

Після отримання ОТП пароля на вказаний номер, необхідно відправити методом POST application json на URL https://tas24b.ua/auth-service/auth/by/phone_otp в разі авторизації по телефону

otp_code: string
in path

Чотиризначний код, який надійшов на телефон

scope: string
in path

Сфера клієнта, за замовчуванням 'user'

grant_type: string
in path

Тип прав, за замовчуванням 'TMP_TOKEN'

tmp_token: string
in path

Токен отриманий у відповіді від виклику першого api

Request Example
{
  "otp_code": "1234",
  "scope": "USER",
  "grant_type": "TMP_TOKEN",
  "tmp_token": "11111111-2222-3333-4444-5555555555552"
}

У разі успішного запиту

Response Example (200 OK)
{
  "access_token": "11111111-2222-3333-4444-5555555555552",
  "token_type": "uuid",
  "refresh_token": "11111111-2222-3333-4444-5555555555552",
  "expire_time": 5
}

Отримання авторизаційних даних користувача у разі авторизації через email

POST /auth-service/auth/by/email_otp

Після отримання ОТП, необхідно відправити методом POST application json на URL https://tas24b.ua/auth-service/auth/by/email_otp в разі авторизації через email

otp_code: string
in path

Чотиризначний код, який надійшов на телефон

scope: string
in path

Сфера клієнта, за замовчуванням 'user'

grant_type: string
in path

Тип прав, за замовчуванням 'TMP_TOKEN'

tmp_token: string
in path

Токен отриманий у відповіді від виклику першого api

Request Example
{
  "otp_code": "1234",
  "scope": "USER",
  "grant_type": "TMP_TOKEN",
  "tmp_token": "11111111-2222-3333-4444-5555555555552"
}

У разі успішного запиту

Response Example (200 OK)
{
  "access_token": "11111111-2222-3333-4444-5555555555552",
  "token_type": "uuid",
  "refresh_token": "11111111-2222-3333-4444-5555555555552",
  "expire_time": 5
}

Відновлення простроченого токена

POST /auth/by/refresh

При отриманні у відповіді httpStatus 401 (дія авторизаційного токена минула), необхідно отримати новий авторизаційний токен за допомогою рефреш токена, і повторити запит.

refresh_token: string
in path

Рефреш токен отриманий при авторизації

grant_type: string
in path

Тип прав, за замовчуванням 'REFRESH_TOKEN'

Request Example
{
  "refresh_token": "409c3635-5a08-43e1-8703-e59d02f78e93",
  "grant_type": "REFRESH_TOKEN"
}

У разі успішного запиту

Response Example (200 OK)
{
  "access_token": "11111111-2222-3333-4444-5555555555552",
  "token_type": "uuid",
  "refresh_token": "11111111-2222-3333-4444-5555555555552",
  "expire_time": 5
}

Клієнтські персональні дані

Отримання інформації про клієнта

GET /ekb-service/cb/client_info

Після отримання 'access_token', необхідно відправити його в Headers (Authorization: access_token) методом GET на URL https://tas24b.ua/ekb-service/cb/client_info. З відповіді сервісу необхідно взяти відповідь параметра 'idSlave' для наступного запиту.

access_token: string
in header

Код який видається сервісу при авторизації. При запитах необхідно додавати його в хедер Authorization. Термін дії даного токена - 5 хвилин

У разі успішного запиту

Response Example (200 OK)
{
  "clientId": 111111,
  "clientCode": "1111111111",
  "finPhone": "380633333333",
  "finEmail": "ivanov.ivan@gmail.com",
  "passportNum": null,
  "serial": null,
  "firstNameUa": "Іванов",
  "secondNameUa": "Іван",
  "middleNameUa": "Іванович",
  "sex": null,
  "birthdate": null,
  "believer": false,
  "langCode": "ru",
  "flResident": false,
  "srId": 123456,
  "odbId": "111111",
  "odbActivationId": null,
  "odbActivationDate": null,
  "idenColorCode": "GREEN",
  "idenColorDesc": "GREEN",
  "relations": [
    {
      "odbActivationId": 3698888,
      "idSlave": 123456,
      "slaveOdbActivationId": 1111111,
      "slaveOdbActivationDate": 1111111111111,
      "srIdSlave": 111111,
      "relationsTypeId": 11,
      "relationDescription": "Не підтверджена",
      "relationColorId": 3,
      "relationColorCode": "GREEN",
      "companies": {
        "okpo": "1112223333",
        "clientTypes": 2,
        "clientNameUa": "Фізична особа-підприємець Іванов Іван Іванович",
        "abbreviationNameUa": "ФОП Іванов Іван Іванович",
        "kvedId": null,
        "kved": null,
        "taxTypeId": null,
        "taxNameUa": null,
        "dateRegistration": null,
        "numberRegistration": null,
        "slaveIdenColorCode": "GREEN",
        "slaveIdenColorDesc": "GREEN",
        "slaveSegCode": null,
        "slaveSegDesc": null
      },
      "relationSign": "0200100",
      "relationSignDesc": null
    }
  ]
}

Рахунки

Отримання інформації про рахунок клієнта

GET /account-service/accounts

Після отримання інформації про клієнта, необхідно відправити GET запит для отримання списку рахунків на URL https://tas24b.ua/account-service/accounts з параметром 'client_id', в якому вказати значення відповіді минулого апі = 'idSlave' (в нашому випадку 123456), 'access_token' необхідно додати в Headers (Authorization: access_token). Приклад запиту:

access_token: string
in header

Код який видається сервісу при авторизації. При запитах необхідно додавати його в хедер Authorization. Термін дії даного токена - 5 хвилин

У разі успішного запиту

Response Example (200 OK)
{
  "jur_client_id": 123456,
  "org_name_ua": "Фізична особа-підприємець Іванов Іван Іванович",
  "short_org_name_ua": "ФОП Іванов Іван Іванович",
  "egrpou": "1111111111",
  "id_yur_sr": "111111",
  "have_limit_arest": false,
  "arest_funds": 0,
  "residency": true,
  "country_code": "804",
  "sign_believer": false,
  "documentSeries": null,
  "documentNumber": null,
  "accounts": [
    {
      "acc_number": "11122233345566",
      "acc_name": "1234",
      "acc_type": null,
      "id_group": 0,
      "account_name_uk": "Інші",
      "account_name_ru": "Прочие",
      "account_name_en": "Others",
      "currency_group": "uah",
      "currency": "UAH",
      "acc_state": "POST",
      "have_limit_arest": false,
      "is_locked": false,
      "arest_funds": 0,
      "own_funds": 0,
      "credit_funds": 0,
      "credit_funds_aval": 0,
      "balance_SR": 0,
      "balance_PTS": null,
      "credit_hold": null,
      "debit_hold": null,
      "blocked_funds": null,
      "last_tranz_sum": 75,
      "last_tranz_date": "16.02.2018",
      "last_tranz_type": "ct",
      "blocked_info_mas": null
    }
  ],
  "arested_block_info": null,
  "card_list": null
}

Виписки

Отримання виписки по рахунку

GET /statements-service/by_account

Для отримання виписки по рахунку, необхідно відправити GET запит на URL https://tas24b.ua/statements-service/by_account. Приклад запиту:

account_number: string
in header

Номер рахунку. У нашому випадку 26001111111111

currency: string
in header

Валюта рахунку. У нашому випадку UAH

data_begin: string
in header

Дата початку періоду (dd.mm.yyyy)

data_end: string
in header

Дата закінчення періоду (dd.mm.yyyy)

У разі успішного запиту

default

Текст помилки

Response Example (200 OK)
{
  "data_begin": "01.02.2018",
  "data_end": "23.02.2018",
  "incoming_balance": 0,
  "output_balance": 0,
  "dt_turover": 1000.68,
  "ct_turover": 1000.68,
  "number_dt": 1,
  "number_ct": 1,
  "date_previous_tranzaction": null,
  "mas_tranz": [
    {
      "ref_id": "111222333",
      "main_doc_code": "INBANK_DOCUMENT",
      "main_doc_name": "Внутрибанковские документы в НВ",
      "sub_doc_code": "1",
      "sub_doc_name": "Платежное поручение",
      "data_time_create": "01.02.2018 12:09:52",
      "data_time_odb": "01.02.2018 12:12:48",
      "doc_number": "1666      ",
      "priznak_tranz": "c",
      "sum": 1000.68,
      "sum_equivalent": 1000.68,
      "name_kontragent": "Товариство з обмеженою відповідальністю \"Ромашка\"",
      "egrpou_kontragent": "12345678",
      "acc_kontragent": 26001234566411,
      "kontr_bank_name": "АТ \"ТАСКОМБАНК\"",
      "mfo_kontragent": " 112233",
      "payment_purpose": "Сплата за надані  послуги за 01/2018 р., зг. дог. № 222-222/21 від 03.01.2018 р. Без ПДВ."
    }
  ]
}
Response Example (default )
{
  "code": "string",
  "message": "string"
}

Schema Definitions

LoginResponse:

token: string

Код для відправки користувача на перевірку ОТП пароля. Необхідний для наступного кроку

type: string

Тип отриманого токена

expire_time: number

Відведений час на введення ОТП пароля

require_captcha: boolean
Example
{
  "token": "string",
  "type": "string",
  "expire_time": "number",
  "require_captcha": "boolean"
}

AccessResponse:

access_token: string

Код який видається сервісу при авторизації. При запитах необхідно додавати його в хедер Authorization. Термін дії даного токена - 5 хвилин

token_type: string

Тип токена, за замовчуванням 'uuid'

refresh_token: string

Токен для запиту нових авторизаційних даних, якщо час авторизаційного токена минув. Термін дії даного токена - 30 хвилин

expire_time: number

Час дії access_token в хвилинах

Example
{
  "access_token": "string",
  "token_type": "string",
  "refresh_token": "string",
  "expire_time": "number"
}

ClientInfoResponse:

clientId: number

Id клієнта

clientCode: string

ІПН

finPhone: string

Телефон

finEmail: string

Email

passportNum: string

Номер паспорту

serial: string

Серія паспорту

firstNameUa: string

Ім'я

secondNameUa: string

Прізвище

middleNameUa: string

По батькові

sex: string

Стать

birthdate: string

Дата народження

relations: ClientInfoRelations
ClientInfoRelations
Example
{
  "clientId": "number",
  "clientCode": "string",
  "finPhone": "string",
  "finEmail": "string",
  "passportNum": "string",
  "serial": "string",
  "firstNameUa": "string",
  "secondNameUa": "string",
  "middleNameUa": "string",
  "sex": "string",
  "birthdate": "string",
  "relations": [
    {
      "idSlave": "number",
      "relationColorCode": "string",
      "companies": {
        "okpo": "string",
        "clientNameUa": "string",
        "abbreviationNameUa": "string",
        "dateRegistration": "string"
      }
    }
  ]
}

ClientInfoRelations:

idSlave: number

Id підприємства

relationColorCode: string

Зв'язок з підприємством

companies: object

Масив зв'язків з компаніями

okpo: string

ЄДРПОУ

clientNameUa: string

Назва підприємства

abbreviationNameUa: string

Абревіатура підприємства

dateRegistration: string

Дата реєстрації

Example
{
  "idSlave": "number",
  "relationColorCode": "string",
  "companies": {
    "okpo": "string",
    "clientNameUa": "string",
    "abbreviationNameUa": "string",
    "dateRegistration": "string"
  }
}

AccountResponse:

jur_client_id: number

Id підприємства

org_name_ua: string

Назва підприємства

short_org_name_ua: string

Абревіатура підприємства

egrpou: string

ЄДРПОУ

accounts: Accounts

Масив рахунків

Accounts
Example
{
  "jur_client_id": "number",
  "org_name_ua": "string",
  "short_org_name_ua": "string",
  "egrpou": "string",
  "accounts": [
    {
      "acc_number": "string",
      "currency": "string",
      "acc_state": "string",
      "have_limit_arest": "boolean",
      "is_locked": "boolean",
      "arest_funds": "number",
      "own_funds": "number",
      "credit_funds": "number",
      "credit_funds_aval": "number",
      "balance_SR": "number",
      "balance_PTS": "string",
      "last_tranz_sum": "number",
      "last_tranz_date": "string"
    }
  ]
}

Accounts:

acc_number: string

Номер рахунку

currency: string

Валюта рахунку

acc_state: string

Статус рахунку

have_limit_arest: boolean

Наявність арештованих коштів

is_locked: boolean

Наявність блокування на рахунку

arest_funds: number

Сума арештованих коштів

own_funds: number

Особисті кошти

credit_funds: number

Кредитні кошти

credit_funds_aval: number

Доступний залишок по кредиту

balance_SR: number

Баланс ОДБ

balance_PTS: string

Баланс по процесінгу

last_tranz_sum: number

Сума останньої операції

last_tranz_date: string

Дата останньої операції

Example
{
  "acc_number": "string",
  "currency": "string",
  "acc_state": "string",
  "have_limit_arest": "boolean",
  "is_locked": "boolean",
  "arest_funds": "number",
  "own_funds": "number",
  "credit_funds": "number",
  "credit_funds_aval": "number",
  "balance_SR": "number",
  "balance_PTS": "string",
  "last_tranz_sum": "number",
  "last_tranz_date": "string"
}

StatementResponse:

data_begin: string

Дата початку періоду (dd.mm.yyyy)

data_end: string

Дата закінчення періоду (dd.mm.yyyy)

incoming_balance: number

Сума вхідного залишку на початку періоду

output_balance: number

Сума вихідного залишку на кінець періоду

dt_turover: number

Оборот по дебету за період

ct_turover: number

Оборот по кредиту за період

number_dt: number

Сумарна к-ть операцій за дебетом за період

number_ct: number

Сумарна к-ть операцій по кредиту за період

date_previous_tranzaction: string

Дата останнього руху за рахунком, яке передує даті початку виписки (data_begin)

mas_tranz: Statements

Масив об'єктів - масив транзакцій за обраний період

  • з data_begin по data_end
  • з початку дня
Statements
Example
{
  "data_begin": "string",
  "data_end": "string",
  "incoming_balance": "number",
  "output_balance": "number",
  "dt_turover": "number",
  "ct_turover": "number",
  "number_dt": "number",
  "number_ct": "number",
  "date_previous_tranzaction": "string",
  "mas_tranz": [
    {
      "ref_id": "string",
      "main_doc_code": "string",
      "main_doc_name": "string",
      "sub_doc_code": "string",
      "sub_doc_name": "string",
      "data_time_create": "string",
      "data_time_odb": "string",
      "doc_number": "string",
      "priznak_tranz": "string",
      "sum": "number",
      "sum_equivalent": "number",
      "name_kontragent": "string",
      "egrpou_kontragent": "string",
      "acc_kontragent": "number",
      "kontr_bank_name": "string",
      "mfo_kontragent": "string",
      "payment_purpose": "string"
    }
  ]
}

Statements:

ref_id: string

Референс транзакції

main_doc_code: string

Код документа

main_doc_name: string

Ім'я документа

sub_doc_code: string

Код виду документа

sub_doc_name: string

Вид документу

data_time_create: string

Дата і час створення документа (dd.mm.yyyy hh:mm:ss)

data_time_odb: string

Дата в яку платіж був виконаний / зарахований (dd.mm.yyyy hh:mm:ss)

doc_number: string

Номер документа

priznak_tranz: string

Ознака операції, можливі значення:

  • d - операція по дебету (-)
  • с - операція по кредиту (+)
sum: number

Сума в валюті документа

sum_equivalent: number

Гривневий еквівалент суми транзакції (тільки для транзакцій в валюті)

name_kontragent: string

Найменування контрагента

egrpou_kontragent: string

ЄДРПОУ контрагента

acc_kontragent: number

Номер рахунку контрагента

kontr_bank_name: string

Найменування банку контрагента

mfo_kontragent: string

МФО банку контрагента

payment_purpose: string

Призначення платежу

Example
{
  "ref_id": "string",
  "main_doc_code": "string",
  "main_doc_name": "string",
  "sub_doc_code": "string",
  "sub_doc_name": "string",
  "data_time_create": "string",
  "data_time_odb": "string",
  "doc_number": "string",
  "priznak_tranz": "string",
  "sum": "number",
  "sum_equivalent": "number",
  "name_kontragent": "string",
  "egrpou_kontragent": "string",
  "acc_kontragent": "number",
  "kontr_bank_name": "string",
  "mfo_kontragent": "string",
  "payment_purpose": "string"
}

Error:

code: string
message: string
Example
{
  "code": "string",
  "message": "string"
}