Перейти к содержанию

Создание чека коррекции


Описание

Используется для создания чека коррекции.

POST (Уровень доступа: Базовый)

https://api.intellectmoney.ru/personal/cashBox/createReceiptCorrection
Онлайн-касса в настройках магазина должна быть "Выключена".

Мера предотвращает недоразумения о том, кто и когда формирует чеки.

Заголовки запроса

Параметр Свойства Описание
Accept STRING OPTIONAL application/json Заголовок, указывающий формат данных, которые клиент хочет получить от сервера.
Content-Type STRING OPTIONAL application/json application/xml Заголовок, указывающий формат данных в теле запроса.
Authorization STRING REQUIRED Bearer {token} Заголовок, используемый для авторизации клиента с помощью Bearer-токена.
Подробнее об использование Bearer-токена.
Sign STRING REQUIRED Заголовок с подписью для авторизации запроса.
Подробнее об использовании контрольной подписи.

Сигнатура подписи:
UserToken::InvoiceId::DocumentId::MerchantReceiptCorrection::SignSecretKey

Тело запроса

Параметр Свойства Описание
UserToken STRING REQUIRED Токен-пользователя.
Для получения использовать метод GetUserToken.
InvoiceId STRING REQUIRED 3xxxxxxxxx Номер СКО.
DocumentId STRING REQUIRED Номер чека.
Для получения использовать методы: CreateReceipt, CreateReceiptCorrection.
MerchantReceiptCorrection OBJECT REQUIRED Чек коррекции для онлайн-кассы.
Подробнее о правилах формирования чека.

Тело ответа

Поле Тип Описание
OperationState OperationState Статус выполнения операции.
OperationId GUID Идентификатор операции.
EshopId INT Номер магазина.
Result CashboxReceiptCorrectionResponseData Результат выполнения запроса.
Примеры кода
C#
var client = new HttpClient();

var request = new HttpRequestMessage(HttpMethod.Post, "https://api.intellectmoney.ru/personal/cashBox/createReceiptCorrection");

request.Headers.Add("Accept", "application/json");
request.Headers.Add("Content-Type", "application/json");
request.Headers.Add("Authorization", "Bearer 9d97820c61424eb6ac0db414ccb7ac60");
request.Headers.Add("Sign", "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855");

