Інтеграція з 1С

1.Консолідований звіт по візитам

{{host}}/api2/appointments/report

Звіт містить масив візитів, до кожного з яких є наступні вкладені обʼєкти з деталізацією:

Параметри фільтрації:

  • StartDateFrom
  • StartDateTo
  • ClientId
  • SpecialistId
  • InsuranceCompanyId
  • BranchId
  • VendorId
  • Status
  • _limit
  • _start

Фільтр

Тип

Опис

StartDateFrom

datetime

Приклад: 2023-01-01 00:00

StartDateTo

datetime

Приклад: 2023-01-01 23:59

ClientId

int

ID пцієнта з довідника /clients

SpecialistId

int

ID лікаря з довідника /specialists

InsuranceCompanyId

int

ID страхової компанії з довідника /insurance/Company

BranchId

int

ID філіала з довідника /branches

Status

string

Статус візита. Можливі статуси: active, cancelled…

_limit

int

Кількість записів у відповіді. За замовчуванням 1000

_start

int

Порядковий номер початкового запису у відповіді (використовується для пагінації)

Приклад відповіді:

[
    {
        "id": 4612,
        "appointmentType": "appointment",
        "specialistId": 1,
        "specialistRecommendationId": null,
        "clientId": 21,
        "roomId": null,
        "insurancePolicyId": 30,
        "insuranceCompanyId": null,
        "startDate": "2025-02-15T10:00:00",
        "endDate": "2025-02-15T10:45:00",
        "branchId": 1,
        "legalEntityId": 1,
        "insuranceGuarantor": "",
        "insuredAccidentType": "insured",
        "status": "active",
        "isBusy": false,
        "color": null,
        "cancellationReason": null,
        "createAccountId": 9,
        "createAccountName": "demo",
        "client": {
            "id": 21,
            "name": "Тестовий Микола Петрович",
            "firstName": "Микола",
            "middleName": "Петрович",
            "lastName": "Тестовий",
            "gender": "female",
            "email": "",
            "address": "Дегтярна, 31",
            "phone": "0000000012",
            "birthDate": "2025-02-01T00:00:00",
            "communicationLanguage": "ua",
            "description": "Цукровий діабет",
            "cardNumber": 25,
            "clientType": [
                "Конфліктний",
                "Декларант"
            ]
        },
        "createDate": "2025-02-15T22:02:31.463",
        "specialist": {
            "id": 1,
            "name": "Амосов Микола Михайлович",
            "type": "doctor",
            "isActive": true
        },
        "branch": {
            "id": 1,
            "title": "Оболонь"
        },
        "room": {
            "name": "Терапевтичний кабінет",
            "number": "1",
            "type": "ambulatory",
            "description": "",
            "color": null
        },
        "courses": [
            {
                "id": 1056,
                "appointmentId": 4612,
                "title": "Призначення з візиту 25.01.2025"
            }
        ],
        "clientAppointmentBalance": {
            "clientId": 21,
            "appointmentId": 4612,
            "appointmentPayments": 648.50,
            "prepayments": null,
            "clientPaysProcedures": 648.50,
            "clientPaysMedicines": 0.0,
            "clientPaysTotal": 648.50,
            "totalProceduresCost": 995.00,
            "totalMedicinesCost": 0.0,
            "totalRefunds": null,
            "totalBalance": 0.00
        },
        "resultProcedures": [
            {
                "id": 4355,
                "clientAppointmentResultId": 4612,
                "clientCourseProcedureId": null,
                "specialistId": 1,
                "courseTitle": null,
                "deductible": 0.000000,
                "description": "",
                "discount": 0.000000,
                "consumerPrice": 500.000000,
                "clientGroupPrice": 300.000000,
                "dollarRate": null,
                "customerPriceInUsd": null,
                "additionalSpecialistPercentValue": null,
                "additionalSpecialistBonusValue": null,
                "specialistBonusPercentValue": 16.000000,
                "specialistBonusValue": null,
                "nurseSpecialistBonusPercentValue": null,
                "nurseSpecialistBonusValue": null,
                "fromCourseId": 0,
                "importId": "1001",
                "toothData": "",
                "includeInBill": true,
                "isGuaranteedByInsurer": false,
                "isAdditionalProducedure": null,
                "isApplyClientDiscountForBonus": true,
                "isApplyClientDiscountForReferralBonus": false,
                "isApplyProcedurePriceForBonus": false,
                "isPercentDiscount": true,
                "price": 500.000000,
                "sumWithDiscount": 500.000000,
                "procedureId": 1,
                "procedureImportId": "1001",
                "procedureName": "Первинна консультація терапевта",
                "procedureCategoryId": 22,
                "procedureCategoryName": "1. ПЕРВИННІ КОНСУЛЬТАТИВНІ ПОСЛУГИ ДЛЯ ДОРОСЛИХ",
                "quantity": 1.000000,
                "referralName": "  ",
                "referalBonus": 0.000000,
                "vendorId": null,
                "vendorPrice": null,
                "taxRate": 1,
                "procedureToSpecialist": [],
                "clientPays": 0.00,
                "insurancePays": 0.0
            },
            {
                "id": 4356,
                "clientAppointmentResultId": 4612,
                "clientCourseProcedureId": null,
                "specialistId": 1,
                "courseTitle": null,
                "deductible": 30.000000,
                "description": "",
                "discount": 0.000000,
                "consumerPrice": 495.000000,
                "clientGroupPrice": 495.000000,
                "dollarRate": null,
                "customerPriceInUsd": null,
                "additionalSpecialistPercentValue": null,
                "additionalSpecialistBonusValue": null,
                "specialistBonusPercentValue": 12.000000,
                "specialistBonusValue": null,
                "nurseSpecialistBonusPercentValue": null,
                "nurseSpecialistBonusValue": null,
                "fromCourseId": 0,
                "importId": "1012",
                "toothData": "",
                "includeInBill": true,
                "isGuaranteedByInsurer": true,
                "isAdditionalProducedure": null,
                "isApplyClientDiscountForBonus": true,
                "isApplyClientDiscountForReferralBonus": false,
                "isApplyProcedurePriceForBonus": false,
                "isPercentDiscount": true,
                "price": 495.000000,
                "sumWithDiscount": 495.000000,
                "procedureId": 10,
                "procedureImportId": "1012",
                "procedureName": "Первинна консультація гінеколога",
                "procedureCategoryId": 22,
                "procedureCategoryName": "1. ПЕРВИННІ КОНСУЛЬТАТИВНІ ПОСЛУГИ ДЛЯ ДОРОСЛИХ",
                "quantity": 1.000000,
                "referralName": "  ",
                "referalBonus": 0.000000,
                "vendorId": null,
                "vendorPrice": null,
                "taxRate": 5,
                "procedureToSpecialist": [],
                "clientPays": 0.00000000,
                "insurancePays": 0.00000000
            }
        ],
        "InsuranceReport": [
            {
                "policyId": 30,
                "clientId": 21,
                "insurancePolicyNumber": "123",
                "insuranceCompanyName": "СК Провідна",
                "insuranceCompanyType": "insurance",
                "insuranceCompanyId": 4,
                "insuranceLimit": null,
                "insuranceDeductible": 0.000000,
                "actualFrom": "2025-02-01T00:00:00",
                "actualTo": "2025-04-30T00:00:00"
            }
        ],
        "treatmentSummary": [],
        "clientCashIncome": [
            {
                "id": 1353,
                "clientId": 21,
                "clientAppointmentId": 4612,
                "comment": "фіскальна оплата",
                "status": null,
                "externalPaymentId": null,
                "amount": 648.500000,
                "paymentType": "cash",
                "cashDeskId": 1,
                "incomeType": "payment",
                "integrationType": null,
                "clientCourseId": null,
                "createDate": "2025-02-15T22:03:01.727",
                "createAccountId": 9,
                "createAccountName": null
            }
        ],
        "medicines": [
            {
                "id": 4238,
                "name": "Фіз.розчин 200",
                "medicineCost": 1.920500000000,
                "description": "",
                "manufacturer": "Юрія Фарм",
                "clientAppointmentResultId": 4612,
                "clientId": null,
                "unitType": 19,
                "pricePerUnit": 1.920500,
                "unitsAmount": 1.000000,
                "discount": 0.000000,
                "medicineCategoryId": 1,
                "medicineCategoryName": "Вироби медичного призначення",
                "medicineBatchId": 1054,
                "resultProcedureId": 4355,
                "isGuaranteedByInsurer": false,
                "deductible": 0.000000,
                "includeInBill": false,
                "createDate": "2025-02-15T22:02:35.39",
                "createAccountId": 9,
                "medicineId": 1
            },
            {
                "id": 4239,
                "name": "Бахіли",
                "medicineCost": 3.000000000000,
                "description": "",
                "manufacturer": "Тест",
                "clientAppointmentResultId": 4612,
                "clientId": null,
                "unitType": 22,
                "pricePerUnit": 3.000000,
                "unitsAmount": 1.000000,
                "discount": 0.000000,
                "medicineCategoryId": 1,
                "medicineCategoryName": "Вироби медичного призначення",
                "medicineBatchId": 18,
                "resultProcedureId": 4355,
                "isGuaranteedByInsurer": false,
                "deductible": 0.000000,
                "includeInBill": false,
                "createDate": "2025-02-15T22:02:35.43",
                "createAccountId": 9,
                "medicineId": 2
            },
            {
                "id": 4240,
                "name": "Лідокаїн",
                "medicineCost": 0.000000000000,
                "description": "",
                "manufacturer": "Дарниця",
                "clientAppointmentResultId": 4612,
                "clientId": null,
                "unitType": 14,
                "pricePerUnit": 0.000000,
                "unitsAmount": 1.000000,
                "discount": 0.000000,
                "medicineCategoryId": 5,
                "medicineCategoryName": "Медикаменти",
                "medicineBatchId": 1053,
                "resultProcedureId": 4355,
                "isGuaranteedByInsurer": false,
                "deductible": 0.000000,
                "includeInBill": false,
                "createDate": "2025-02-15T22:02:35.443",
                "createAccountId": 9,
                "medicineId": 5
            }
        ],
        "cancellationDate": null,
        "cancellationAccountName": null
    }
]

