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

API
Главная / API - Изменение получателя

Изменение получателя по заказу

Обновлено 27.04.2024
157 кб

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

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

Смена получателя доступна только отправителю или пользователю, имеющему полный доступ к отправителю (подробнее о полном доступе см. в описании параметра ответа info.accessLevel метода "Список контрагентов"). Для проверки возможности изменения получателя по заказу следует использовать метод "Доступные изменения".

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

Изменение получателя по заказу

Запрос метода

Структура запроса 

Адрес метода: https://api.dellin.ru/v3/orders/change_receiver.json 

{
   "appkey":"00000000-0000-0000-0000-000000000000",
   "sessionID":"00000000-0000-0000-0000-000000000000",
   "orderID":"00000000",
   "receiver":{
      "counteragentID":456783515,
      "counteragent":{
         "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"
         }
      ],
      "email":"test@mail.ru",
      "dataForReceipt":{
         "phone":"+79999999999",
         "email":"test@mail.ru"
      }
   },
   "changeOrderPayer":true,
   "storePayer":"third",
   "third":{
      "counteragentID":456783515,
      "counteragent":{
         "form":"0x8F51001438C4D49511DBD774581EDB80",
         "document":{
            "type":"passport",
            "serial":"1111",
            "number":"123456"
         },
         "inn":1234567890,
         "name":"Ромашка",
         "juridicalAddress":{
            "search":"Новосибирская обл., Новосибирск, Кутузова, 5",
            "street":"5400000100019470000000000",
            "house":"5",
            "building":"2",
            "structure":"3А",
            "flat":"Б-234"
         }
      },
      "contactIDs":[
         12345678,
         78456123
      ],
      "contactPersons":[
         {
            "name":"Иван Иванович"
         },
         {
            "name":"Петр Петрович"
         }
      ],
      "phoneIDs":[
         98765412,
         65478921
      ],
      "phoneNumbers":[
         {
            "number":"79213332211",
            "ext":"0123"
         }
      ],
      "email":"test@mail.ru",
      "dataForReceipt":{
         "phone":"+79999999999",
         "email":"test@mail.ru"
      }
   }
}

Адрес метода: https://api.dellin.ru/v3/orders/change_receiver.xml

<request>
   <appkey>00000000-0000-0000-0000-000000000000</appkey>
   <sessionID>00000000-0000-0000-0000-000000000000</sessionID>
   <orderID>00000000</orderID>
   <receiver>
      <counteragentID>456783515</counteragentID>
      <counteragent>
         <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>
      </counteragent>
      <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>
      <email>test@mail.ru</email>
      <dataForReceipt>
         <phone>+79999999999</phone>
         <email>test@mail.ru</email>
      </dataForReceipt>
   </receiver>
   <changeOrderPayer>true</changeOrderPayer>
   <storePayer>third</storePayer>
   <third>
      <counteragentID>456783515</counteragentID>
      <counteragent>
         <form>0x8F51001438C4D49511DBD774581EDB80</form>
         <document>
            <type>passport</type>
            <serial>1111</serial>
            <number>123456</number>
         </document>
         <inn>1234567890</inn>
         <name>Ромашка</name>
         <juridicalAddress>
            <search>Новосибирская обл., Новосибирск, Кутузова, 5</search>
            <street>5400000100019470000000000</street>
            <house>5</house>
            <building>2</building>
            <structure>3А</structure>
            <flat>Б-234</flat>
         </juridicalAddress>
      </counteragent>
      <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>
      <email>test@mail.ru</email>
      <dataForReceipt>
         <phone>+79999999999</phone>
         <email>test@mail.ru</email>
      </dataForReceipt>
   </third>
</request>

Описание параметров

Request
Request
ПараметрОбязательныйТипОписание

appkey

ДаstringКлюч приложения. Для получения ключа необходимо пройти регистрацию
sessionIDДаstringID сессии. Для получения сессии необходимо воспользоваться сервисом "Авторизация пользователя"

orderID

ДаstringНомер заказа, по которому необходимо изменить получателя

receiver

ДаMemberДанные нового получателя

changeOrderPayer

Даboolean

Флаг, обозначающий необходимость назначить нового получателя плательщиком по заказу.

Возможные значения:

  • "true" - назначить нового получателя плательщиком;
  • "false" - не менять плательщика

storePayer

Даstring

Сторона, берущая на себя расходы на платное хранение.

Возможные значения:

  • "sender" - отправитель;
  • "receiver" - получатель;
  • "third" - третье лицо. В случае передачи данного значения, параметр "third" является обязательным

third

Нет*Member

Данные третьего лица

*Если значение параметра "storePayer" - "third", то параметр является обязательным

Member
Member
ПараметрОбязательныйТипОписание

counteragentID

Нет*integer

ID контрагента из "Aдресной книги".

*Обязательно должен быть передан один из взаимоисключающих параметров: "counteragentID" или "counteragent" 

counteragent

Нет*Counteragent

Данные контрагента.

*Обязательно должен быть передан один из взаимоисключающих параметров: "counteragentID" или "counteragent" 

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 цифр

email

Нетstring

Электронный адрес заказчика перевозки.

