Download OpenAPI specification:Download
Свои предложения и идеи о документации можно оставить в репозитории по адресу: https://github.com/Raiffeisen-DGTL/ecom-API/blob/master/fiscal.yaml
По закону от 22.05.2003 № 54–ФЗ "О применении контрольно-кассовой техники при осуществлении расчетов в Российской Федерации" при оплате товаров, работ или услуг необходимо формировать фискальный чек и отправлять его в налоговую с помощью кассы. Клиенты Райффайзенбанка, подключившие интернет-эквайринг, также могут воспользоваться услугой фискализации чеков через онлайн-кассу. Пошаговые инструкции приведены ниже.
Клиенты Райффайзенбанка, подключившие интернет-эквайринг, также могут воспользоваться услугой фискализации чеков через онлайн-кассу. Пошаговые инструкции приведены ниже.
Для получения данных по подключенной кассе в OFD.ru перейдите в раздел Ferma в личном кабинете клиента и пролистайте до виджета "Реквизиты доступа". Скопируйте логин, пароль и идентификатор группы ККТ для подключения. Эти данные понадобятся на следующем шаге.
Для фискализации чеков через партнёра Райффайзенбанк предоставляет API из следующих запросов:
Bзаимодействие осуществляется по протоколу HTTP с использованием методов POST, PUT, GET.
В описании каждого запроса явно указаны требуемые метод, адрес и параметры.
POST-запросы используют JSON-структуру, PUT- и GET-запросы работают со строками запросов.
Ответ любого метода возвращает HTTP-код. Если при обработке запроса происходит ошибка, API дополнительно возвращает ее описание.
Метод предназначен для создания нового чека прихода с указанным receiptNumber. Также позволяет обновить уже существующий чек прихода при повторном запросе с тем же receiptNumber. Метод возвращает тело чека, а также его тип и статус в дополнительных параметрах ответа.
Отправка чека по ФФД 1.2 не поддерживается для сервисов БИФИТ и Chekonline.
Если Вы хотите перейти с ФФД 1.05 на ФФД 1.2, то отправьте заявку в поддержку ecom@raiffeisen.ru
Authorization required | string |
receiptNumber required | string <A-Za-z0-9_-> <= 99 characters Уникальный номер чека. Создается на стороне мерчанта |
required | object Данные о покупателе |
required | Array of objects (ФФД 1.05) non-empty unique [ items ] Позиции чека |
Array of objects (платежи) non-empty unique [ items ] Данные об оплате | |
total required | number Итоговая сумма чека в рублях. Допустимо 8 символов для целой части и 2 символа для дробной |
receiptNumber | string <A-Za-z0-9_-> <= 99 characters Уникальный номер чека |
receiptType | string Enum: "SELL" "REFUND" Тип чека (чек прихода, чек возврата) |
status | string Enum: "NEW" "IN_PROGRESS" "DONE" "FAILED" "AWAITING" Статус регистрации чека |
object Данные о покупателе | |
Array of objects (ФФД 1.05) non-empty unique [ items ] Позиции чека | |
Array of objects (платежи) unique [ items ] Данные об оплате | |
total | number Итоговая сумма чека в рублях |
{- "receiptNumber": "3000827351831",
- "client": {
- "email": "customer@test.ru",
- "name": "Иванов Иван Иванович"
}, - "items": [
- {
- "name": "Шоколадные конфеты",
- "price": 1000,
- "quantity": 1.2,
- "amount": 1200,
- "paymentObject": "COMMODITY",
- "paymentMode": "FULL_PAYMENT",
- "measurementUnit": "кг",
- "nomenclatureCode": "00 00 00 01 00 21 FA 41 00 23 05 41 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 12 00 AB 00",
- "vatType": "VAT20"
}
], - "total": 1200
}
{- "receiptNumber": "3000827351831",
- "receiptType": "SELL",
- "status": "NEW",
- "client": {
- "email": "customer@test.ru",
- "name": "Иванов Иван Иванович"
}, - "items": [
- {
- "name": "Шоколадные конфеты",
- "price": 1000,
- "quantity": 1.2,
- "amount": 1200,
- "paymentObject": "COMMODITY",
- "paymentMode": "FULL_PAYMENT",
- "measurementUnit": "кг",
- "nomenclatureCode": "00 00 00 01 00 21 FA 41 00 23 05 41 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 12 00 AB 00",
- "vatType": "VAT20",
- "agentType": "ANOTHER",
- "supplierInfo": {
- "phone": "+79991234567",
- "name": "ООО «Ромашка»",
- "inn": "287381373424"
}
}
], - "payments": [
- {
- "type": "PREPAID",
- "amount": 1200
}
], - "total": 1200
}
Метод предназначен для отправки чека прихода на регистрацию в ОФД. Метод возвращает тело чека, а также его тип и статус в дополнительных параметрах ответа. После отправки чека на регистрацию он будет недоступен для редактирования.
receiptNumber required | string <= 99 characters Уникальный номер чека |
Authorization required | string |
receiptNumber | string <A-Za-z0-9_-> <= 99 characters Уникальный номер чека |
receiptType | string Enum: "SELL" "REFUND" Тип чека (чек прихода, чек возврата) |
status | string Enum: "NEW" "IN_PROGRESS" "DONE" "FAILED" "AWAITING" Статус регистрации чека |
object Данные о покупателе | |
Array of objects (ФФД 1.05) non-empty unique [ items ] Позиции чека | |
Array of objects (платежи) unique [ items ] Данные об оплате | |
total | number Итоговая сумма чека в рублях |
curl --location --request PUT 'https://test.ecom.raiffeisen.ru/api/fiscal/v1/receipts/sell/3000827351831' \ --header 'Authorization: Bearer eyJ0eXA***'
{- "receiptNumber": "3000827351831",
- "receiptType": "SELL",
- "status": "NEW",
- "client": {
- "email": "customer@test.ru",
- "name": "Иванов Иван Иванович"
}, - "items": [
- {
- "name": "Шоколадные конфеты",
- "price": 1000,
- "quantity": 1.2,
- "amount": 1200,
- "paymentObject": "COMMODITY",
- "paymentMode": "FULL_PAYMENT",
- "measurementUnit": "кг",
- "nomenclatureCode": "00 00 00 01 00 21 FA 41 00 23 05 41 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 12 00 AB 00",
- "vatType": "VAT20",
- "agentType": "ANOTHER",
- "supplierInfo": {
- "phone": "+79991234567",
- "name": "ООО «Ромашка»",
- "inn": "287381373424"
}
}
], - "payments": [
- {
- "type": "PREPAID",
- "amount": 1200
}
], - "total": 1200
}
Метод предназначен для получения актуального статуса чека прихода. Чек может принимать один из четырех статусов:
Метод возвращает тело чека, а также его тип и статус в дополнительных параметрах ответа.
receiptNumber required | string <= 99 characters Уникальный номер чека |
Authorization required | string |
receiptNumber | string <A-Za-z0-9_-> <= 99 characters Уникальный номер чека |
receiptType | string Enum: "SELL" "REFUND" Тип чека (чек прихода, чек возврата) |
status | string Enum: "NEW" "IN_PROGRESS" "DONE" "FAILED" "AWAITING" Статус регистрации чека |
object Данные о покупателе | |
Array of objects (ФФД 1.05) non-empty unique [ items ] Позиции чека | |
Array of objects (платежи) unique [ items ] Данные об оплате | |
total | number Итоговая сумма чека в рублях |
curl --location --request GET 'https://test.ecom.raiffeisen.ru/api/fiscal/v1/receipts/sell/3000827351831' \ --header 'Authorization: Bearer eyJ0eXA***'
{- "receiptNumber": "3000827351831",
- "receiptType": "SELL",
- "status": "NEW",
- "client": {
- "email": "customer@test.ru",
- "name": "Иванов Иван Иванович"
}, - "items": [
- {
- "name": "Шоколадные конфеты",
- "price": 1000,
- "quantity": 1.2,
- "amount": 1200,
- "paymentObject": "COMMODITY",
- "paymentMode": "FULL_PAYMENT",
- "measurementUnit": "кг",
- "nomenclatureCode": "00 00 00 01 00 21 FA 41 00 23 05 41 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 12 00 AB 00",
- "vatType": "VAT20",
- "agentType": "ANOTHER",
- "supplierInfo": {
- "phone": "+79991234567",
- "name": "ООО «Ромашка»",
- "inn": "287381373424"
}
}
], - "payments": [
- {
- "type": "PREPAID",
- "amount": 1200
}
], - "total": 1200
}
Метод предназначен для создания нового чека возврата с указанным receiptNumber. Также позволяет обновить уже существующий чек возврата при повторном запросе с тем же receiptNumber. Метод возвращает тело чека, а также его тип и статус в дополнительных параметрах ответа.
Отправка чека по ФФД 1.2 не поддерживается для сервисов БИФИТ и Chekonline.
Если Вы хотите перейти с ФФД 1.05 на ФФД 1.2, то отправьте заявку в поддержку ecom@raiffeisen.ru
Authorization required | string |
receiptNumber required | string <A-Za-z0-9_-> <= 99 characters Уникальный номер чека. Создается на стороне мерчанта |
required | object Данные о покупателе |
required | Array of objects (ФФД 1.05) non-empty unique [ items ] Позиции чека |
Array of objects (платежи) non-empty unique [ items ] Данные об оплате | |
total required | number Итоговая сумма чека в рублях. Допустимо 8 символов для целой части и 2 символа для дробной |
receiptNumber | string <A-Za-z0-9_-> <= 99 characters Уникальный номер чека |
receiptType | string Enum: "SELL" "REFUND" Тип чека (чек прихода, чек возврата) |
status | string Enum: "NEW" "IN_PROGRESS" "DONE" "FAILED" "AWAITING" Статус регистрации чека |
object Данные о покупателе | |
Array of objects (ФФД 1.05) non-empty unique [ items ] Позиции чека | |
Array of objects (платежи) unique [ items ] Данные об оплате | |
total | number Итоговая сумма чека в рублях |
{- "receiptNumber": "3000827351831",
- "client": {
- "email": "customer@test.ru",
- "name": "Иванов Иван Иванович"
}, - "items": [
- {
- "name": "Шоколадные конфеты",
- "price": 1000,
- "quantity": 1.2,
- "amount": 1200,
- "paymentObject": "COMMODITY",
- "paymentMode": "FULL_PAYMENT",
- "measurementUnit": "кг",
- "nomenclatureCode": "00 00 00 01 00 21 FA 41 00 23 05 41 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 12 00 AB 00",
- "vatType": "VAT20"
}
], - "total": 1200
}
{- "receiptNumber": "3000827351831",
- "receiptType": "SELL",
- "status": "NEW",
- "client": {
- "email": "customer@test.ru",
- "name": "Иванов Иван Иванович"
}, - "items": [
- {
- "name": "Шоколадные конфеты",
- "price": 1000,
- "quantity": 1.2,
- "amount": 1200,
- "paymentObject": "COMMODITY",
- "paymentMode": "FULL_PAYMENT",
- "measurementUnit": "кг",
- "nomenclatureCode": "00 00 00 01 00 21 FA 41 00 23 05 41 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 12 00 AB 00",
- "vatType": "VAT20",
- "agentType": "ANOTHER",
- "supplierInfo": {
- "phone": "+79991234567",
- "name": "ООО «Ромашка»",
- "inn":