Опис даних у відповіді

 

2.Консолідований фінансовий звіт

{{host}}/api2/reports/procedures

Параметри запиту:

  1. ClientId – Id пацієнта
  2. SpecialistId – Id спеціаліста
  3. InsuranceCompanyId – Id страхової компанії
  4. VendorId – Id вендора
  5. StartDateFrom – Дата від
  6. StartDateTo – Дата до

 

Приклад відповіді:

{
"Id": 14339, // Id визита
"SpecialistId": 1, // Id лікаря визиту
"SpecialistRecommendationId": null, // Id направника
"ClientId": 49, // Id пацієнта
"InsurancePolicyId": 26, // Id страхового поліса
"StartDate": "2021-05-06T10:00:00", // Дата і час візиту
"BranchId": 1, // Id філіала
"Client": { // Пацієнт (обʼєкт)
"Id": 49, // Id пацієнта
"Name": "Тестовий Тест Тест", //Імʼя пацієнта
"Gender": "female",
"Email": "info@lakmus.org",
"Address": "",
"Phone": "0661231212",
"BirthDate": "1987-03-05T00:00:00",
"CommunicationLanguage": "ua", // Мова комунікації
"Description": "Коментар до візиту",
"CardNumber": 123123, // Номер медичної карти
"ClientType": "Тип пацієнта"
},
"Specialist": { // Лікар - обʼєкт
"Id" : 1,
"Name" : "Лікар Тест",
"Type" : "doctor", // Тип лікаря
"IsActive" : true
},
"Branch": {
"Id": 1,
"Title": "Сахарова"
},
"ResultProcedures": [
{ 
"Id": 2707, // Id услуги визита
"ClientAppointmentResultId": 14339, // Id визита
"ClientCourseProcedureId": null, // Id услуги в пакете услуг
"CourseTitle": null, // Название пакета услуг 
"Deductible": 0, // Франшиза услуги, может отличаться от франшизы полиса
"Description": "Описание", 
"Discount": 1, // Скидка
"ConsumerPrice": 1200, // Цена для частного лица (грн)
"ClientGroupPrice": 918, // Цена для клиента страховой (грн)
"DollarRate": 1, 
"CustomerPriceInUsd": 918, // Цена для частного лица (usd)
"AdditionalSpecialistPercentValue" : null, // Бонус ассистента (%)
"AdditionalSpecialistBonusValue": null, // Бонус ассистента (грн)
"NurseSpecialistBonusPercentValue": null, // Бонус медсестры (%)
"NurseSpecialistBonusValue": null, // Бонус медсестры (грн)
"FromCourseId": null, // Id пакета услуг
"ImportId": null, // Внешний Id услуги
"IncludeInBill": true, // Включить в счет клиента
"IsGuaranteedByInsurer": true, // Гарантированно страховой
"IsAdditionalProducedure": false, // Дополнительная процедура
"IsPercentDiscount": true, // Учитывать скидку из поля Discount, как процент
"Price": 1190, // Прайсовая цена на момент формирования отчета
"SumWithDiscount": 1200, // Сумма для физлица
"ProcedureId": 5379, // Id процедуры в справочнике
"ProcedureImportId": "9700", // Интеграционный Id процедуры
"ProcedureName": "1,25-дигідроксивітамін D, 1,25-(OH)2D", 
"ProcedureCategoryId": 51, // Id категрии
"ProcedureCategoryName": "Пакет (Біохімічна панель AB06006)", // Название категории
"Quantity": 1, // Количество
"ReferralName": null, // Имя внешнего направителя
"ReferalBonus": null, // Бонус внешнего направителя
"VendorId": 11, // Id поставщика услуги
"VendorPrice": 918, // Цена поставщика услуги (грн)
"TaxRate": 5, // Налоговая ставка
"ProcedureToSpecialist": [ // Исполнители услуги
{
"SpecialistName": "Лікар Тест2", 
"ClientAppointmentProcedureId": 2707,
"SpecialistId": 38, // Id исполнителя
"SpecialistBonusPercentValue": null, // Бонус исполнителя (%)
"SpecialistBonusValue": null, // Бонус исполнителя (грн)
"IsApplyClientDiscountForBonus": false, // Считать бонус исполнителя с учетом скидки клиента
"IsApplyProcedurePriceForBonus": false // Считать бонус исполнителя по цене потребителя (страховой компании)
},
{
"SpecialistName": "Лікар Тест3",
"ClientAppointmentProcedureId": 2707,
"SpecialistId": 55,
"SpecialistBonusPercentValue": null,
"SpecialistBonusValue": null,
"IsApplyClientDiscountForBonus": true,
"IsApplyProcedurePriceForBonus": false
}
]
}
],
"ClientInsurance": [ // Страховой полис
{
"PolicyId": 8,
"ClientId": 728,
"InsurancePolicyNumber": "111111", // Номер
"InsuranceCompanyId": 1, // Id страховой компании
"InsuranceLimit": null, // Страховой лимит
"InsuranceDeductible": null, // Франшиза для полиса по-умолчанию
"ActualFrom": "2019-10-01T00:00:00", // Срок действия
"ActualTo": "2021-10-27T00:00:00"
}
],
"ClientCashIncome": [ // Оплаты клиента
{
"Id": 1637,
"ClientId": 49,
"ClientAppointmentId": 14339,
"Comment": "Оплата по фіскальному чеку",
"Amount": 0, // Сумма
"PaymentType": "cash", // Тип оплаты (карта/наличные)
"PaymentTypeId": 1, // Id кассы
"IncomeType": "payment", // Тип поступления 
"ClientCourseId": 0, // Id пакета (плана лечения)
"CreateDate": "2021-05-07T13:42:00.007",// Дата создания записи
"CreateAccountId": 4 // Id аккаунта создателя записи
},
{
"Id": 1638,
"ClientId": 49,
"ClientAppointmentId": 14339,
"Comment": "Повернення по фіскальному реєстратору",
"Amount": 0,
"PaymentType": "cash",
"PaymentTypeId": 1,
"IncomeType": "payment",
"ClientCourseId": 0,
"CreateDate": "2021-05-07T13:42:22.13",
"CreateAccountId": 4,
"UpdateDate": "2021-05-07T13:42:22.147",
"UpdateAccountId": "4",
"Status": null,
"ExternalPaymentId": null,
"ExternalPaymentLog": null
}
],
"Medicines": [ // Медикаменты визита
{
"Id": 2230,
"Name": "УТРОЖЕСТАН 200МГ №14",
"MedicineCost": 13.95, // Итоговая стоимость
"Description": "",
"Manufacturer": "Безен Хелскеа, Бельгія", // Производитель
"ClientAppointmentResultId": 14339, // Id визита
"ClientId": 49, // Id клиента
"UnitType": "5", // Количество в упаковке
"PricePerUnit": 5.58, // Цена за упаковку
"UnitsAmount": 2.5, // Количество проданных упаковок
"Discount": 0, // Скидка
"MedicineCategoryId": 1, // Id категории
"MedicineCategoryName": "Вироби медичного призначення", // Название категории
"MedicineBatchId": 35, // Id партии
"ResultProcedureId": 2707, // Id услуги визита
"IsGuaranteedByInsurer": false, // Гарантировано СК
"Deductible": 0, // Франшиза медикамента
"IncludeInBill": true, // Включить в счет
"CreateDate": "2021-05-18T09:06:50.097", // Дата добавления медикамента в визит
"CreateAccountId": 237,
"MedicineId": 15 // Id медикамента в справочнике 
}
]
}