Максимальная длина поля - 128 символов

dataForReceipt

Нетobject

Контактные данные для отправки электронного чека плательщику-физическому лицу. Параметр используется в следующих случаях:

  1. Если новый получатель является физическим лицом и будет выступать в качестве плательщика по заказу (значение параметра запроса "changeOrderPayer" - "true", в качестве значения параметра запроса "receiver.counteragent.form" передан UID ОПФ физического лица).
  2. Плательщик, берущий на себя расходы на платное хранение, не выступает в качестве отправителя/получателя заказа и является физическим лицом(значение параметра запроса "storePayer" - "third", в качестве значения параметра запроса "third.counteragent.form" передан UID ОПФ физического лица)
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

НетAddress

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

Address

Address

ПараметрОбязательныйТипОписание

search

Нет*string

Адрес в виде текста.

Для передачи юридического адреса не следует использовать координаты.

При передаче адреса в виде текста в запрос следует включать:

  • наименование региона с указанием его типа: область, край и т. п. (для корректного разбора адресов одноименных населенных пунктов),
  • наименование населённого пункта,
  • наименование улицы;
  • номер дома.

Элементы необходимо указывать через запятую, например "Омская обл., Омск, Ленина, 5".

Минимальная длина поля - 2 символа, максимальная - 1024 символа

*Передача параметра "search" или пары параметров "street" и "house" является обязательной.Параметр "search" и набор параметров "street", "house", "building" и "structure" являются взаимоисключающими
streetНет*string

Код КЛАДР улицы (см. "Поиск КЛАДР")

*Передача параметра "search" или пары параметров "street" и "house" является обязательнойПараметр "search" и набор параметров "street", "house", "building" и "structure" являются взаимоисключающими
houseНет*string

Номер дома, включая литеру. Например, "13/А".

Максимальная длина поля - 7 символов

*Передача параметра "search" или пары параметров "street" и "house" является обязательнойПараметр "search" и набор параметров "street", "house", "building" и "structure" являются взаимоисключающими
buildingНетstring

Корпус.

Максимальная длина поля - 5 символов

Параметр "search" и набор параметров "street", "house", "building" и "structure" являются взаимоисключающими
structureНетstring

Строение.

Максимальная длина поля - 7 символов

Параметр "search" и набор параметров "street", "house", "building" и "structure" являются взаимоисключающими
flatНетstring

Номер квартиры/офиса. Допускается написание с буквой, например "222 А".

Максимальная длина поля - 5 символов

*Если одновременно переданы параметры "search" и "flat", то в качестве номера квартиры/офиса будет использоваться значение параметра "flat"

Ответ метода

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

{
   "metadata":{
      "status":200,
      "generated_at":"2019-11-18 12:52:26"
   },
   "data":{
      "status":"success",
      "foundAddresses":[
         {
            "field":"receiver.counteragent.juridicalAddress",
            "source":"Омская обл., Омск, Ленина, 5",
            "result":"Россия, Омская обл, г Омск, ул Ленина, д 5"
         },
         {
            "field":"third.counteragent.juridicalAddress",
            "source":"Новосибирская обл., Новосибирск, Кутузова, 5",
            "result":"Россия, Новосибирская обл, г Новосибирск, ул Кутузова, д 5"
         }
      ]
   }
}
<response>
   <metadata>
      <status>200</status>
      <generated_at>2019-11-18 12:52:26</generated_at>
   </metadata>
   <data>
      <status>success</status>
      <foundAddresses>
         <field>receiver.counteragent.juridicalAddress</field>
         <source>Омск, Ленина, 5</source>
         <result>Россия, Омская обл, г Омск, ул Ленина, д 5</result>
      </foundAddresses>
      <foundAddresses>
         <field>third.counteragent.juridicalAddress</field>
         <source>Новосибирск, Кутузова, 5</source>
         <result>Россия, Новосибирская обл, г Новосибирск, ул Кутузова, д 5</result>
      </foundAddresses>
   </data>
</response>

Описание параметров  

Response
Response
ПараметрТипОписание
metadataobjectСистемная информация
metadata.statusinteger

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

metadata.generated_atstring

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

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

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

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

Статус "success" означает, что заявка на внесение изменений была принята. После дополнительной проверки заявка может быть одобрена или отклонена. Проверить статус заявки можно при помощи метода "История изменений заказа". 
data.foundAddressesarray of FoundAddressesДанные по найденным адресам. Параметр присутствует в ответе, только если в запросе был передан параметр "juridicalAddress.search" класса Counteragent

FoundAddresses
FoundAddresses
ПараметрТипОписание
fieldstringОбъект, в котором был передан параметр "search"
sourcestring

Введённое значение

resultstring

Найденный адрес

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

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

Номер ошибки

http-код

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

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

610001

400

По данному заказу изменение получателя недоступно

-

610002

400По данному заказу изменение получателя недоступноИзменение по данному заказу недоступно в связи с отсутствием доступа

610003

400Указан анонимный контрагентДанная операция невозможна для контрагента анонима

610014

400Ошибка наложенного платежаПолучателем в заказе с наложенным платежом может быть только физическое лицо