Изменение плательщика по заказу
Общие сведения
Сервис позволяет изменять плательщика по уже оформленному заказу.
Смена плательщика возможна, если у текущей учётной записи есть полный доступ к новому плательщику или грузоотправителю (в этом случае новым плательщиком может быть назначен сам грузоотправитель, грузополучатель или третье лицо). Подробнее о полном доступе см. метод "Список контрагентов", описание параметра ответа "info.accessLevel".
Если необходимо изменить получателя по заказу и назначить его плательщиком, то следует использовать метод "Изменение получателя по заказу".
Для проверки возможности изменения плательщика следует использовать метод "Доступные изменения заказа".
Изменения вступают в силу не сразу. После дополнительной проверки заявка на внесение изменений может быть одобрена или отклонена. Проверить статус заявки можно при помощи метода "История изменений заказа".
Изменение плательщика по заказу
Запрос метода
Структура запроса
Адрес метода: https://api.dellin.ru/v3/orders/change_payer.json
{ "appkey":"00000000-0000-0000-0000-000000000000", "sessionID":"00000000-0000-0000-0000-000000000000", "orderID":"00000000", "docUID":"0x81870050568388af11ea718b63f47df1", "counteragentUID":"0x8f51001438c4d49511dbd774581edb7a", "third":{ "form":"0x8F51001438C4D49511DBD774581EDB80", "document":{ "type":"passport", "serial":"1111", "number":"123456" }, "inn":1234567890, "name":"Ромашка", "juridicalAddress":{ "search":"Омск, Ленина, 5", "street":"5500000100005970000000000", "house":"5", "building":"1", "structure":"3А", "flat":"Б-234" } }, "contactIDs":[ 12345678, 78456123 ], "contactPersons":[ { "name":"Иван Иванович" }, { "name":"Петр Петрович" } ], "phoneIDs":[ 98765412, 65478921 ], "phoneNumbers":[ { "number":"79213332211", "ext":"0123" } ], "dataForReceipt":{ "phone":"+79999999999", "email":"test@mail.ru" } }
Адрес метода: https://api.dellin.ru/v3/orders/change_payer.xml
<request> <appkey>00000000-0000-0000-0000-000000000000</appkey> <sessionID>00000000-0000-0000-0000-000000000000</sessionID> <orderID>00000000</orderID> <docUID>0x81870050568388af11ea718b63f47df1</docUID> <counteragentUID>0x8f51001438c4d49511dbd774581edb7a</counteragentUID> <third> <form>0x8F51001438C4D49511DBD774581EDB80</form> <document> <type>passport</type> <serial>1111</serial> <number>123456</number> </document> <inn>1234567890</inn> <name>Ромашка</name> <juridicalAddress> <search>Омск, Ленина, 5</search> <street>5500000100005970000000000</street> <house>5</house> <building>1</building> <structure>3А</structure> <flat>Б-234</flat> </juridicalAddress> </third> <contactIDs>12345678</contactIDs> <contactIDs>78456123</contactIDs> <contactPersons> <name>Иван Иванович</name> </contactPersons> <contactPersons> <name>Петр Петрович</name> </contactPersons> <phoneIDs>98765412</phoneIDs> <phoneIDs>65478921</phoneIDs> <phoneNumbers> <number>79213332211</number> <ext>0123</ext> </phoneNumbers> <dataForReceipt> <phone>+79999999999</phone> <email>test@mail.ru</email> </dataForReceipt> </request>
Описание параметров
Request
Request | |||
---|---|---|---|
Параметр | Обязательный | Тип | Описание |
appkey | Да | string | Ключ приложения. Для получения ключа необходимо пройти регистрацию |
sessionID | Да | string | ID сессии. Для получения сессии необходимо воспользоваться сервисом "Авторизация пользователя" |
orderID | Да | string | Номер заказа, по которому необходимо изменить плательщика |
docUID | Нет* | string | UID накладной. UID накладной можно уточнить при помощи метода "Журнал заказов". *Если по заказу было создано несколько накладных, параметр является обязательным |
counteragentUID | Нет* | string | UID контрагента У текущей учётной записи должен быть полный доступ к контрагенту или к грузоотправителю (см. метод "Список контрагентов", описание параметра ответа "info.accessLevel") * Обязательно должен быть передан один из взаимоисключающих параметров: "counteragentUID" или "third" |
third | Нет* | Counteragent | Данные контрагента-третьего лица в виде набора параметров У текущей учётной записи должен быть полный доступ к грузоотправителю (см. метод "Список контрагентов", описание параметра ответа "info.accessLevel") * Обязательно должен быть передан один из взаимоисключающих параметров: "counteragentUID" или "third" |
contactIDs | Нет* | array of integers | Список ID контактных лиц из "Адресной книги". Максимальное количество элементов в массиве - 3. *Обязательно должен быть передан один из взаимоисключающих параметров: "contactIDs" или "contactPersons" |
contactPersons | Нет* | array of contactPersons | Данные контактных лиц. Максимальное количество элементов в массиве - 3. *Обязательно должен быть передан один из взаимоисключающих параметров: "contactIDs" или "contactPersons" |
contactPersons.name | Да | string | Имя контактного лица |
phoneIDs | Нет* | array of integers | Список ID телефонных номеров из "Адресной книги". Максимальное количество элементов в массиве - 3. *Обязательно должен быть передан один из взаимоисключающих параметров: "phoneIDs" или "phoneNumbers" |
phoneNumbers | Нет* | array of phoneNumbers | Список телефонных номеров. Максимальное количество элементов в массиве - 3. *Обязательно должен быть передан один из взаимоисключающих параметров: "phoneIDs" или "phoneNumbers" |
phoneNumbers.number | Да | string | Номер телефона. Максимум 15 цифр |
phoneNumbers.ext | Нет | string | Добавочный номер. Максимум 5 цифр |
dataForReceipt | Нет | object | Контактные данные для отправки электронного чека плательщику-физическому лицу. Параметр используется в случае, если плательщик является физическим лицом |
dataForReceipt.phone | Нет* | string | Номер телефона для отправки чека в формате "+79XXXXXXXXX" (где X - любая цифра) *Обязательно должен быть передан хотя бы один из параметров: "dataForReceipt.phone", "dataForReceipt.email" |
dataForReceipt.email | Нет* | string | Адрес электронной почты для отправки чека. Максимум 128 символов *Обязательно должен быть передан хотя бы один из параметров: "dataForReceipt.phone", "dataForReceipt.email" |
Counteragent
Counteragent | |||
---|---|---|---|
Параметр | Обязательный | Тип | Описание |
form | Да | string | UID организационно-правовой формы контрагента (ОПФ), см. "Поиск ОПФ" |
document | Нет* | object | Данные документа, удостоверяющего личность. Параметр используется только для физических лиц (то есть в тех случаях, когда в качестве значения параметра "form" передан UID ОПФ физического лица). *Если контрагент является физическим лицом, то параметр является обязательным |
document.type | Да | string | Тип документа. Доступные значения:
|
document.serial | Да* | string | Серия документа. *Для некоторых стран параметр не является обязательным и игнорируется |
document.number | Да | string | Номер документа. Формат номера зависит от страны |
inn | Нет* | integer | ИНН. Максимальная допустимая длина поля зависит от страны и ОПФ. Параметр используется только для юридических лиц (то есть в тех случаях, когда в качестве значения параметра "form" передан UID ОПФ юридического лица). *Если контрагент является юридическим лицом, то параметр является обязательным |
name | Да | string | Имя контрагента или наименование юридического лица |
juridicalAddress | Нет | object | Юридический адрес. Параметр используется только для юридических лиц (то есть в тех случаях, когда в качестве значения параметра "form" передан UID ОПФ юридического лица) |
juridicalAddress.search | Нет (1) | string | Адрес в виде произвольной строки (2). Адрес может быть передан в виде текста. При передаче адреса в виде текста, помимо собственно адреса, в запрос следует включать наименование населённого пункта, элементы необходимо указывать через запятую, например, "Омск, Ленина, 5". Минимум 2 символа, максимум - 1024 |
juridicalAddress.street | Нет (1) | string | Код КЛАДР улицы (см. "Поиск КЛАДР") (2) |
juridicalAddress.house | Нет (1) | string | Номер дома, включая литеру. Например, "13/А" (2). Максимум 7 символов |
juridicalAddress.building | Нет | string | Корпус (2). Максимум 5 символов |
juridicalAddress.structure | Нет | string | Строение (2). Максимум 7 символов |
juridicalAddress.flat | Нет | string | Номер квартиры/офиса. Допускается написание с буквой, например "222 А" (2). Максимум 5 символов |
Примечания:
|
Ответ метода
Структура ответа
{ "metadata":{ "status":200, "generated_at":"2019-11-18 12:52:26" }, "data":{ "status":"success" } }
<response> <metadata> <status>200</status> <generated_at>2019-11-18 12:52:26</generated_at> </metadata> <data> <status>success</status> </data> </response>
Описание параметров
Response
Response | ||
---|---|---|
Параметр | Тип | Описание |
metadata | object | Системная информация |
metadata.status | integer | Эмуляция http-кода состояния. В случае успешного выполнения возвращается код "200". В случае ошибки - "400" |
metadata.generated_at | string | Дата и время генерации ответа сервера. Формат: "ГГГГ-ММ-ДД ЧЧ:ММ:СС" |
data | object | Подтверждение успешности операции |
data.status | string | Статус операции на английском языке. Возможное значение - "success" Статус "success" означает, что заявка на внесение изменений была принята. После дополнительной проверки заявка может быть одобрена или отклонена. Проверить статус заявки можно при помощи метода "История изменений заказа" |
Обработка ошибок
Помимо общих ошибок API, в ответе метода могут присутствовать следующие ошибки:
Номер ошибки | http-код | Краткое описание ошибки | Детальное описание ошибки |
---|---|---|---|
611001 | 400 | По данному заказу изменение плательщика недоступно | - |
611002 | 400 | По данному заказу изменение плательщика недоступно | Детальное описание ошибки содержит уточняющую информацию. Текст варьируется в зависимости от проверяемого параметра |
611003 | 400 | Необходимо указать накладную | - |
611004 | 400 | Данная накладная уже оплачена | - |