3. Рух коштів по касам

{{host}}/api2/client-cash-income

Приклад відповіді:

[
{
“id”: 247, //id оплаты
“clientId”: 40, //id пациента
“clientAppointmentId”: 11786, //id визита
“comment”: “”, //комментарий оплаты
“amount”: 200.000000, //сумма оплаты
“paymentType”: “cash”, //тип оплаты
“paymentTypeId”: 1, //id кассы
“incomeType”: “payment”, //id тип операции, возможные варианты: payment, refund
“clientCourseId”: 0, //id пакета (курса) к которому привязана оплата
“createDate”: “2020-04-22T20:47:13.197”,// дата операции
“createAccountId”: 5,//id пользователя который провел оплату
“updateDate”: “2020-04-22T20:47:13.197”,// дата последнего обновления
“updateAccountId”: “5”,//id пользователя который провел последнее обновление
“status”: null,//статус оплаті (для интеграций с внешними платежными сервисами
“externalPaymentId”: null,//id оплаты во внешней системе
“externalPaymentLog”: null//лог операции во внешней системе
}
]

3.Рух по складам

{{host}}/api2/store/medicine-operations/details

Приклад відповіді:

[
    {
        “Id”: 50, //id операции
        “OperationType”: “credit_slip”, //тип операции (приход, перемещение, списание по акту, списание на пациента)
        “OperationDate”: “2021-09-14T00:00:00”,// дата операции
        “BatchId”: 50, //id партии медикамента
        “StoreId”: 1, //id склада
        “DisplacementStoreId”: null, //id склада на который перемещен
        “BranchId”: 1,//id филиала
        “DisplacementBranchId”: null,//id филиала куда перемещен медикамент
        “MedicineId”: 18,//id медикамента
        “MedicineName”: “Но-шпа”,//название медикамента
        “Barcode”: “18”,//штрихкод медикамента
        “Manufacturer”: “”,//производитель медикамента
        “UnitsAmount”: 2000.000000,//количество оприходование, списания, перемещения
        “PricePerUnit”: 0.000000,//цена за единицу
        “Sum”: 0.000000,//сумма
        “ProviderId”: null,//id поставщика
        “ProviderTitle”: null//Наименование поставщика
    }
]

