Поиск по сайту

API
Главная / API - Изменение плательщика

Изменение плательщика по заказу

Обновлено 16.08.2022

Общие сведения

Сервис позволяет изменять плательщика по уже оформленному заказу. 

Смена плательщика возможна, если у текущей учётной записи есть полный доступ к новому плательщику или грузоотправителю (в этом случае новым плательщиком может быть назначен сам грузоотправитель, грузополучатель или третье лицо). Подробнее о полном доступе см. метод "Список контрагентов", описание параметра ответа "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ДаstringID сессии. Для получения сессии необходимо воспользоваться сервисом "Авторизация пользователя"

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

ДаstringUID организационно-правовой формы контрагента (ОПФ), см. "Поиск ОПФ"

document

Нет*object

Данные документа, удостоверяющего личность. Параметр используется только для физических лиц (то есть в тех случаях, когда в качестве значения параметра "form" передан UID ОПФ физического лица).

*Если контрагент является физическим лицом, то параметр является обязательным

document.type

Даstring

Тип документа.

Доступные значения:

  • "passport" - паспорт;
  • "drivingLicence" - водительское удостоверение;
  • "foreignPassport" - заграничный паспорт. Для некоторых стран значение "foreignPassport" недоступно

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 символов

Примечания:

  1. Обязательно должен быть передан адрес - в виде произвольной строки ("juridicalAddress.search") или набора параметров (в этом случае обязательными являются параметры "juridicalAddress.street" и "juridicalAddress.house"). 
  2. Передача параметра "juridicalAddress.search" исключает передачу параметров "juridicalAddress.street", "juridicalAddress.house", "juridicalAddress.building", "juridicalAddress.structure" и "juridicalAddress.flat"

Ответ метода

Структура ответа

{
   "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
ПараметрТипОписание
metadataobjectСистемная информация
metadata.statusinteger

Эмуляция http-кода состояния. В случае успешного выполнения возвращается код "200". В случае ошибки - "400"

metadata.generated_atstring

Дата и время генерации ответа сервера.

Формат: "ГГГГ-ММ-ДД ЧЧ:ММ:СС"

dataobjectПодтверждение успешности операции
data.statusstring

Статус операции на английском языке. Возможное значение - "success"

Статус "success" означает, что заявка на внесение изменений была принята. После дополнительной проверки заявка может быть одобрена или отклонена. Проверить статус заявки можно при помощи метода "История изменений заказа"

Обработка ошибок

Помимо общих ошибок API, в ответе метода могут присутствовать следующие ошибки:

Номер ошибки

http-код

Краткое описание ошибки

Детальное описание ошибки

611001

400

По данному заказу изменение плательщика недоступно

-

611002

400По данному заказу изменение плательщика недоступноДетальное описание ошибки содержит уточняющую информацию. Текст варьируется в зависимости от проверяемого параметра

611003

400Необходимо указать накладную-

611004

400Данная накладная уже оплачена-