var collection = new List<KeyValuePair<string, string>>();
collection.Add(new("UserToken", "YdUlqkFcVo62XmY6B9VLJfwUODqE9ODk8/q/s1uXguWmiiPUo+R8YpiYt6g/s/IM"));
collection.Add(new("InvoiceId", "3000000000"));
collection.Add(new("DocumentId", "0123456789abcdef0123456789abcdef"));
collection.Add(new("MerchantReceiptCorrection", "{
    "Inn": "7000000000",
    "Group": "Main_2",
    "Content": {
        "Type": 1,
        "CorrectionType": 1,
        "CustomerContact": "test@mail.ru",
        "Positions": [{
                "Quantity": "1.00",
                "Price": "1.00",
                "Tax": 9,
                "Text": "Товар",
                "PaymentSubjectType": 1,
                "PaymentMethodType": 4
            }
        ],
        "CauseDocumentDate": "2025-01-01 12:00:00"
    }
}"));
var content = new FormUrlEncodedContent(collection);
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
PHP
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => 'https://api.intellectmoney.ru/personal/cashBox/createReceiptCorrection',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => '',
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 0,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'POST',
    CURLOPT_POSTFIELDS => 'UserToken=YdUlqkFcVo62XmY6B9VLJfwUODqE9ODk8/q/s1uXguWmiiPUo+R8YpiYt6g/s/IM&InvoiceId=3000000000&DocumentId=0123456789abcdef0123456789abcdef&MerchantReceiptCorrection={
    "Inn": "7000000000",
    "Group": "Main_2",
    "Content": {
        "Type": 1,
        "CorrectionType": 1,
        "CustomerContact": "test@mail.ru",
        "Positions": [{
                "Quantity": "1.00",
                "Price": "1.00",
                "Tax": 9,
                "Text": "Товар",
                "PaymentSubjectType": 1,
                "PaymentMethodType": 4
            }
        ],
        "CauseDocumentDate": "2025-01-01 12:00:00"
    }
}',
    CURLOPT_HTTPHEADER => array(
        'Accept: application/json',
        'Content-Type: application/json',
        'Authorization: Bearer 9d97820c61424eb6ac0db414ccb7ac60',
        'Sign: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855',
   ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
Пример ответов
JSON
{
    "OperationState": {
        "Code": 0,
        "Desc": "Успешно обработана"
    },
    "Result": {
        "State": {
            "Code": 0,
            "Desc": "Успешно обработан"
        },
        "CashboxReceiptResponseData": {
            "ReceiptId": 5580144,
            "Response": "{\n  \"id\": \"0123456789abcdef0123456789abcdef\",\n  \"deviceSN\": \"0000000000000001\",\n  \"deviceRN\": \"0000000000000001\",\n  \"fsNumber\": \"7000000000000000\",\n  \"ofdName\": \"Такском\",\n  \"ofdWebsite\": \"www.taxcom.ru\",\n  \"ofdinn\": \"7000000000\",\n  \"fnsWebsite\": \"www.nalog.gov.ru\",\n  \"companyINN\": \"7000000000\",\n  \"companyName\": \"ООО \\\"Организация\\\"\",\n  \"documentNumber\": 10000,\n  \"shiftNumber\": 50,\n  \"documentIndex\": 300,\n  \"processedAt\": \"2025-01-01T12:00:00\",\n  \"processedAtTz\": \"2025-01-01T12:00:00.0000000+03:00\",\n  \"content\": {\n    \"type\": 1,\n    \"positions\": [\n      {\n        \"quantity\": 1.000,\n        \"price\": 1.0,\n        \"tax\": 6,\n        \"text\": \"Товар\"\n      }\n    ],\n    \"checkClose\": {\n      \"payments\": [\n        {\n          \"type\": 2,\n          \"amount\": 1.00\n        }\n      ],\n      \"taxationSystem\": 0\n    },\n    \"customerContact\": \"foo@example.com\",\n    \"ffdVersion\": 4\n  },\n  \"change\": 0.0,\n  \"fp\": \"2000000000\"\n}",
            "Id": "0123456789abcdef0123456789abcdef",
            "DeviceSN": "0000000000000001",
            "DeviceRN": "0000000000000001",
            "FSNumber": "7000000000000000",
            "OFDName": "Такском",
            "OFDInn": "7000000000",
            "OFDWebsite": "www.taxcom.ru",
            "FNSWebsite": "www.nalog.gov.ru",
            "CompanyINN": "7000000000",
            "CompanyName": "ООО \"Организация\"",
            "DocumentNumber": "10000",
            "ShiftNumber": 50,
            "DocumentIndex": 300,
            "ProcessedAt": "2025-01-01T12:00:00+03:00",
            "Content": {
                "FFDVersion": 4,
                "Type": "In",
                "Positions": [
                    {
                        "Quantity": 1.0,
                        "Price": 1.0,
                        "Tax": "None",
                        "Text": "Товар"
                    }
                ],
                "CheckClose": {
                    "Payments": [
                        {
                            "Type": "Electronic",
                            "Amount": 1.0
                        }
                    ],
                    "TaxationSystem": "Common"
                },
                "CustomerContact": "test@mail.ru"
            },
            "Change": 0.0,
            "FP": "2000000000",
            "ResponseState": "Ok",
            "Errors": []
        }
    }
}
JSON
{
    "OperationState": {
        "Code": 0,
        "Desc": "Успешно обработана"
    },
    "Result": {
        "State": {
            "Code": 0,
            "Desc": "Успешно обработан"
        },
        "DocumentId": "0123456789abcdef0123456789abcdef",
        "CashboxReceiptResponseData": {
            "ReceiptId": 0,
            "Response": "{\"errors\": [\"Сервер недоступен 500\"]}",
            "ResponseState": "ServerErrorRetryLater",
            "Errors": [
                "Сервер недоступен 500"
            ]
        }
    }
}