4.Довідники

Послуги:

{{host}}/api2/procedure

Приклад відповіді:

[
    {
        “categoryName”: “Консультації”, //название категории
        “isActive”: true,//идентификатор активной услуги
        “id”: 1,//id услуги
        “categoryId”: 51,//id категории
        “externalId”: “1204”,//внешний id услуги (для услуг вендоров)
        “duration”: 0,//длительность услуги
        “name”: “Анализ методом ПЦР”,//название услуги
        “nameEng”: “”,//название услуги на английском
        “importId”: “covid”,// код услуги (кассовый код)
        “price”: 205.000000,//цена
        “inUsd”: false,//валюта услуги 0 – гривна, 1 – доллар
        “description”: “”,// описание
        “recommendations”: null,//рекоммендации к подготовке
        “tubeId”: “4”,//id пробирки в который делается забор материала (для лабораторий)
        “tubeName”: “Кровь био/иммунохимия”,//название пробирки в который делается забор материала (для лабораторий)
        “tubeColor”: null,//цвет пробирки в который делается забор материала (для лабораторий)
        “taxRate”: null,//ПДВ
        “type”: “online”,//тип оказания услуги (online, inclinic
        “visibleForOnlineBooking”: false,//доступна для записи с сайта
        “createDate”: “2019-04-01T23:35:30.79”,//дата создания
        “createAccountId”: 2// id автора
    },
]

Автосписання медикаментів на послуги:

{{host}}/api2/medicine/procedures

Приклад відповіді:

 

Склади:

{{host}}/api2/reports/store

Приклад відповіді:

{
        “id”: 1,//id склада
        “title”: “склад1”,//название склада
        “branchId”: 1,//id филиала к которому относится
        “isMainForBranch”: true //идентификатор “главного” склада филиала
    },

Пов`язані статті