- Created by Сергей, last modified by IntellectMoney on Feb 10, 2025
Общая информация
Данное API позволяет запросить реестр платежей, создавать, редактировать и деактивировать операции по расписанию. Взаимодействие между сервером IntellectMoney и клиентом API происходит по HTTP-протоколу.
Для того, чтобы иметь возможность совершать запросы описанные в этой документации, Вам необходимо иметь доступ к API (см. Получение доступа к API).
В методах коллекции, отправка запроса и обработка результат реализована на вкладках "Pre-request" и "Tests" соответственно. Данный подход позволяет подробно описать логику расчета подписей, формирования заголовков и параметров метода.ГОТОВЫЕ БИБЛИОТЕКИ
Для отладки функционала существует коллекция Postman, чтобы начать работу, необходимо указать свои данные в переменные коллекции IntellectMoney API.
Запрос к системе IntellectMoney
Данные при запросах на сервер IntellectMoney передаются в формате параметров HTTP-запроса в кодировке UTF-8 с типом контента "application/x-www-form-urlencoded".
В ответ данные по умолчанию возвращаются в формате XML. Что бы получить ответ в формате JSON нужно в заголовки запроса передать "Accept: text/json".
Ответ системы IntellectMoney на запросы
В ответ приходят два состояния запроса это <OperationState> и <Response>:
<OperationState> сообщает - смогла ли система IntellectMoney обработать данный запрос. Возможны три варианта:
- Система обработала запрос. Ответ типа <Response> будет содержать результат работы метода (синхронная обработка). ( Код операции - 0 )
- Система поставила запрос в очередь на обработку. Ответ типа <Response> будет содержать идентификатор операции, по которому можно запросить результат выполнения операции (асинхронная обработка). (Код операции - 1 )
- Система не смогла обработать запрос. Операция выполнена не будет. ( Код операции - 2 )
- <Response> сообщает статус запроса - был ли найден данный метод, все ли параметры переданы верно и так далее.
В случае, если какой-либо параметр будет передан не верно, в состоянии <Response> будет выведено сообщение об ошибке и параметр, который передан не корректно.
СЛОВАРЬ ТЕРМИНОВ
- СКО — Счет К Оплате, инвойс
Важно
Для доступа к API следует получить ключ доступа через операцию аутентификации клиента getUserToken. Данный ключ является обязательным параметром для всех операций API.
Для всех запросов к API используется метод curlRequest. Код данного метода можно посмотреть на странице Вспомогательные функции для взаимодействия с API системы IntellectMoney
ПОРЯДОК ВЫЗОВА МЕТОДОВ
getUserToken() — Аутентификация клиента API
Правило формирования заголовка Sign: Для запроса ключа доступа клиента к API необходимо отправить POST-запрос на следующий адрес URL: https://api.intellectmoney.ru/personal/user/getUserToken В запросе необходимо передать следующие параметры: Название Имя параметра Обязательный Описание Логин Login Да Логин пользователя юридического лица (магазина). Используется для входа в личный кабинет на странице: https://intellectmoney.ru/ru/. Пароль Password Да Пароль пользователя юридического лица (магазина). Используется для входа в личный кабинет на странице: https://intellectmoney.ru/ru/. Ответ типа <Response> будет содержать структуру <UserTokenData> В функции getToken() используются личные данные - логин и пароль для доступа в личный кабинет IntellectMoneyПередача параметров
::Login::Password::::signSecretKeyОтвет
Примеры
Общий вид предоставления данных
Post /personal/user/getUserToken HTTP/1.1
Host: api.intellectmoney.ru
Content-Type: application/x-www-form-urlencoded; charset=utf-8
Login = s.zhukov+2@intellectmoney.ru
Password = myPassword
<?xml version="1.0" encoding="utf-8"?>
<Response xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<OperationState>
<Code>0</Code>
<Desc>Успешно обработана</Desc>
</OperationState>
<OperationId>f2c33a48-17c8-4889-a327-5ad1b6260cd5</OperationId>
<EshopId>0</EshopId>
<Result>
<State>
<Code>0</Code>
<Desc>Успешно обработан.</Desc>
</State>
<UserToken>bs/fZNe0CE+b/Ze1xvVaNdEbjxm2wkRqMBSnBXJO9nFeEM57Hg17+AS8nF0Cs7+0</UserToken>
</Result>
</Response>
Пример кода на языке программирования PHP
function getToken(){
$urlGetToken = "https://api.intellectmoney.ru/personal/user/getUserToken";
$data = array(
"Login" => "s.zhukov@intellectmoney.ru",
"Password" => "myPassword"
);
$requestResult = curlRequest($urlGetToken, $data, true);
$result = simplexml_load_string($requestResult);
$userToken = $result->Result->UserToken;
return (string)$userToken;
}
GETINVOICESHISTORY() — ПОЛУЧЕНИЕ РЕЕСТРА ПЛАТЕЖЕЙ
Передача параметров
Правило формирования заголовка Sign: UserToken::Skip::Take::EshopId::InvoiceId::DateFrom::DateTo::ChangeDateFrom::ChangeDateTo::IncludePaymentTransactions::IsHoldingSearch::OrganizationId::OwnerEmail::WithRefunds::signSecretKey
Для запроса реестра платежей необходимо отправить POST-запрос на следующий адрес URL:
https://api.intellectmoney.ru/personal/payment/getInvoicesHistory
В запросе необходимо передать следующие параметры:
Название | Имя параметра | Обязательный | Описание |
|---|---|---|---|
| Ключ доступа | UserToken | Да | Ключ доступа клиента к API, запрашиваемый операцией аутентификации клиента getUserToken. |
ID магазина | EshopId | Нет | Номер магазина в системе IntellectMoney, по которому запрашивается реестр. Можно увидеть на странице https://intellectmoney.ru/ru/enter/ps_organization_shop/ в столбце "ID". |
ID организации | OrganizationId | Нет | Номер организации в системе IntellectMoney, по которому запрашивается информация. Это номер заявления о присоединении. Если параметр передан - будет производить поиск в рамках указанной организации. |
Статус СКО | State | Нет | Запрос реестра платежей только с указанным статусом СКО (см. <InvoiceState>) |
| Номер СКО | InvoiceId | Нет | Запрос информации только по одному СКО по его номеру |
| Включает транзакции по СКО в выборку | IncludePaymentTransactions | Нет | Тип boolean. При передаче значения true в выборку будут включены все транзакции по СКО: транзакции пополнения СКО, транзакции пополнения счета магазина, транзакции возврата (при возврате) |
| Тип операции | IsHoldingSearch | Нет | Флаг, указывающий на поиск по организациям холдинга:
Если флаг включен:
|
| Email пользователя (покупателя) | OwnerEmail | Нет | Будут выбраны только те СКО, в которых был указан данный email. Максимальная длина – 100 символов |
| Указывает порядок сортировки | SortOrder | Нет | Данный порядок отвечает за сортировку данных перед выдачей. Принимаемые значения описаны в таблице Тип сортировки счетов |
| Дата начала выборки создания СКО | DateFrom | Нет | В выборку попадут все СКО, у которых дата создания входит в данный диапазон. Значения параметров передавать в формате ДД.ММ.ГГГГ. |
Дата окончания выборки создания СКО | DateTo | Нет | |
Дата начала выборки изменения СКО | ChangeDateFrom | Нет | В выборку попадут все СКО, у которых дата изменения входит в данный диапазон. Значения параметров передавать в формате ДД.ММ.ГГГГ. |
Дата окончания выборки изменения СКО | ChangeDateTo | Нет | |
| Ограничение выборки по количеству объектов | Skip | Нет | Количество объектов, пропускаемых перед отдачей |
| Ограничение выборки по количеству объектов | Take | Да | Ограничение на количество возвращаемых объектов. |
| Только СКО по которым были возвраты | WithRefunds | Нет | В выборку попадут только СКО по которым были возвраты. |
Использование параметров
При выборке данных используется конъюнкция параметров. Например, в случае, если переданы параметры "Статус СКО" и "Номер СКО", то результат запрос вернет объект СКО только при его наличии с переданными номером и статусом.
Ответ
Ответ типа <Response> будет содержать структуру <InvoicesHistoryList>
Примеры
Общий вид предоставления данных
Post /personal/payment/getInvoicesHistory HTTP/1.1 Host: api.intellectmoney.ru Content-Type: application/x-www-form-urlencoded; charset=utf-8 userToken = bs/fZNe0CE+b/Ze1xvVaNdEbjxm2wkRqMBSnBXJO9nFeEM57Hg17+AS8nF0Cs7+0 eshopId = 450063 dateTo = 15.07.2017 take = 10 invoiceId = 3930949846 IncludePaymentTransactions = true
<?xml version="1.0" encoding="utf-8"?>
<Response xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<OperationState>
<Code>0</Code>
<Desc>Успешно обработана</Desc>
</OperationState>
<OperationId>50a55d0c-a754-47ca-b355-56362cf52a98</OperationId>
<EshopId>0</EshopId>
<Result>
<State>
<Code>0</Code>
<Desc>Успешно обработан.</Desc>
</State>
<InvoicesHistoryList>
<InvoiceData>
<Id>3930949846</Id>
<State>Paid</State>
<HoldModeFlag>false</HoldModeFlag>
<ChangeDate>2017-06-02T10:12:00.457</ChangeDate>
<CreationDate>2017-06-02T10:11:03.383</CreationDate>
<ExpirationDate>0001-01-01T00:00:00</ExpirationDate>
<Amount>
<Amount>11.0000</Amount>
<Currency>RUB</Currency>
</Amount>
<CurrentAmount>
<Amount>0.0000</Amount>
<Currency>RUB</Currency>
</CurrentAmount>
<SurchargeAmount>
<Amount>0</Amount>
<Currency>RUB</Currency>
</SurchargeAmount>
<AdditionalInfo>
<KeyValue>
<Key>Магазин</Key>
<Value xsi:type="xsd:string">ShopReal</Value>
</KeyValue>
<KeyValue>
<Key>Url</Key>
<Value xsi:type="xsd:string">http://yandex.ru</Value>
</KeyValue>
</AdditionalInfo>
<HistoryList>
<HistoryData>
<Id>27907531</Id>
<PaymentNumber>2036160602</PaymentNumber>
<State>Confirm</State>
<CreationDate>2017-09-22T17:30:01.04</CreationDate>
<PaymentAmount>
<Amount>11.0000</Amount>
<Currency>RUB</Currency>
</PaymentAmount>
<RecipientAmount>
<Amount>11.0000</Amount>
<Currency>RUB</Currency>
</RecipientAmount>
<PaymentAccount>IMOUT4936010998</PaymentAccount>
<RecipientAccount>IM1028693534</RecipientAccount>
<Comment>Возврат по ордеру 538</Comment>
<Description>Внутренний на s.suvorinov@intellectmoney.ru</Description>
<Direction>Withdraw</Direction>
<PurchaseOrderId>123456789000</PurchaseOrderId>
<AdditionalInfo />
<InvoicePaymentType>Refund</InvoicePaymentType>
<InvoiceId>3930949846</InvoiceId>
<IsElectedPayment>false</IsElectedPayment>
<TypeOfRePayment xsi:nil="true" />
<ProviderId xsi:nil="true" />
<CatalogPaymentId>0</CatalogPaymentId>
<ShortPan />
<Country />
<UserEmail>s.suvorinov@intellectmoney.ru</UserEmail>
</HistoryData>
<HistoryData>
<Id>27905689</Id>
<PaymentNumber>2036150166</PaymentNumber>
<State>Confirm</State>
<CreationDate>2017-06-02T10:12:00.517</CreationDate>
<PaymentAmount>
<Amount>11.0000</Amount>
<Currency>RUB</Currency>
</PaymentAmount>
<RecipientAmount>
<Amount>10.6200</Amount>
<Currency>RUB</Currency>
</RecipientAmount>
<PaymentAccount>Счет к оплате 3930949846</PaymentAccount>
<RecipientAccount>IM4406528006</RecipientAccount>
<Description>Зачисление денежных средств на счет магазина "ShopReal" со счета "3930949846"</Description>
<Direction>Withdraw</Direction>
<PurchaseOrderId>123456789000</PurchaseOrderId>
<AdditionalInfo />
<InvoicePaymentType>Purchase</InvoicePaymentType>
<InvoiceId>3930949846</InvoiceId>
<IsElectedPayment>false</IsElectedPayment>
<TypeOfRePayment xsi:nil="true" />
<ProviderId xsi:nil="true" />
<CatalogPaymentId>0</CatalogPaymentId>
<ShortPan />
<Country />
<UserEmail>s.suvorinov@intellectmoney.ru</UserEmail>
</HistoryData>
<HistoryData>
<Id>27905686</Id>
<PaymentNumber>2036150165</PaymentNumber>
<State>Confirm</State>
<CreationDate>2017-06-02T10:11:20.767</CreationDate>
<PaymentAmount>
<Amount>11.1100</Amount>
<Currency>RUB</Currency>
</PaymentAmount>
<RecipientAmount>
<Amount>11.0000</Amount>
<Currency>RUB</Currency>
</RecipientAmount>
<PaymentAccount>IM1028693534</PaymentAccount>
<RecipientAccount>Счет к оплате 3930949846</RecipientAccount>
<Comment />
<Description>Пополнение счета № "3930949846" через "IM1028693534"</Description>
<Direction>Deposit</Direction>
<PurchaseOrderId>123456789000</PurchaseOrderId>
<AdditionalInfo />
<InvoicePaymentType>Entry</InvoicePaymentType>
<InvoiceId>3930949846</InvoiceId>
<IsElectedPayment>false</IsElectedPayment>
<TypeOfRePayment xsi:nil="true" />
<ProviderId xsi:nil="true" />
<CatalogPaymentId>0</CatalogPaymentId>
<InputType>InnerPayment</InputType>
<ShortPan />
<Country />
<UserEmail>s.suvorinov@intellectmoney.ru</UserEmail>
</HistoryData>
</HistoryList>
<OwnerEmail>s.suvorinov@intellectmoney.ru</OwnerEmail>
<OwnerFIO>Суворинов Сергей</OwnerFIO>
<PurchaseOrderId>123456789000</PurchaseOrderId>
<PurchaseData>
<Id>36007</Id>
<PurchaseMoney>
<Amount>11.0000</Amount>
<Currency>RUB</Currency>
</PurchaseMoney>
<OrderId>123456789000</OrderId>
<BackUrl>http://google.com/backurl</BackUrl>
<SuccessMethod xsi:nil="true" />
<FailMethod xsi:nil="true" />
<EshopId>450063</EshopId>
<EshopUrl>http://yandex.ru</EshopUrl>
<EshopName>ShopReal</EshopName>
<SMSEnable>true</SMSEnable>
<UserName>Суворинов Сергей</UserName>
<UserEmail>s.suvorinov@intellectmoney.ru</UserEmail>
<IsHeldByEshop>true</IsHeldByEshop>
<ParseUserFields />
</PurchaseData>
<IsCanEnrollmentByDisabledMethod>false</IsCanEnrollmentByDisabledMethod>
<InvoiceChangeAmountHistoryData />
<OriginalAmount>
<Amount>11.0000</Amount>
<Currency>RUB</Currency>
</OriginalAmount>
<FormType>None</FormType>
<OrganizationName>Маша и Медведи</OrganizationName>
<IsHaveCashboxReceipts>false</IsHaveCashboxReceipts>
</InvoiceData>
</InvoicesHistoryList>
</Result>
</Response>
Пример кода на языке программирования PHP
Для получения списка СКО на языке PHP, Вам надо воспользоваться функцией getToken() из пункта "getUserToken - Аутентификация пользователя API" и функцией curlRequest() из документации: Вспомогательные функции для взаимодействия с API системы IntellectMoney
$userToken = getToken();
$data = array(
'UserToken' => $userToken,
'EshopId' => 455551,
'DateFrom' => "10.10.2017",
'DateTo' => "10.10.2018",
'Skip' => 0,
'Take' => 10,
);
$request = curlRequest('https://api.intellectmoney.ru/personal/payment/getInvoicesHistory', $data);
$result = simplexml_load_string($request);
GETPAYMENTSHISTORY() — ПОЛУЧЕНИЕ ИСТОРИИ ОПЕРАЦИЙ
Передача параметров
Правило формирования заголовка Sign: UserToken::Skip::Take::EshopId::DateFrom::DateTo::PaymentTransactionId::signSecretKey
Для запроса реестра платежей необходимо отправить POST-запрос на следующий адрес URL:
https://api.intellectmoney.ru/personal/payment/getPaymentsHistory
В запросе необходимо передать следующие параметры:
Название | Имя параметра | Обязательный | Описание |
|---|---|---|---|
| Ключ доступа | UserToken | Да | Ключ доступа клиента к API, запрашиваемый операцией аутентификации клиента getUserToken. |
ID магазина | EshopId | Нет | Номер магазина в системе IntellectMoney, по которому запрашивается история операций. Можно увидеть на странице https://intellectmoney.ru/ru/enter/ps_organization_shop/ в столбце "ID". |
| Номер транзакции | PaymentTransactionId | Нет | Запрос информации только по одной транзакции. |
| Дата начала выборки | DateFrom | Нет | В выборку попадут все операции, у которых дата создания входит в данный диапазон. Значения параметров передавать в формате ДД.ММ.ГГГГ. |
Дата окончания выборки | DateTo | Нет | |
| Ограничение выборки по количеству объектов | Skip | Нет | Количество объектов, пропускаемых перед отдачей |
| Ограничение выборки по количеству объектов | Take | Да | Ограничение на количество возвращаемых объектов. |
Использование параметров
При выборке данных используется конъюнкция параметров. Например, в случае, если переданы параметры "EshopId" и "DateFrom", то в ответе будет объект историй операций только принадлежащих магазину EshopId, у которых дата создания больше DateFrom
Ответ
Ответ типа <Response> будет содержать структуру <PaymentsHistoryList>
Примеры
Общий вид предоставления данных
Post /personal/payment/getPaymentsHistory HTTP/1.1 Host: api.intellectmoney.ru Content-Type: application/x-www-form-urlencoded; charset=utf-8 userToken = bs/fZNe0CE+b/Ze1xvVaNdEbjxm2wkRqMBSnBXJO9nFeEM57Hg17+AS8nF0Cs7+0 eshopId = 450063 dateTo = 15.07.2017 take = 10
<?xml version="1.0" encoding="utf-8"?>
<Response
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<OperationState>
<Code>0</Code>
<Desc>Успешно обработана</Desc>
</OperationState>
<OperationId>ce5d15c8-32d7-4574-9eb7-1fda5aa5f364</OperationId>
<EshopId>0</EshopId>
<Result>
<State>
<Code>0</Code>
<Desc>Успешно обработан.</Desc>
</State>
<PaymentsHistoryList>
<HistoryData>
<Id>27929458</Id>
<PaymentNumber>2036299552</PaymentNumber>
<State>Confirm</State>
<CreationDate>2018-07-25T11:14:49</CreationDate>
<PaymentAmount>
<Amount>500.0000</Amount>
<Currency>RUB</Currency>
</PaymentAmount>
<RecipientAmount>
<Amount>484.0000</Amount>
<Currency>RUB</Currency>
</RecipientAmount>
<PaymentAccount>Счет к оплате 3158334217</PaymentAccount>
<RecipientAccount>IM4406528006</RecipientAccount>
<Description>Зачисление денежных средств на счет магазина "ShopReal" со счета "3158334217"</Description>
<Direction>Deposit</Direction>
<PurchaseOrderId>3_43030</PurchaseOrderId>
<AdditionalInfo />
<InvoicePaymentType>Purchase</InvoicePaymentType>
<InvoiceId>3158334217</InvoiceId>
<IsElectedPayment>false</IsElectedPayment>
<TypeOfRePayment xsi:nil="true" />
<ProviderId xsi:nil="true" />
<CatalogPaymentId>0</CatalogPaymentId>
<ShortPan />
<Country />
<UserEmail>s.suvorinov+10@intellectmoney.ru</UserEmail>
<ServiceName>Тестирование отправки 2-х писем при частичной оплате</ServiceName>
</HistoryData>
<HistoryData>
<Id>27929455</Id>
<PaymentNumber>2036299551</PaymentNumber>
<State>Confirm</State>
<CreationDate>2018-07-25T11:14:42.983</CreationDate>
<PaymentAmount>
<Amount>500.0000</Amount>
<Currency>RUB</Currency>
</PaymentAmount>
<RecipientAmount>
<Amount>500.0000</Amount>
<Currency>RUB</Currency>
</RecipientAmount>
<PaymentAccount>Эквайринг</PaymentAccount>
<RecipientAccount>Счет к оплате 3158334217</RecipientAccount>
<Description>Пополнение счета № "3158334217" через "Эквайринг"</Description>
<Direction>Deposit</Direction>
<PurchaseOrderId>3_43030</PurchaseOrderId>
<AdditionalInfo />
<InvoicePaymentType>Entry</InvoicePaymentType>
<InvoiceId>3158334217</InvoiceId>
<IsElectedPayment>false</IsElectedPayment>
<TypeOfRePayment xsi:nil="true" />
<ProviderId xsi:nil="true" />
<CatalogPaymentId>0</CatalogPaymentId>
<InputType>Acquiring</InputType>
<ShortPan />
<Country />
<Bank>Промсвязьбанк</Bank>
<IPAdress>10.70.13.101 </IPAdress>
<UserEmail>s.suvorinov+10@intellectmoney.ru</UserEmail>
<ServiceName>Тестирование отправки 2-х писем при частичной оплате</ServiceName>
<CardHolder />
</HistoryData>
<HistoryData>
<Id>27929489</Id>
<PaymentNumber>2036299565</PaymentNumber>
<State>Confirm</State>
<CreationDate>2018-07-25T11:20:31.123</CreationDate>
<PaymentAmount>
<Amount>0.0100</Amount>
<Currency>RUB</Currency>
</PaymentAmount>
<RecipientAmount>
<Amount>0.0100</Amount>
<Currency>RUB</Currency>
</RecipientAmount>
<PaymentAccount>3100011</PaymentAccount>
<RecipientAccount>IM4406528006</RecipientAccount>
<Comment>Возврат комиссии по заявке 707, инвойс 3158334217, транзакция 2036299553</Comment>
<Description>Возврат комиссии по заявке 707, инвойс 3158334217, транзакция 2036299553</Description>
<Direction>Deposit</Direction>
<PurchaseOrderId>3_43030</PurchaseOrderId>
<AdditionalInfo />
<InvoicePaymentType>Refund</InvoicePaymentType>
<InvoiceId>3158334217</InvoiceId>
<IsElectedPayment>false</IsElectedPayment>
<TypeOfRePayment xsi:nil="true" />
<ProviderId xsi:nil="true" />
<CatalogPaymentId>0</CatalogPaymentId>
<ShortPan />
<Country />
<UserEmail>s.suvorinov+10@intellectmoney.ru</UserEmail>
<ServiceName>Тестирование отправки 2-х писем при частичной оплате</ServiceName>
</HistoryData>
Пример кода на языке программирования PHP
Для получения историй операций на языке PHP, Вам надо воспользоваться функцией getToken() из пункта "getUserToken - Аутентификация пользователя API" и функцией curlRequest() из документации: Вспомогательные функции для взаимодействия с API системы IntellectMoney
$userToken = getToken();
$data = array(
'UserToken' => $userToken,
'EshopId' => 455551,
'DateFrom' => "10.10.2017",
'DateTo' => "10.10.2018",
'Skip' => 0,
'Take' => 10,
);
$request = curlRequest('https://api.intellectmoney.ru/personal/payment/getPaymentsHistory', $data);
$result = simplexml_load_string($request);
SetScheduledOperation() — СОЗДАНИЕ, РЕДАКТИРОВАНИЕ ОПЕРАЦИЙ ПО РАСПИСАНИЮ
Передача параметров
Правило формирования заголовка Sign: Для создания или редактирования операций по расписанию необходимо отправить POST-запрос на следующий адрес URL: Операцию по расписанию можно создавать когда, в уведомлении о платеже параметр reccurringState пришел в состоянии "Activated", подробнее об уведомлениях написано тут: Уведомления при работе с операциями по расписанию от системы IntellectMoneyUserToken::::::Operation::ObjectId::ObjectTypeVal::ParamsJson::RepeatPlan::RetryOnFailPlan::RetryOnFailCount::IsSingle::FireOnSkip::State::::::EndExecDate::signSecretKey
https://api.intellectmoney.ru/personal/scheduler/setScheduledOperationData
Название | Имя параметра | Обязательный | Описание |
|---|---|---|---|
| Ключ доступа | UserToken | Да | Ключ доступа клиента к API, запрашиваемый операцией аутентификации клиента getUserToken. |
Номер операции | Operation | Нет | Номер операции. Используется для редактирования операции, если не передать - создается новая операция (GUID). Данный параметр возвращается в ответе на запрос к методу SetScheduledOperation(). |
Объект операции | ObjectId | Да | Номер исходного СКО или объект операции, к которому привязывается операция, например: Получить номер исходного СКО можно из метода CreateInvoice, при создании такого СКО или в уведомлении по счету в форме оповещения о платеже. |
| Тип операции | ObjectTypeVal | Да | Тип регулярной операции, принием значение:
|
| Параметры | ParamsJson | Да | Дополнительные JSON-параметры для счетов, создаваемых операцией по расписанию. Структура данного параметра описана здесь. |
| План выполнения | RepeatPlan | Нет | Периодичность (регулярность) выполнения операции. JSON. Содержит дату начала выполнения и период между списаниями. Пример значения параметра: В примере, первое списание будет в 18:50 22 ноя 2023, последующие списания раз в 30 дней. Допустимые значения PeriodType: Day, Week, Month Запуск по требованию. Если параметр не передан или передан с пустым значением, то план выполнения отменяется, операция запускается один раз текущей датой и временем, после чего статус операции меняется на "Выключен". |
| План повторов выполнения | RetryOnFailPlan | Да, если передан RepeatPlan | Периодичность (регулярность) повторных попыток выполнения операции при ошибке. В примерах, в случае когда изначальная попытка списания была неудачной, каждые 5 минут будет производиться повторная попытка. Количество попыток указывается в поле RetryOnFailCount. Можно передавать в двух различных форматах: JSON. Повторный запуск через 5 минут реализуется так: Допустимые значения PeriodType: Minute, Hour, Day, Week, Month Если параметр RepeatPlan не передан, данный параметр игнорируется. |
| Количество повторов выполнения | RetryOnFailCount | Да, если передан RepeatPlan | Количество повторных попыток выполнения (целое число). Если операцию не удалось выполнить с первого раза, она будет повторятся с периодичностью указанно в параметре RetryOnFailPlan не более чем RetryOnFailCount. Если параметр RepeatPlan не передан, данный параметр игнорируется. |
| Многопоточность | IsSingle | Да, если передан RepeatPlan | Флаг, указывающий возможность запуска параллельных тасков:
Если параметр RepeatPlan не передан, данный параметр игнорируется. |
| Перезапуск | FireOnSkip | Да, если передан RepeatPlan | Флаг, указывающий необходимость создания всех запланированных задач, в случае их непредвиденного пропуска:
Если параметр RepeatPlan не передан, данный параметр игнорируется. |
| Активность | State | Да | Флаг, указывающий статус активности:
|
| Дата окончания | EndExecDate | Да, если передан RepeatPlan | Дата окончания выполнения операций по расписанию. По достижению данной даты, операция по расписанию выполняться не будет. Параметр State (активность) примет значение 1 - выключен. Передаётся в формате ДД.ММ.ГГГГ. Если параметр RepeatPlan не передан, данный параметр игнорируется. |
Ответ типа <Response> будет содержать структуру <SetScheduledOperationData>
Примеры
Общий вид предоставления данных
Post /personal/scheduler/SetScheduledOperationData
HTTP/1.1 Host: api.intellectmoney.ru
Content-Type: application/x-www-form-urlencoded; charset=utf-8
UserToken = 9WUoI8gEQndN%2BI97MGA4vxIiPZs2v32MxyJS7%2FGDxegOLFXcBQy4fUfCqt6NURzV
Object = 3496318551
ObjectTypeVal = 1
ParamsJson = { "Amount": 10.00 }
RepeatPlan = 0 0 12 1/4 * ? *
RetryOnFailPlan = 0 0/15 * 1/1 * ? *
RetryOnFailCount = 3
IsSingle = 0
FireOnSkip = 1
State = 0
EndExecDate = 01.01.2025
Response xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <OperationState> <Code>0</Code> <Desc>Успешно обработана</Desc> </OperationState> <OperationId>b294b231-9a77-427a-9866-f111e4c88515</OperationId> <EshopId>0</EshopId> <Result> <State> <Code>0</Code> <Desc>Успешно обработан.</Desc> </State> <ScheduledOperation> <CronOperationId>ece5b08a-8951-4739-8d71-ee589676bcd2</CronOperationId> <ObjectId>3496318551</ObjectId> <CronOperationType>Recurring</CronOperationType> <CreationDate>2017-10-19T16:44:07.3796978+03:00</CreationDate> <ChangeDate>2017-10-19T16:44:07.3953063+03:00</ChangeDate> <EndExecDate>2017-12-12T00:00:00</EndExecDate> <LastExecDate>2017-10-19T16:44:07.3796978+03:00</LastExecDate> <NextExecDate>2017-10-20T12:00:00+03:00</NextExecDate> <RepeatPlan>0 0 12 1/4 * ? *</RepeatPlan> <RetryOnFailPlan>0 0/15 * 1/1 * ? *</RetryOnFailPlan> <RetryOnFailCount>3</RetryOnFailCount> <FireOnSkip>true</FireOnSkip> <IsSingle>true</IsSingle> <CronOperationState>Disable</CronOperationState> </ScheduledOperation> </Result> </Response>
Пример кода на языке программирования PHP
Для создания операции по расписанию на языке PHP, Вам надо воспользоваться функцией getToken() из пункта "getUserToken - Аутентификация пользователя API" и функцией curlRequest() из документации: Вспомогательные функции для взаимодействия с API системы IntellectMoney
$userToken = getToken();
$data = array(
'UserToken' => $userToken,
'Operation' => null
'ObjectId' => 3496318551,
'ObjectTypeVal' => 1,
'ParamsJson' => '{ "Amount": 10.00 }',
'RepeatPlan' => "0 0 12 1/4 * ? *",
'RetryOnFailPlan' => "0 0/15 * 1/1 * ? *",
'RetryOnFailCount' => 3,
'IsSingle' => 0,
'FireOnSkip' => 1,
'State' => 0,
'EndExecDate' => "01.01.2025"
);
$request = curlRequest('https://api.intellectmoney.ru/personal/scheduler/setScheduledOperationData', $data);
$result = simplexml_load_string($request);
GetScheduledOperation() — ПОЛУЧЕНИЕ СПИСКА ОПЕРАЦИЙ ПО РАСПИСАНИЮ
Передача параметров
Правило формирования заголовка Sign: UserToken::Skip::Take::Operation::ObjectId::ObjectTypeVal::ParamsJson::RepeatPlan::RetryOnFailPlan::RetryOnFailCount::IsSingle::FireOnSkip::State::DateFrom::DateTo::::signSecretKey
Для получения списка операций по расписанию необходимо отправить POST-запрос на следующий адрес URL:
https://api.intellectmoney.ru/personal/scheduler/getScheduledOperationData
Название | Имя параметра | Обязательный | Описание |
|---|---|---|---|
| Ключ доступа | UserToken | Да | Ключ доступа клиента к API, запрашиваемый операцией аутентификации клиента getUserToken. |
| Количество пропускаемых объектов | Skip | Нет | Количество объектов, пропускаемых перед отдачей. Для значения 10, пропустит первые 10 записей и выведет Take записей начиная с 10 (нумерация начинается с 0). |
| Ограничение выборки по количеству объектов | Take | Да | Ограничение на количество возвращаемых объектов. Для значения 10, пропустит первые Skip записей и выведет 10 элементов. |
Номер операции | Operation | Нет | Номер операции. Данный параметр возвращается в ответе на запрос к методу SetScheduledOperation(). |
Объект операции | ObjectId | Нет | Номер исходного СКО или объект операции, к которому привязывается операция, например: Получить номер исходного СКО можно из метода CreateInvoice, при создании такого СКО или в уведомлении по счету в форме оповещения о платеже. |
| Тип операции | ObjectTypeVal | Нет | Тип регулярной операции, принием значение:
|
| Параметры | ParamsJson | Нет | Дополнительные JSON-параметры для счетов, создаваемых операцией по расписанию. Структура данного параметра описана здесь. |
| План выполнения | RepeatPlan | Нет | Периодичность (регулярность) выполнения операции. JSON. Содержит дату начала выполнения и период между списаниями. Пример значения параметра: В примере, первое списание будет в 18:50 22 ноя 2023, последующие списания раз в 30 дней. Допустимые значения PeriodType: Day, Week, Month |
| План повторов выполнения | RetryOnFailPlan | Нет | Периодичность (регулярность) повторных попыток выполнения операции при ошибке. В примерах, в случае когда изначальная попытка списания была неудачной, каждые 5 минут будет производиться повторная попытка. Количество попыток указывается в поле RetryOnFailCount. Можно передавать в двух различных форматах: JSON. Повторный запуск через 5 минут реализуется так: Допустимые значения PeriodType: Minute, Hour, Day, Week, Month |
| Количество повторов выполнения | RetryOnFailCount | Нет | Количество повторных попыток выполнения (целое число). Если операцию не удалось выполнить с первого раза, она будет повторятся с периодичностью указанно в параметре RetryOnFailPlan не более чем RetryOnFailCount. |
| Многопоточность | IsSingle | Нет | Флаг, указывающий возможность запуска параллельных тасков:
|
| Перезапуск | FireOnSkip | Нет | Флаг, указывающий необходимость создания всех запланированных задач, в случае их непредвиденного пропуска:
|
| Активность | State | Нет | Флаг, указывающий статус активности:
|
| Дата начала выборки | DateFrom | Нет | Пограничные значения даты изменения расписания ДД.ММ.ГГГГ. |
| Дата окончания выборки | DateTo | Нет | Пограничные значения даты изменения расписания ДД.ММ.ГГГГ. |
Ответ
Ответ типа <Response> будет содержать структуру <GetScheduledOperationData>
Примеры
Общий вид предоставления данных
Post /personal/scheduler/GetScheduledOperationData HTTP/1.1 Host: api.intellectmoney.ru Content-Type: application/x-www-form-urlencoded; charset=utf-8 UserToken = 9WUoI8gEQndN%2BI97MGA4vxIiPZs2v32MxyJS7%2FGDxegOLFXcBQy4fUfCqt6NURzV Skip = 0 Take = 3 DateFrom = 10.10.2017 DateTo = 10.10.2018
Response xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<OperationState>
<Code>0</Code>
<Desc>Успешно обработана</Desc>
</OperationState>
<OperationId>0670c93d-7fd7-4240-822b-b62e55cf070c</OperationId>
<EshopId>0</EshopId>
<Result>
<State>
<Code>0</Code>
<Desc>Успешно обработан.</Desc>
</State>
<ScheduledOperationList>
<ScheduledOperationData>
<CronOperationId>6529bef0-3b44-49f6-9ab9-6c4643fd8027</CronOperationId>
<ObjectId>3028460763</ObjectId>
<CronOperationType>Recurring</CronOperationType>
<Params>{"Amount":"15"}</Params>
<CreationDate>2017-10-19T16:44:07.3796978</CreationDate>
<ChangeDate>2017-10-19T16:44:07.3953063</ChangeDate>
<EndExecDate>2017-12-12T00:00:00</EndExecDate>
<LastExecDate>2017-10-19T16:44:07.3796978</LastExecDate>
<NextExecDate>2017-10-20T12:00:00</NextExecDate>
<RepeatPlan>0 0 12 1/1 * ? *</RepeatPlan>
<RetryOnFailPlan>0 0/15 * 1/1 * ? *</RetryOnFailPlan>
<RetryOnFailCount>3</RetryOnFailCount>
<FireOnSkip>false</FireOnSkip>
<IsSingle>true</IsSingle>
<CronOperationState>Disable</CronOperationState>
</ScheduledOperationData>
<ScheduledOperationData>
<CronOperationId>9da1c831-f615-4217-a2b7-5c19927cd321</CronOperationId>
<ObjectId>3028460763</ObjectId>
<CronOperationType>Recurring</CronOperationType>
<Params>{"Amount":"15"}</Params>
<CreationDate>2017-10-19T16:51:36.7057137</CreationDate>
<ChangeDate>2017-10-19T16:51:36.7057137</ChangeDate>
<EndExecDate>2017-12-12T00:00:00</EndExecDate>
<LastExecDate>2017-10-19T16:51:36.7057137</LastExecDate>
<NextExecDate>2017-10-20T12:00:00</NextExecDate>
<RepeatPlan>0 0 12 1/1 * ? *</RepeatPlan>
<RetryOnFailPlan>0 0/15 * 1/1 * ? *</RetryOnFailPlan>
<RetryOnFailCount>3</RetryOnFailCount>
<FireOnSkip>false</FireOnSkip>
<IsSingle>true</IsSingle>
<CronOperationState>Disable</CronOperationState>
</ScheduledOperationData>
<ScheduledOperationData>
<CronOperationId>b72025bc-1723-4866-9c32-027e23f68544</CronOperationId>
<ObjectId>3028460763</ObjectId>
<CronOperationType>Recurring</CronOperationType>
<Params>{"Amount":"15"}</Params>
<CreationDate>2017-10-19T16:58:25.2139727</CreationDate>
<ChangeDate>2017-10-19T16:58:25.2139727</ChangeDate>
<EndExecDate>2017-12-12T00:00:00</EndExecDate>
<LastExecDate>2017-10-19T16:58:25.2139727</LastExecDate>
<NextExecDate>2017-10-20T12:00:00</NextExecDate>
<RepeatPlan>0 0 12 1/1 * ? *</RepeatPlan>
<RetryOnFailPlan>0 0/15 * 1/1 * ? *</RetryOnFailPlan>
<RetryOnFailCount>3</RetryOnFailCount>
<FireOnSkip>false</FireOnSkip>
<IsSingle>true</IsSingle>
<CronOperationState>Disable</CronOperationState>
</ScheduledOperationData>
</ScheduledOperationList>
</Result>
</Response>
Пример кода на языке программирования PHP
Для создания операции по расписанию на языке PHP, Вам надо воспользоваться функцией getToken() из пункта "getUserToken - Аутентификация пользователя API" и функцией curlRequest() из документации: Вспомогательные функции для взаимодействия с API системы IntellectMoney
$userToken = getToken();
$data = array(
'UserToken' => $userToken,
'Skip' => 0,
'Take' => 3,
'Operation' => null,
'ObjectId' => null,
'ObjectTypeVal' => null,
'ParamsJson' => null,
'RepeatPlan' => null,
'RetryOnFailPlan' => null,
'RetryOnFailCount' => null,
'FireOnSkip' => null,
'IsSingle' => null,
'State' => null,
'DateFrom' => "10.10.2017",
'DateTo' => "10.10.2018",
);
$request = curlRequest('https://api.intellectmoney.ru/personal/scheduler/getScheduledOperationData', $data);
$result = simplexml_load_string($request);
echo $result->Result->ScheduledOperationList->ScheduledOperationData->CronOperationId;
Deactivate() — ДЕАКТИВАЦИЯ ОПЕРАЦИЙ ПО РАСПИСАНИЮ
Передача параметров
Правило формирования заголовка Sign: UserToken::SourceInvoiceId::signSecretKey
Для деактивации операций по расписанию необходимо отправить POST-запрос на следующий адрес URL:
https://api.intellectmoney.ru/personal/recurring/deactivate
Название | Имя параметра | Обязательный | Описание |
|---|---|---|---|
| Ключ доступа | UserToken | Да | Ключ доступа клиента к API, запрашиваемый операцией аутентификации клиента getUserToken. |
Исходный номер счета | SourceInvoiceId | Нет | Номер исходного СКО или объект операции, к которому привязывается операция, например: Получить номер исходного СКО можно из метода CreateInvoice, при создании такого СКО или в уведомлении по счету в форме оповещения о платеже. |
Ответ
Ответ типа <Response> будет содержать ответ true (выполнено успешно) или false (не выполнено)
Общий вид предоставления данных
Post /personal/recurring/deactivate HTTP/1.1 Host: api.intellectmoney.ru Content-Type: application/x-www-form-urlencoded; charset=utf-8 UserToken = 9WUoI8gEQndN%2BI97MGA4vxIiPZs2v32MxyJS7%2FGDxegOLFXcBQy4fUfCqt6NURzV SourceInvoiceId = 3496318551
Response xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <OperationState> <Code>0</Code> <Desc>Успешно обработана</Desc> </OperationState> <Result> true </Result> </Response>
Пример кода на языке программирования PHP
Для создания операции по расписанию на языке PHP, Вам надо воспользоваться функцией getToken() из пункта "getUserToken - Аутентификация пользователя API" и функцией curlRequest() из документации: Вспомогательные функции для взаимодействия с API системы IntellectMoney
$userToken = getToken();
$data = array(
'UserToken' => $userToken,
'SourceInvoiceId' => 3496318551,
);
$request = curlRequest('https://api.intellectmoney.ru/personal/recurring/deactivate', $data);
$result = simplexml_load_string($request);
echo $result->Result->ScheduledOperationList->ScheduledOperationData->CronOperationId;
GetEshopInfo() — ПОЛУЧЕНИЕ ИНФОРМАЦИИ О МАГАЗИНЕ
Передача параметров
Правило формирования заголовка Sign: UserToken::Skip::Take::EshopId::OrganizationId::IsHoldingSearch::signSecretKey
Для получения информации о магазинах необходимо отправить POST-запрос на следующий адрес URL:
https://api.intellectmoney.ru/personal/eshop/getEshopInfo
Название | Имя параметра | Обязательный | Описание |
|---|---|---|---|
| Ключ доступа | UserToken | Да | Ключ доступа клиента к API, запрашиваемый операцией аутентификации клиента getUserToken. Если не будут переданы параметры EshopId и OrganizationId, номер организации будет определен по данному параметру. |
ID магазина | EshopId | Нет | Номер магазина в системе IntellectMoney, по которому запрашивается информация. Можно увидеть на странице https://intellectmoney.ru/ru/enter/ps_organization_shop/ в столбце "ID". Если параметр передан - выведет информацию по конкретному магазину |
ID организации | OrganizationId | Нет | Номер организации в системе IntellectMoney, по которому запрашивается информация. Это номер заявления о присоединении.
|
| Тип операции | IsHoldingSearch | Нет | Флаг, указывающий на поиск по организациям холдинга:
Если флаг включен:
|
| Ограничение выборки по количеству объектов | Skip | Нет | Количество объектов, пропускаемых перед отдачей. Для значения 10, пропустит первые 10 записей и выведет Take записей начиная с 10 (нумерация начинается с 0) |
| Ограничение выборки по количеству объектов | Take | Да | Ограничение на количество возвращаемых объектов. Для значения 10, пропустит первые Skip записей и выведет 10 элементов |
Ответ
Ответ типа <Response> будет содержать структуру <EshopInfoDataList>
Примеры
Общий вид предоставления данных
Post: personal/eshop/getEshopInfo HTTP/1.1 Host: api.intellectmoney.ru Content-Type: application/x-www-form-urlencoded; charset=utf-8 UserToken = 9WUoI8gEQndN%2BI97MGA4vxIiPZs2v32MxyJS7%2FGDxegOLFXcBQy4fUfCqt6NURzV Skip = 0 Take = 3
{
"OperationState": {
"Code": 0,
"Desc": "Успешно обработана"
},
"OperationId": "c9fcdb82-15db-4f6e-ab66-15baf5dee46f",
"Result": {
"EshopInfoDatas": [
{
"Organization": {
"OrganizationId": 54379,
"OrganizationName": "Зарубин Сергей Олегович1",
"Email": "s.suvorinov+20@inte.ru",
"OrganizationLogin": "s.suvorinov+20@intellectmoney.ru"
},
"Eshop": {
"EshopId": 452996,
"EshopName": "Демо Магазин IM",
"Protocol": "IMProtocol",
"SecretKey": "123",
"ResultUrl": "http://opencart.im.ru/index.php?route=payment/intellectmoney/callback"
},
"Bank": {
"AccountNumber": "30101810900000000894",
"RecipientName": "ИП \"IntellectMoney\"",
"Name": "АЛЬФА-БАНК",
"OKPO": "09610444",
"CorrespondentAccountNumber": "30101810200000000593",
"City": "МОСКВА",
"Address": "УЛ КАЛАНЧЁВСКАЯ, 27",
"BIK": "044525593"
}
}
],
"State": {
"Code": 0,
"Desc": "Успешно обработан."
}
}
}
GetInvoiceInfo() — ПОЛУЧЕНИЕ ИНФОРМАЦИИ О ПЛАТЕЖЕ
Передача параметров
Правило формирования заголовка Sign: UserToken::::::EshopId::OrganizationId::IsHoldingSearch::InvoiceId::signSecretKey
Для получения информации о платеже необходимо отправить POST-запрос на следующий адрес URL:
https://api.intellectmoney.ru/personal/payment/getInvoiceInfo
Название | Имя параметра | Обязательный | Описание |
|---|---|---|---|
| Ключ доступа | UserToken | Да | Ключ доступа клиента к API, запрашиваемый операцией аутентификации клиента getUserToken. Если не будут переданы параметры EshopId и OrganizationId, номер организации будет определен по данному параметру. |
ID магазина | EshopId | Нет | Номер магазина в системе IntellectMoney, по которому запрашивается информация. Можно увидеть на странице https://intellectmoney.ru/ru/enter/ps_organization_shop/ в столбце "ID". Если передан данный параметр - будет проверять принадлежность СКО к данному магазину |
ID организации | OrganizationId | Нет | Номер организации в системе IntellectMoney, по которому запрашивается информация. Это номер заявления о присоединении.
|
| Номер СКО | InvoiceId | Да | Запрос информации только по данному номеру СКО. |
| Тип операции | IsHoldingSearch | Нет | Флаг, указывающий на поиск по организациям холдинга:
Если флаг включен:
|
Ответ
Ответ типа <Response> будет содержать структуру <InvoiceInfoData>
Примеры
Общий вид предоставления данных
Post: personal/eshop/getInvoiceInfo HTTP/1.1 Host: api.intellectmoney.ru Content-Type: application/x-www-form-urlencoded; charset=utf-8 UserToken = 9WUoI8gEQndN%2BI97MGA4vxIiPZs2v32MxyJS7%2FGDxegOLFXcBQy4fUfCqt6NURzV InvoiceId = 3333333333
{
"OperationState": {
"Code": 0,
"Desc": "Успешно обработана"
},
"OperationId": "ea667030-5dc4-4c56-9c86-c8aff1e41a89",
"Result": {
"State": {
"Code": 0,
"Desc": "Успешно обработан."
},
"Eshop": {
"EshopId": 452996,
"EshopName": "Демо Магазин IM",
"Protocol": "IMProtocol",
"SecretKey": "123",
"ResultUrl": "http://opencart.im.ru/index.php?route=payment/intellectmoney/callback"
},
"Organization": {
"OrganizationId": 54379,
"OrganizationName": "Зарубин Сергей Олегович1",
"Email": "s.suvorinov+20@inte.ru",
"OrganizationLogin": "s.suvorinov+20@intellectmoney.ru"
},
"ListNotificationParams": [
{
"CreationDate": "2014-10-13T13:36:51.87",
"NotificationParams": "eshopId=452996&paymentId=3447364446&orderId=0.03736900+1413193002&eshopAccount=4334170032&serviceName=%cf%eb%e0%f2%e5%e6+%e2+%ef%ee%eb%fc%e7%f3+%ec%e0%e3%e0%e7%e8%ed%e0&recipientAmount=10.00&recipientCurrency=TST&paymentStatus=3&userName=&userEmail=s.suvorinov%2b20%40intellectmoney.ru&paymentData=2014-10-13+13%3a36%3a51&secretKey=&hash=b0facf9fbb3a94039269c4e257642ff3"
},
{
"CreationDate": "2014-10-13T13:37:05.213",
"NotificationParams": "eshopId=452996&paymentId=3447364446&orderId=0.03736900+1413193002&eshopAccount=4334170032&serviceName=%cf%eb%e0%f2%e5%e6+%e2+%ef%ee%eb%fc%e7%f3+%ec%e0%e3%e0%e7%e8%ed%e0&recipientAmount=10.00&recipientCurrency=TST&paymentStatus=5&userName=&userEmail=s.suvorinov%2b20%40intellectmoney.ru&paymentData=2014-10-13+13%3a37%3a05&secretKey=&hash=e722815c77921708961f49303d153389"
}
],
"InvoiceId": 3447364446
}
CreateReceipt() — Отправка запроса на создание чека в OrangeData
Передача параметров
Важно
Для использования данного метода API, переведите онлайн - кассу, в настройках магазина, в положение "Выключена". Это необходимо что бы избежать недопонимания кто и когда должен был пробить чек.
Правило формирования заголовка Sign: UserToken::MerchantReceipt::InvoiceId::signSecretKey
Для отправки запроса на создание чека в OrangeData необходимо отправить POST-запрос на следующий адрес URL:
https://api.intellectmoney.ru/personal/cashBox/createReceipt
Название | Имя параметра | Обязательный | Описание |
|---|---|---|---|
| Ключ доступа | UserToken | Да | Ключ доступа клиента к API, запрашиваемый операцией аутентификации клиента getUserToken. |
| Номер СКО | InvoiceId | Да | Запрос информации только по данному номеру СКО. |
| Параметры чека | MerchantReceipt | Да | Данный параметр подробно разобран в Протокол приема платежей Intellectmoney |
Ответ
Ответ типа <Response> будет содержать структуру <CashboxReceiptCreateData>
Примеры
Общий вид предоставления данных
Post: personal/cashbox/createreceipt HTTP/1.1
Host: api.intellectmoney.ru
Content-Type: application/x-www-form-urlencoded; charset=utf-8
UserToken = 9WUoI8gEQndN%2BI97MGA4vxIiPZs2v32MxyJS7%2FGDxegOLFXcBQy4fUfCqt6NURzV
InvoiceId = 3333333333
MerchantReceipt = {"group":"Main","content":{"checkClose":{"payments":[{"type":2, "amount":10.00}], "taxationSystem":0},"type":1,"positions":[{"quantity":1.000,"price":5,"tax":6,"text":"Булка"},{"quantity":1.000,"price":5,"tax":4,"text":"Спички"}],"customerContact":"foo@example.com"}}
{
"OperationState": {
"Code": 0,
"Desc": "Успешно обработана"
},
"OperationId": "30bb1437-033e-45cf-887a-15b779483648",
"Result": {
"State": {
"Code": 0,
"Desc": "Успешно обработан."
},
"DocumentId": "2473c3e4d8564d59a02064641a5e40a7",
"CashboxReceiptResponseData": {
"ReceiptId": 0,
"Response": "",
"ResponseState": "Created",
"Errors": [],
}
}
GetReceipt() — Получение информации о чеке от OrangeData
Передача параметров
Важно
Для использования данного метода API, переведите онлайн - кассу, в настройках магазина, в положение "Выключена". Это необходимо что бы избежать недопонимания кто и когда должен был пробить чек.
Правило формирования заголовка Sign: UserToken::DocumentId::InvoiceId::signSecretKey
Для получения информации о состоянии чека необходимо отправить POST-запрос на следующий адрес URL:
https://api.intellectmoney.ru/personal/cashBox/getReceipt
Название | Имя параметра | Обязательный | Описание |
|---|---|---|---|
| Ключ доступа | UserToken | Да | Ключ доступа клиента к API, запрашиваемый операцией аутентификации клиента getUserToken. |
| Номер СКО | InvoiceId | Да | Номер Счета К Оплате в системе IntellectMoney. |
| Идентификатор чека | DocumentId | Да | Идентификатор чека нужно получить из метода CreateReceipt |
Ответ
Ответ типа <Response> будет содержать структуру <CashboxReceiptResponseData>
Примеры
Общий вид предоставления данных
Post: personal/cashbox/getReceipt HTTP/1.1 Host: api.intellectmoney.ru Content-Type: application/x-www-form-urlencoded; charset=utf-8 UserToken = 9WUoI8gEQndN%2BI97MGA4vxIiPZs2v32MxyJS7%2FGDxegOLFXcBQy4fUfCqt6NURzV InvoiceId = 3333333333 DokumentId = 745c6f8967fb4338a57a0f10214946b6
{
"OperationState": {
"Code": 0,
"Desc": "Успешно обработана"
},
"OperationId": "30bb1437-033e-45cf-887a-15b779483648",
"Result": {
"State": {
"Code": 0,
"Desc": "Успешно обработан."
},
"CashboxReceiptResponseData": {
"ReceiptId": 24573,
"Response": "
{"id":"745c6f8967fb4338a57a0f10214946b6","deviceSN":"0262220038000625","deviceRN":"0001428266028297","fsNumber":"9999078900006775","ofdName":"ОФД-Я (тест)","ofdWebsite":"www.ofd-ya.ru","ofdinn":"7728699517","fnsWebsite":"www.nalog.ru","companyINN":"7743736523","companyName":"Общество с ограниченной ответственностью \"ИНТЕЛЛЕКТМАНИ\"","documentNumber":771,"shiftNumber":219,"documentIndex":3,"processedAt":"2019-08-19T09:56:00","content":{"type":1,"positions":[{"quantity":1.000,"price":5.0,"tax":6,"text":"Булка"},{"quantity":1.000,"price":5.0,"tax":4,"text":"Спички"}],"checkClose":{"payments":[{"type":2,"amount":10.00}],"taxationSystem":0},"customerContact":"foo@example.com"},"change":0.0,"fp":"2969310875","callbackUrl":null}",
"Id": "745c6f8967fb4338a57a0f10214946b6",
"DeviceSN": "0262220038000625",
"DeviceRN": "0001428266028297",
"FSNumber": "9999078900006775",
"OFDName": "ОФД-Я (тест)",
"OFDInn": "7728699517",
"OFDWebsite": "www.ofd-ya.ru",
"FNSWebsite": "www.nalog.ru",
"CompanyINN": "7743736523",
"CompanyName": "Общество с ограниченной ответственностью "ИНТЕЛЛЕКТМАНИ"",
"DocumentNumber": 771,
"ShiftNumber": 219,
"DocumentIndex": 3,
"ProcessedAt": "2019-08-19T09:56:00",
"Content": {
"Type": "In",
"Positions": [
{
"Quantity": 1,
"Price": 5,
"Tax": "None",
"Text": "Булка"
},
{
"Quantity": 1,
"Price": 5,
"Tax": "Vat110",
"Text": "Спички"
}
],
"CheckClose": {
"Payments": [
{
"Type": "Electronic",
"Amount": 10
}
],
"TaxationSystem": "Common"
},
"CustomerContact": "foo@example.com"
},
"Change": 0,
"FP": "2969310875",
"ResponseState": "Ok",
"Errors": []
}
}
CreateReceiptCorrection() — Отправка запроса на создание чека коррекции в OrangeData
Передача параметров
Правило формирования заголовка Sign: UserToken::InvoiceId::DocumentId::MerchantReceiptCorrection::signSecretKey
Для отправки запроса на создание чека в OrangeData необходимо отправить POST-запрос на следующий адрес URL:
https://api.intellectmoney.ru/personal/cashBox/createReceiptCorrection
Название | Имя параметра | Обязательный | Описание |
|---|---|---|---|
| Ключ доступа | UserToken | Да | Ключ доступа клиента к API, запрашиваемый операцией аутентификации клиента getUserToken. |
| Номер СКО | InvoiceId | Да | Номер Счета К Оплате в системе IntellectMoney. |
| Идентификатор чека | DocumentId | Да | Идентификатор чека нужно получить из метода CreateReceipt |
| Параметры чека коррекции | MerchantReceiptCorrection | Да | <CashboxReceiptCorrectionData> |
Ответ
Ответ типа <Response> будет содержать структуру <CashboxReceiptCorrectionResponseData>
Примеры
Общий вид предоставления данных
POST personal/cashbox/createReceiptCorrection HTTP/1.1
Host: api.intellectmoney.ru
Content-Type: application/x-www-form-urlencoded; charset=utf-8
InvoiceId=3899397825
UserToken=ntbUm45Rd1QKuDC8h1JWU7YIXdyIps6Z4yVVYT/Xnn5OqNcw7M+a/q6CtKFa6D93
MerchantReceiptCorrection={
"inn": "XXXXXXXXXX",
"group": "Main",
"content": {
"CorrectionType": 0,
"Type": 1,
"Description": "Коррекция прихода",
"CauseDocumentDate": "2020-05-24T00:00:00",
"CauseDocumentNumber": "№1",
"TotalSum": 500.0,
"TaxationSystem": 1
}
}
DocumentId=2f35b40f971f4c8a8d317a5739221cbd
{
"id": "ed48d95f24af42fe90c62f08c5a65d06",
"deviceSN": "XXXXXXXXXXXXXXXX",
"deviceRN": "XXXXXXXXXXXXXXXX",
"fsNumber": "XXXXXXXXXXXXXXXX",
"ofdName": "ОФД-Я",
"ofdWebsite": "www.ofd-ya.ru",
"ofdinn": "7728699517",
"fnsWebsite": "www.nalog.ru",
"companyINN": "XXXXXXXXXXXX",
"companyName": "ИП Рога и копыта",
"documentNumber": 810,
"shiftNumber": 377,
"documentIndex": 1,
"processedAt": "2020-05-24T14:00:00",
"content": {
"correctionType": 0,
"type": 3,
"description": "Коррекция расхода",
"causeDocumentDate": "2020-05-24T00:00:00",
"causeDocumentNumber": "№1",
"totalSum": 500.0,
"cashSum": 0.0,
"eCashSum": 0.0,
"prepaymentSum": 0.0,
"postpaymentSum": 0.0,
"otherPaymentTypeSum": 0.0,
"tax1Sum": 0.0,
"tax2Sum": 0.0,
"tax3Sum": 0.0,
"tax4Sum": 0.0,
"tax5Sum": 0.0,
"tax6Sum": 0.0,
"taxationSystem": 1
},
"change": 0.0,
"fp": "XXXXXXXXXX"
}
WithdrawMoney() — Создание заявки на вывод средств
Передача параметров
Правило формирования заголовка Sign: UserToken::AccountId::Amount::TransactionDate::::signSecretKey
Для создания заявки на вывод средств необходимо отправить POST-запрос на следующий адрес URL:
https://api.intellectmoney.ru/personal/payment/withdrawMoney
Название | Имя параметра | Обязательный | Описание |
|---|---|---|---|
| Номер счета | AccountId | Да | Номер счета, с которого выводятся средства. |
| Сумма вывода | Amount | Да | Положительное число, округленное до 2 знаков после десятичной точки, без пробелов. Максимальная длина - 13 цифр вместе с десятичными знаками. |
| Дата операции | TransactionDate | Нет | Действительная дата, на которую состоялся вывод. Если не задана, используется текущая дата и время |
Ответ
Ответ типа <Response> будет содержать структуру <TransactionInfoData> с информацией о созданной транзакции вывода
Примеры
Общий вид предоставления данных
Post: personal/payment/withdrawMoney HTTP/1.1 Host: api.intellectmoney.ru Content-Type: application/x-www-form-urlencoded; charset=utf-8 AccountId = 6111111111 Amount = 100.00
{
"OperationState": {
"Code": 0,
"Desc": "Успешно обработана"
},
"OperationId": "45b31d11-c6c5-44f1-8c2d-004182e2cf37",
"Result": {
"State": {
"Code": 0,
"Desc": "Успешно обработан."
},
"TransactionId": 2036602491,
"PaymentState": "Confirm",
"Amount": 0.01,
"Currency": "RUB"
}
}
GetTransactionData() — Получение информации о транзакции
Передача параметров
Правило формирования заголовка Sign: UserToken::TransactionId::signSecretKey
Для получения информации о транзакции необходимо отправить POST-запрос на следующий адрес URL:
https://api.intellectmoney.ru/personal/payment/getTransactionData
Название | Имя параметра | Обязательный | Описание |
|---|---|---|---|
| Номер транзакции | TransactionId | Да | Номер транзакции, принадлежащей организации или пользователю |
Ответ
Ответ типа <Response> будет содержать структуру <TransactionInfoData>
Примеры
Общий вид предоставления данных
Post: personal/payment/getTransactionData HTTP/1.1 Host: api.intellectmoney.ru Content-Type: application/x-www-form-urlencoded; charset=utf-8 TransactionId = 2111111111
{
"OperationState": {
"Code": 0,
"Desc": "Успешно обработана"
},
"OperationId": "4064d921-b45b-490a-a679-eba784b3dcfa",
"Result": {
"State": {
"Code": 0,
"Desc": "Успешно обработан."
},
"TransactionId": 2036602481,
"PaymentState": "Confirm",
"Amount": 1.2000,
"Currency": "RUB"
}
}
GetAccountData() — Получение информации о состоянии счета
Передача параметров
Правило формирования заголовка Sign: UserToken::AccountId::BalanceOnDate::::signSecretKey
Для получения информации о состоянии счета необходимо отправить POST-запрос на следующий адрес URL:
https://api.intellectmoney.ru/personal/payment/getAccountData
Название | Имя параметра | Обязательный | Описание |
|---|---|---|---|
| Номер счета | AccountId | Да | Номер счета |
| Дата операции | BalanceOnDate | Нет | Дата, на которую необходимо запросить состояние счета. Если не задана, используется текущая дата и время |
| Ключ доступа | UserToken | Да | Ключ доступа клиента к API, запрашиваемый операцией аутентификации клиента getUserToken. |
Ответ
Ответ типа <Response> будет содержать структуру <AccountInfoData> с информацией о состоянии счета
Примеры
Общий вид предоставления данных
Post: personal/payment/getAccountData HTTP/1.1 Host: api.intellectmoney.ru Content-Type: application/x-www-form-urlencoded; charset=utf-8 AccountId = 6111111111 UserToken = YdUlqkFcVo62XmY6B9VLJVUg2oNWoVW...
{
"OperationState": {
"Code": 0,
"Desc": "Успешно обработана"
},
"OperationId": "5ee71ed0-eed7-453e-950f-8aa10f05beff",
"Result": {
"State": {
"Code": 0,
"Desc": "Успешно обработан."
},
"AccountId": 6554473696,
"Balance": 4.6800,
"Currency": "RUB"
}
}
RegisterOrganization() - Регистрация организации
Передача параметров
Правило формирования заголовка Sign: UserToken::RequestId::FirstName::ContactPhone::Email::LeadSource::Inn:InviteCode::LeadComment::LeadAttractor::signSecretKey
Для регистрации организации необходимо отправить POST-запрос на следующий адрес URL:
https://api.intellectmoney.ru/personal/user/registerOrganization
| Название | Имя параметра | Обязательный | Описание |
|---|---|---|---|
| ID заявки | RequestId | Да | ID заявки на регистрацию (в системе поставщика). |
| Имя | FirstName | Да | Имя владельца организации. |
| Контактный номер | ContactPhone | Да | Контактный номер. |
| Контактный e-mail | Да | Контактный e-mail. | |
| Источник регистрации | LeadSource | Да | ID источника регистрации. |
| ИНН | Inn | Нет | ИНН. |
| Промо-код | InviteCode | Нет | Промо-код. |
| UTM-метки | UTMParams | Нет | UTM-метки. Тип UTMParamsData |
| Комментарий | LeadComment | Нет | Комментарий поставщика. |
| Привлеченец | LeadAttractor | Нет | Привлеченец (ФИО менеджера). |
Ответ
Ответ типа <Response> будет содержать переданные в запросе данные, если регистрация прошла успешно.
Примеры
Post: /user/registerOrganization HTTP/1.1
Host: api.intellectmoney.ru
Accept: application/json
Content-Type: application/json
{
"userToken": "TNNyBoUMbUjhr8Go1QixvJ6co1y1kxh6vz/MEpIR9X0Ka9rRIWHfArwUTpBwE1sw",
"email": "testtest@testtest.test",
"firstName": "Test",
"contactPhone": "70000000000",
"requestId": "1213123",
"leadSource": "31",
"inviteCode": "",
"inn": "1231231231",
"utmParams": {
"utm_source": "intellectmoney",
"utm_medium": "cpc",
"utm_campaign": "dev",
"utm_term": "some info",
"utm_content": "textlink"
},
"leadComment": "Комментарий",
"leadAttractor": "Иванов Иван Иванович"
}
{
"OperationState": {
"Code": 0,
"Desc": "Успешно обработана"
},
"Result": {
"RequestId": "1213123",
"FirstName": "Test",
"ContactPhone": "70000000000",
"Email": "testtest@testtest.test",
"LeadSource": "31",
"Inn": "1231231231",
"InviteCode": "",
"UTMParams": {
"utm_source": "intellectmoney",
"utm_medium": "cpc",
"utm_campaign": "dev",
"utm_term": "some info",
"utm_content": "textlink"
},
"LeadComment": "Комментарий",
"LeadAttractor": "Иванов Иван Иванович",
"UserToken": "TNNyBoUMbUjhr8Go1QixvJ6co1y1kxh6vz/MEpIR9X0Ka9rRIWHfArwUTpBwE1sw"
}
}
ТИПЫ ДАННЫХ
<Response>
Поле | Тип | Описание |
|---|---|---|
OperationState | Статус выполнения операции | |
OperationId | GUID | Идентификатор операции |
EshopId | int | ID магазина |
Result | MethodResult | Результат выполнения запроса. Зависит от типа запроса. В случае асинхронной обработки запроса данного поля не будет. |
<OperationState>
Поле | Тип | Описание |
|---|---|---|
State | Статусы выполнения запросов | |
Desc | string | Описание кода статуса выполнения запроса |
<UserTokenData>
Поле | Тип | Описание |
|---|---|---|
State | Статусы выполнения запросов | |
UserToken | string | Ключ доступа клиента к API |
<InvoicesHistoryList>
Поле | Тип | Описание |
|---|---|---|
State | Статусы выполнения запросов | |
InvoicesHistoryList | Список (реестр) платежей |
<PaymentsHistoryList>
Поле | Тип | Описание |
|---|---|---|
State | Статусы выполнения запросов | |
InvoicesHistoryList | Список транзакций |
<InvoiceData>
Поле | Тип | Описание |
|---|---|---|
Id | long | Номер СКО |
State | Статус состояния СКО | |
| CreationDate | DateTime | Дата создания СКО |
| ChangeDate | DateTime | Дата последних изменений СКО |
| Amount | <Money> | Сумма СКО с учётом комиссии |
| CurrentAmount | <Money> | Внесенная частично на СКО сумма. Имеет положительное значение для статусов "Частично оплачен" и "В процессе обработки". Для оплаченного или захолдированного счета значение равно 0. |
| SurchargeAmount | <Money> | Сумма СКО, которую осталось оплатить. Имеет положительное значение для статуса "Частично оплачен". Для оплаченного или захолдированного счета значение равно 0. |
| Comment | string | Комментарий к платежу |
| EShopId | long | Номер магазина в системе IntellectMoney |
| PurchaseOrderId | string | Внутренний номер покупки (заказа) в магазине |
| HistoryList | List<HistoryData> | Список транзакций по СКО |
<HistoryData>
| Поле | Тип | Описание |
|---|---|---|
| Id | long | Идентификатор транзакции в системе ИнтеллектМани (для внутреннего использования) |
| PaymentNumber | long | Номер транзакции |
| State | <TransactionState> | Статус транзакции |
| CreationDate | DateTime | Дата создания транзакции |
| PaymentAmount | <Money> | Сумма списания по транзакции |
| RecipientAmount | <Money> | Сумма зачисления по транзакции |
| PaymentAccount | string | Счет списания по транзакции |
| RecipientAccount | string | Счет зачисления по транзакции |
| Comment | string | Комментарий к транзакции |
| Description | string | Описание транзакции |
| InvoicePaymentType | <PaymentType> | Тип осуществляемой транзакции: пополнение, зачисление или возврат |
| RcCode | string | Код ответа банка, принимающего платеж |
| RcCodeUserDescription | string | Описание ответа банка, принимающего платеж. |
Свойства <InvoiceData>
Свойства типа данных <InvoiceData> и <HistoryData>, приведенные в примере ответа на запрос, но не описанные выше, следует игнорировать в текущей версии API.
<PaymentType>
| PaymentType | Описание | Пояснение |
|---|---|---|
| Entry | Входная транзакция | Транзакция пополнения СКО |
| Purchase | Транзакция зачисления | Транзакция пополнения счета магазина |
| Refund | Транзакция возврата | Транзакция возврата со счета магазина на счет плательщика |
<Money>
Поле | Тип | Описание |
|---|---|---|
| Amount | decimal | Количество денежных средств. |
| Currency | <Currency> | В какой валюте исчисляются денежные средства. |
<SetScheduledOperationData>
Поле | Тип | Описание |
|---|---|---|
State | Статусы выполнения запросов | |
ScheduledOperation | Информация по созданной/отредактированной операции |
<GetScheduledOperationData>
Поле | Тип | Описание |
|---|---|---|
State | Статусы выполнения запросов | |
ScheduledOperationList | Список операций, подходящих под заданный фильтр |
<ScheduledOperationData>
Поле | Тип | Описание |
|---|---|---|
| CronOperationId | GUID | Номер операции. Используется для редактирования операции, если не передать - создается новая операция (GUID) |
| ObjectId | long | Объект источник, например:
|
| CronOperationType | tinyint | Тип регулярной операции (1 - Recurring) |
| Params | text | Дополнительные параметры в формате JSON, например: { "Amount": 10 } |
| CreationDate | DateTime | Дата создания операции |
| ChangeDate | DateTime | Дата последнего внесения изменений |
| EndExecDate | DateTime | Дата окончания выполнения операции |
| LastExecDate | DateTime | Дата последнего выполнения операции |
| NextExecDate | DateTime | Дата следующего выполнения операции |
| RepeatPlan | text | Периодичность (регулярность) выполнения операции. Может указываться в двух различных вариантах:
|
| RetryOnFailPlan | text | Периодичность (регулярность) повторных попыток выполнения операции при ошибке. В примерах, в случае когда изначальная попытка списания была неудачной, каждые 5 минут будет производиться повторная попытка. Количество попыток указывается в поле RetryOnFailCount. Может указываться в двух различных вариантах:
|
| RetryOnFailCount | text | Количество повторных попыток выполнения (целое число). Если операцию не удалось выполнить с первого раза, она будет повторятся с периодичностью указанно в параметре RetryOnFailPlan не более чем RetryOnFailCoun |
| IsSingle | bool | Флаг, указывающий возможность запуска параллельных тасков:
|
| FireOnSkip | bool | Флаг, указывающий необходимость создания всех запланированных задач, в случае их непредвиденного пропуска (0 или 1) |
| CronOperationState | <CronOperationState> | Флаг, указывающий статус активности
|
<EshopInfoDataList>
Поле | Тип | Описание |
|---|---|---|
State | Статусы выполнения запросов | |
EshopInfoDatas | Информация по магазину |
<EshopInfoData>
Поле | Тип | Описание |
|---|---|---|
Organizaiton | Краткая информация об организации | |
Eshop | Информация по магазину | |
| Bank | <BankInfo> | Информация о банке |
<InvoiceInfoData>
Поле | Тип | Описание |
|---|---|---|
State | Статусы выполнения запросов | |
Eshop | Информация по магазину | |
| Organization | <OrganizaitonInfo> | Краткая информация об организации |
| ListNotificationParams | <NotificationParamsData> | Список параметров, переданный на ResultURL |
| InvoiceId | int | Номер СКО |
<EshopInfoDataList>
Поле | Тип | Описание |
|---|---|---|
State | Статусы выполнения запросов | |
EshopInfoDatas | Информация по магазину |
<OrganizaitonInfo>
Поле | Тип | Описание |
|---|---|---|
OrganizationId | int | Уникальный идентификатор организации |
OrganizationName | text | Название организации |
| text | Email контактного лица | |
| OrganizationLogin | text | Логин для входа в организацию |
<EshopInfo>
Поле | Тип | Описание |
|---|---|---|
EshopId | int | Уникальный идентификатор магазина |
EshopName | text | Название магазина |
| Protocol | text | Протокол интеграции (IMProtocol) |
| SecretKey | text | Логин для входа в организацию |
| ResultUrl | text | URL для уведомлений о смене статуса платежа |
<BankInfo>
Поле | Тип | Описание |
|---|---|---|
AccountNumber | text | Номер расчётного счёта |
RecipientName | text | Наименование получателя |
| Name | text | Название банка |
| OKPO | text | ОКПО банка |
| CorrespondentAccountNumber | text | Корреспондентский счет счёт банка |
| City | text | Город банка |
| Address | text | Адрес банка |
| BIK | text | БИК банка |
<NotificationParamsData>
Поле | Тип | Описание |
|---|---|---|
CreationDate | DateTime | Дата создания запроса |
NotificationParams | text | Список переданных параметров |
<CashBoxReceiptCreateData>
Поле | Тип | Описание |
|---|---|---|
| DocumentId | text | Идентификатор чека |
CashBoxReceiptResponseData | Ответ от OrangeData |
<CashBoxReceiptResponseData>
Поле | Тип | Описание |
|---|---|---|
| ReceiptResponseId | int | Идентификатор ответа в системе IntellectMoney |
ReceiptId | int | Идентификатор чека в системе IntellectMoney |
| Response | text | Ответ от OrangeData |
| Id | string | Идентификатор документа |
| DeviceSN | text | Заводской номер устройства пробившего чек |
| DeviceRN | text | Регистрационный номер устройства пробившего чек |
| FSNumber | text | Номер фискального накопителя |
| OFDName | text | Наименование ОФД |
| OFDInn | text | ИНН ОФД |
| OFDWebsite | text | Web-сайт ОФД |
| FNSWebsite | text | Web-сайт ФНС |
| CompanyInn | text | ИНН пользователя |
| CompanyName | text | Наименование пользователя |
| DocumentNumber | int | Номер ФД |
| ShiftNumber | int | Номер смены |
| DocumentIndex | int | Номер чека за смену |
| ProcessedAt | DateTime | Время регистрации фискального документа в ФН |
| Content | <CashboxReceiptContentData> | Содержимое документа |
| Change | decimal | Сдача |
| FP | text | Фискальный признак |
| ResponseState | <ReceiptResponseStateEnum> | Статус чека |
| Errors | List<string> | Список ошибок |
<CashboxReceiptContentData>
| Поле | Тип | Описание |
|---|---|---|
| Type | ReceiptDocTypeEnum | Тип документа |
| Positions | List<CashboxReceiptPositionData> | Список позиций в чеке |
| CheckClose | <CashboxReceiptCheckCloseData> | Параметры закрытия чека |
| CustomerContact | text | Телефон или e-mail покупателя |
| AgentType | text | Признак агента |
<CashboxReceiptPositionData>
| Поле | Тип | Описание |
|---|---|---|
| ReceiptPositionId | int | Идентификатор позиции в чеке в системе IntellectMoney |
| ReceiptId | int | Идентификатор чека в системе IntellectMoney |
| Quantity | decimal | Количество товара |
| Price | decimal | Цена товара с учетом всех скидок и наценок |
| Tax | <ReceiptVatRateEnum> | Ставка НДС |
| PaymentSubjectType | <ReceiptPaymentSubjectTypeEnum> | Предмет расчета |
| PaymentMethodType | <ReceiptPaymentMethodTypeEnum> | Способ расчета |
| Text | text | Текст позиции |
<CashboxReceiptCheckCloseData>
| Поле | Тип | Описание |
|---|---|---|
| Payments | <CashboxReceiptPaymentData> | Оплаты |
| TaxationSystem | <ReceiptTaxationSystemEnum> | Система налогообложения |
Оплата
| Поле | Тип | Описание |
|---|---|---|
| ReceiptPaymentId | int | Идентификатор оплаты в системе IntellectMoney |
| ReceiptId | int | Идентификатор чека в системе IntellectMoney |
| Type | <ReceiptPaymentTypeEnum> | Тип оплаты |
| Amount | decimal | Сумма оплаты |
<TransactionInfoData>
| Поле | Тип | Описание |
|---|---|---|
| TransactionId | long | Номер транзакции |
| PaymentState | <PaymentTransactionState> | Статус транзакции |
| Amount | decimal | Сумма транзакции |
| Currency | <Currency> | Валюта операции |
<AccountInfoData>
| Поле | Тип | Описание |
|---|---|---|
| AccountId | long | Номер счета |
| Balance | decimal | Состояние баланса |
| Currency | <Currency> | Валюта счета |
<CashboxReceiptCorrectionData>
Поле | Тип | Описание |
|---|---|---|
id | Идентификатор документа | Строка от 1 до 64 символов. Параметр обязательный. |
Inn | ИНН организации, для которой пробивается чек | Строка 10 или 12 символов. Параметр обязательный. |
group | Группа устройств, с помощью которых будет пробит чек | Строка от 1 до 32 символов или null |
content | ||
key | Название ключа, который должен быть использован для проверки подпись. Для клиентов используется их ИНН, для партнеров и платежных агентов код с маской 301****, для вендинга 401****. | Строка от 1 до 32 символов либо null. Параметр обязательный. |
callbackUrl | URL для отправки результатов обработки чека POST запросом | Строка от 1 до 1024 символов или null |
<CashboxReceiptCorrectionContentData>
Поле | Тип | Описание |
|---|---|---|
correctionType | Тип коррекции 1173: 0. Самостоятельно 1. По предписанию | Число. Параметр обязательный. |
type | Признак расчета, 1054: 1. Приход 3. Расход | Число. Параметр обязательный. |
causeDocumentDate | Дата документа основания для коррекции 1178. В данном реквизите время всегда указывать, как 00:00:00 | Время в виде строки в формате ISO8601. Параметр обязательный. |
causeDocumentNumber | Номер документа основания для коррекции, 1179 | Строка от 1 до 32 символов. Параметр обязательный. |
totalSum | Сумма расчета, указанного в чеке (БСО), 1020 | Десятичное число с точностью до 2 символов после точки. Параметр обязательный. |
cashSum | Сумма по чеку (БСО) наличными, 1031 | Десятичное число с точностью до 2 символов после точки |
eCashSum | Сумма по чеку (БСО) безналичными, 1081 | Десятичное число с точностью до 2 символов после точки |
prepaymentSum | Сумма по чеку (БСО) предоплатой (зачетом аванса и (или) предыдущих платежей), 1215 | Десятичное число с точностью до 2 символов после точки |
postpaymentSum | Сумма по чеку (БСО) постоплатой (в кредит), 1216 | Десятичное число с точностью до 2 символов после точки |
otherPaymentTypeSum | Сумма по чеку (БСО) встречным предоставлением, 1217 | Десятичное число с точностью до 2 символов после точки |
tax1Sum | Сумма НДС чека по ставке 20%, 1102 | Десятичное число с точностью до 2 символов после точки |
tax2Sum | Сумма НДС чека по ставке 10%, 1103 | Десятичное число с точностью до 2 символов после точки |
tax3Sum | Сумма расчета по чеку с НДС по ставке 0%, 1104 | Десятичное число с точностью до 2 символов после точки |
tax4Sum | Сумма расчета по чеку без НДС, 1105 | Десятичное число с точностью до 2 символов после точки |
tax5Sum | Сумма НДС чека по расч. ставке 20/120, 1106 | Десятичное число с точностью до 2 символов после точки |
tax6Sum | Сумма НДС чека по расч. ставке 10/110, 1107 | Десятичное число с точностью до 2 символов после точки |
taxationSystem | Применяемая система налогообложения, 1055: 0. Общая 1. Упрощенная доход 2. Упрощенная доход минус расход 3. Единый налог на вмененный доход 4. Единый сельскохозяйственный налог 5. Патентная система налогообложения | Число |
automatNumber | Номер автомата, 1036 | Строка длиной от 1 до 20 символов, обязательное поле, если группа имеет признак передачи данных автомата, в противном случае не должно передаваться. Только для вендинга и транспорта. |
settlementAddress | Адрес расчетов, 1009 | Строка длиной от 1 до 243 символов, обязательное поле, если группа имеет признак передачи данных автомата, в противном случае не должно передаваться. Только для вендинга и транспорта. |
settlementPlace | Место расчетов, 1187 | Строка длиной от 1 до 243 символов, обязательное поле, если группа имеет признак передачи данных автомата, в противном случае не должно передаваться. Только для вендинга и транспорта. |
<CashboxReceiptCorrectionResponseData>
Поле | Тип | Описание |
|---|---|---|
id | Идентификатор документа | Строка от 1 до 64 символов |
deviceSN | Заводской номер устройства пробившего чек | Строка до 20 символов |
deviceRN | Регистрационный номер устройства пробившего чек | Строка до 20 символов |
fsNumber | Номер фискального накопителя | Строка 16 символов |
ofdName | Наименование ОФД | Строка до 256 символов |
odfWebsite | Web-сайт ОФД | Строка до 58? символов |
odfINN | ИНН ОФД | Строка 12 символов |
fnsWebsite | Web-сайт ФНС | Строка до 256 символов |
companyINN | ИНН пользователя | Строка 12 символов |
companyName | Наименование пользователя | Строка до 256 символов |
documentNumber | Номер ФД | Число |
shiftNumber | Номер смены | Число |
documentIndex | Номер чека за смену | Число |
processedAt | Время регистрации фискального документа в ФН | Время в виде строки в формате ISO8601 |
content | Содержимое документа | Структура п.2.1.1.1 |
fp | Фискальный признак | Строка 10 символов |
callbackUrl | URL для отправки результатов обработки чека POST запросом | Строка от 1 до 1024 символов или null |
<UTMParamsData>
Поле Тип Описание utm_source string Сайт, с которого направляется трафик. utm_medium string Рекламная модель. utm_campaign string Рекламная кампания. utm_term string Ключевая фраза из рекламной кампании. utm_content string Конкретный элемент, на который кликнул пользователь.
ПЕРЕЧИСЛЕНИЯ
Коды операций
ServiceOperatonState | Описание |
|---|---|
0 | Успешно обработана |
1 | В процессе выполнения |
2 | Ошибка |
Статусы запросов
Код ошибки | Описание |
|---|---|
0 | Успешно обработан |
1 | Обработан с предупреждениями |
2 | Аутентификация не пройдена |
Описание принимаемых валют
Название | Описание |
|---|---|
RUB | Валюта оплаты - Российский рубль |
| TST | Внутренняя тестовая валюта оплаты |
Статусы состояния СКО
InvoiceState | Числовое представление | Описание | Пояснение |
|---|---|---|---|
| Created | 0 | Создан | Счёт к оплате создан и теперь его состояние можно отслеживать методом getPurchaseInfo(). Никаких платёжных операций не производилось. |
| PartPaid | 1 | Частично оплачен | Пользователь (Покупатель), внес часть средств. Пользователю (Покупателю) надо внести оставшуюся часть суммы. |
| Paid | 2 | Полностью оплачен | Пользователь внес всю сумму. |
| ToPaid | 3 | В процессе обработки | Над денежными средствами производятся действия. |
| Refund | 4 | Возврат | Средства будут возвращены Пользователю (Покупателю). |
| Held | 6 | Захолдирован | Средства заморожены (захолдированы/ holded) на счёте Пользователя (Покупателя). Данные средства будут зачислены или расхолдированы (вернутся Пользователю) по истечению времени заморозки (холдирования) или пока не будут зачислены вручную. Поведение денежных средств определяется в настройках магазина на вкладке "Приём платежей" в разделе "Расширенные настройки". |
Статусы платежной транзакции
TransactionState | Числовое представление | Описание | Пояснение |
|---|---|---|---|
| Created | 0 | Создана | Платежная транзакция создана и еще не проведена. |
| Confirm | 1 | Подтверждена | Платежная транзакция подтверждена |
| Canceled | 2 | Отменена | Платежная транзакция отменена |
Тип сортировки счетов
OrderList | Числовое представление | Описание | Пояснение |
|---|---|---|---|
| None | 0 | Не задан | Сортировка по умолчанию, равносильно не передаче параметра , сортирует по дате создания |
| CreationDate | 1 | По дате создания | Сортирует счета по дате создания, сортировка по возрастанию |
| ChangeDate | 2 | По дате изменения | Сортирует счета по дате изменения, сортировка по возрастанию |
| InvoiceState | 3 | По состоянию счета | Сортирует счета по состоянию счета |
| Amount | 4 | По сумма | Сортирует счета по сумме, сортировка по возрастанию |
Статус чека
ReceiptResponseStateEnum | Числовое представление | Описание |
|---|---|---|
| None | 0 | Нет статуса |
| Created | 1 | Чек создан и добавлен в очередь на обработку, пустое тело ответа |
| Ok | 2 | Чек обработан, есть тело |
| BadRequest | 3 | Клиентский сертификат не прошел проверку |
| Conflict | 4 | Чек с данным идентификатором уже был создан в системе, пустое тело ответа |
| Accepted | 5 | Чек создан и добавлен в очередь на обработку, но еще не обработан, пустое тело ответа |
| NotFound | 6 | Чек с указанным идентификатором не найден в системе, пустое тело ответа |
| Unauthorized | 7 | Клиентский сертификат не прошел проверку |
| ServerErrorRetryLater | 8 | Сервер недоступен или внутренняя ошибка сервера |
| ServiceUnavailable | 9 | Очередь документов переполнена |
| UnsupportedResponseFormat | 10 | Ответ сервера не удалось распознать |
| HttpRequestError | 11 | Ошибка отправки http запроса (например разрыв соединения) |
Ставка НДС
| ReceiptVatRateEnum | Числовое представление | Описание |
|---|---|---|
| Vat20 | 1 | Ставка НДС 20% |
| Vat10 | 2 | Ставка НДС 10% |
| Vat120 | 3 | Ставка НДС расч. 20/120 |
| Vat110 | 4 | Ставка НДС расч. 10/110 |
| Vat0 | 5 | Ставка НДС 0% |
| None | 6 | НДС не облагается |
| Vat5 | 7 | Ставка НДС 5% |
| Vat7 | 8 | Ставка НДС 7% |
| Vat105 | 9 | Ставка НДС расч. 5/105 |
| Vat107 | 10 | Ставка НДС расч. 7/107 |
Предмет расчёта
| ReceiptPaymentSubjectTypeEnum | Числовое представление | Описание |
|---|---|---|
| Product | 1 | Товар |
| Excisable | 2 | Подакцизный товар |
| Job | 3 | Работа |
| Service | 4 | Услуга |
| GamblingBet | 5 | Ставка азартной игры |
| GamblingGain | 6 | Выигрыш азартной игры |
| LotteryTicket | 7 | Лотерейный билет |
| LotteryWinnings | 8 | Выигрыш лотереи |
| Rid | 9 | Предоставление РИД |
| Payment | 10 | Платёж |
| AgentComission | 11 | Агентское вознаграждение |
| Composite | 12 | Составной предмет расчета |
| Other | 13 | Иной предмет расчета |
Способ расчета
| ReceiptPaymentMethodTypeEnum | Числовое представление | Описание |
|---|---|---|
| Prepay | 1 | Предоплата 100% |
| PartialPrepay | 2 | Частичная предоплата |
| Advance | 3 | Аванс |
| Full | 4 | Полный расчёт |
| PartialAndCredit | 5 | Частичный расчёт и кредит |
| CreditTransfer | 6 | Передача в кредит |
| CreditPayment | 7 | Оплата кредита |
Система налогообложения
| ReceiptTaxationSystemEnum | Числовое представление | Описание |
|---|---|---|
| Common | 0 | Общая |
| Simplified | 1 | Упрощенная доход, УСН доход |
| SimplifiedMinusOutlay | 2 | Упрощенная доход минус расход, УСН доход - расход |
| UnifiedImputedIncome | 3 | Единый налог на вмененный доход |
| UnifiedAgricultural | 4 | Единый сельскохозяйственный налог |
| Patent | 5 | Патентная система налогообложения |
| SelfEmployed | 6 | Налог на профессиональный доход |
Тип оплаты
| ReceiptPaymentTypeEnum | Числовое представление | Описание |
|---|---|---|
| Cash | 1 | Сумма по чеку наличными |
| Electronic | 2 | Сумма по чеку электронными |
| Advance | 14 | Сумма по чеку предоплатой |
| Credit | 15 | Сумма по чеку постоплатой |
| Other | 16 | Сумма по чеку встречным предоставлением |
- No labels