update-order

Изменение информации о заказе.


Ресурсы

https://selena-online.ru/rest/v1/update-order/<id> [POST, PUT]

string:id - Идентификатор заказа.

Регламент

Запрос вносит изменения в информацию о туристах, заказчике, продавце, а также договоре с туристом.

Следует учитывать, что разрешение на внесение изменений в заказы, в т.ч. через вызовы API, регулируется внутренней политикой туроператора. В частности, возможны 3 сценария:

  • Изменения запрещены (только по запросу к менеджеру)
  • Изменения разрешены (могут ограничиваться конкретной датой)
  • Изменения разрешены только для заявок в статусе "Ожидание подтверждения"

Это означает, что необходимо предварительно уточнить у туроператора действующий сценарий использования этой функции.

Структура данных

Данные передаются в теле запроса в формате JSON. Формат данных:

    {
        "seller": {
            "taxcode": string,
            "phone": string,
            "email": string
        },
        "agreement": {
            "agree_number": string,
            "agree_date": date,
            "agree_cost": int
        },
        "buyer": {
            "firstname": string,
            "middlename": string,
            "lastname": string,
            "citizenship": string,
            "birthdate": date,
            "identity": int,
            "identity_sn": string,
            "address": string,
            "phone": string,
            "email": string
        },
        "tourists": [
            {
                "id": int,
                "is_buyer": boolean,
                "firstname": string,
                "middlename": string,
                "lastname": string,
                "birthdate": date,
                "identity": int,
                "identity_sn": string,
                "address": string,
                "phone": string,
                "email": string,
                "sex": int,
                "citizenship": string
            },
            ...
        ],
        "notification": {
            "type": string,
            "message": string
        }
    }
  

Данные конечного продавца

Раздел seller является необязательным и нужен в случае, если заказ выполнен агентом и этот агент перепродаёт тур другому агентству или туроператору. Эта цепочка перепродаж может быть любой длины, здесь конечный продавец - это агентство или туроператор, который непосредственно заключает договор купли-продажи тура с потребителем - туристом или организацией. В случае, если агент, сделавший заказ, сам является конечным продавцом, раздел seller можно не использовать. Если нужно удалить из заказа данные о конечном продавце, используйте seller: null

string:taxcode - ИНН продавца. Обязательный.

string:phone - контактный телефон продавца. Обязательный.

string:email - почта продавца. Обязательный.

Данные о договоре конечного продавца с покупателем тура

Раздел agreement является необязательным и нужен в случае, если заказ выполнен агентом. Здесь указываются данные договора купли-продажи тура между агентом и потребителем - туристом или организацией. В случае, если агент, сделавший заказ, не является конечным продавцом, нужно указать данные договора конечного продавца. Если нужно удалить из заказа данные о договоре, используйте agreement: null

string:agree_number - номер договора. Необязательный. Можно использовать null для удаления информации.

date:agree_date - дата договора. Необязательный. Можно использовать null для удаления информации.

float:agree_cost - цена договора. Необязательный. Можно использовать null для удаления информации. Если указан, должен быть положительным числом больше нуля.

Данные частного лица - покупателя тура

Раздел buyer является необязательным и нужен в случае, если покупатель тура - частное лицо, не являющееся туристом в заказе. Если покупатель - один из туристов, используйте флаг is_buyer в свойствах туриста.

string:firstname - фамилия покупателя. Обязательный.

string:lastname - имя покупателя. Обязательный.

string:middlename - отчество покупателя. Обязательный.

string:citizenship - гражданство покупателя по ОКСМ (Общероссийский классификатор стран мира). Код, в контексте ОКСМ - числовой, здесь должен быть представлен строковым типом. Обязательный.

date:birthdate - дата рождения покупателя. Обязательный.

int:identity - документ, удостоверяющий личность покупателя: 1 - паспорт РФ, 2 - загранпаспорт, 3 - свидетельство о рождении, 100 - другой документ. Обязательный.

string:identity_sn - серия и номер документа, удостоверяющего личность покупателя. Обязательный. Не должен повторяться у разных туристов!

string:address - адрес покупателя. Обязательный.

string:phone - телефон покупателя. Обязательный.

string:email - почта покупателя. Необязательный.

Данные туристов

Раздел tourists является необязательным. Туристы сопоставляются по их идентификаторам - id, которые можно получить с помощью вызова get-order. Допускается включать в список только тех туристов, данные которых требуют изменения.

int:id - идентификатор туриста. Обязательный.

boolean:is_buyer - флаг "Это покупатель". Если турист является покупателем тура, раздел buyer можно не использовать, и установить этот флаг. Необязательный.

string:firstname - фамилия туриста. Обязательный.

string:lastname - имя туриста. Обязательный.

string:middlename - отчество туриста. Обязательный.

string:citizenship - гражданство туриста по ОКСМ (Общероссийский классификатор стран мира). Код, в контексте ОКСМ - числовой, здесь должен быть представлен строковым типом. Обязательный.

date:birthdate - дата рождения туриста. Обязательный.

int:identity - документ, удостоверяющий личность туриста: 1 - паспорт РФ, 2 - загранпаспорт, 3 - свидетельство о рождении, 100 - другой документ. Обязательный.

string:identity_sn - серия и номер документа, удостоверяющего личность туриста. Обязательный.

string:address - адрес туриста. Обязательный.

string:phone - телефон туриста. Обязательный.

string:email - почта туриста. Необязательный.

int:sex - пол туриста: 1 - мужской, 2 - женский. Необязательный.

Ответ

Возвращает код 200 в случае успеха или код ошибки.

Index BookingAPI