cdek.apps.order package

class cdek.apps.order.OrderApp(client: CdekClient)[исходный код]

Базовые классы: App

Класс для работы с заказами

client_return(uuid: str, tariff_code: int) EntityResponse[исходный код]

Регистрация клиентского возврата

Args:

uuid: идентификатор заказа tariff_code: код тарифа

Returns:

EntityResponse: объект с информацией о регистрации клиентского возврата

create(order: OrderRequest) EntityResponse[исходный код]

Создать заказ в системе CDEK

Args:

order: объект OrderRequest с параметрами запроса

Returns:

EntityResponse: объект с информацией о созданном заказе

Raises:

ValueError: если order не является объектом OrderRequest

delete(uuid: str) EntityResponse[исходный код]

Удалить заказ по его UUID

Args:

uuid: идентификатор заказа

Returns:

EntityResponse: объект с информацией о удаленном заказе

Raises:

ValueError: если uuid не является строкой

get_by_cdek_number(cdek_number: str) OrderEntityResponse[исходный код]

Полная информация о заказе по трек номеру

Args:

cdek_number: трек номер заказа

Returns:

OrderEntityResponse: объект с информацией о заказе

get_by_im_number(im_number: str) OrderEntityResponse[исходный код]

Полная информация о заказе по ID заказа в магазине

Args:

im_number: ID заказа в магазине

Returns:

OrderEntityResponse: объект с информацией о заказе

get_by_uuid(uuid: str) OrderEntityResponse[исходный код]

Полная информация о заказе по uuid

Args:

uuid: идентификатор заказа

Returns:

OrderEntityResponse: объект с информацией о заказе

refusal(uuid: str) EntityResponse[исходный код]

Регастрация отказа

Регистрации отказа по заказу и дальнейшего возврата данного заказа в интернет-магазин. После успешной регистрации отказа статус заказа переходит в «Не вручен» (код NOT_DELIVERED) с дополнительным статусом «Возврат, отказ от получения: Без объяснения» (код 11). Заказ может быть отменен в любом статусе*, пока не установлен статус «Вручен» или «Не вручен». * Не рекомендуется использовать метод для заказов, которые находятся в статусе «Создан» и не планируются к отгрузке на склады СДЭК. В случае применения метода отказа для заказов, находящихся в статусе «Создан», по ним будут начислены операции и заказы будут включены в Акт оказанных услуг. Для отмены заказа в статусе «Создан» воспользуйтесь методом «Удаление заказа».

Args:

uuid: идентификатор заказа

Returns:

EntityResponse: объект с информацией о регистрации отказа

Raises:

ValueError: если uuid не является строкой

update(order: OrderUpdateRequest) EntityResponse[исходный код]

Обновить сведения по ранее созданному заказу

Args:

order: объект OrderUpdateRequest с параметрами запроса

Returns:

EntityResponse: объект с информацией о обновленном заказе

Raises:

ValueError: если order не является объектом OrderUpdateRequest

class cdek.apps.order.OrderEntityResponse(*, entity: OrderResponse | None = None, requests: list[Request] | None = None, related_entities: list[RelatedEntity] | None = None)[исходный код]

Базовые классы: EntityResponse

Модель ответа о заказе.

entity: OrderResponse | None
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class cdek.apps.order.OrderRequest(*, type: int | None = None, number: str | None = None, accompanying_number: str | None = None, tariff_code: int, comment: str | None = None, shipment_point: str | None = None, delivery_point: str | None = None, delivery_recipient_cost: ~cdek.apps.models.order.DeliveryRecipientCost | None = None, delivery_recipient_cost_adv: list[~cdek.apps.models.order.DeliveryCostThreshold] | None = None, sender: ~cdek.apps.models.contact.Contact | None = None, seller: ~cdek.apps.models.seller.Seller | None = None, recipient: ~cdek.apps.models.contact.Contact, from_location: ~cdek.apps.models.location.OrderLocation | None = None, to_location: ~cdek.apps.models.location.OrderLocation | None = None, services: list[~cdek.apps.models.order.AdditionalService] | None = None, packages: list[~cdek.apps.models.package.Package] = <factory>, has_reverse_order: bool | None = None, additional_order_types: list[int] | None = None, date_invoice: ~datetime.date | None = None, shipper_name: str | None = None, shipper_address: str | None = None, is_client_return: bool | None = None, print: str | None = None, widget_token: str | None = None)[исходный код]

Базовые классы: Order

Модель для запроса на создание заказа.

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

print: str | None
widget_token: str | None
class cdek.apps.order.OrderResponse(*, type: int, number: str | None = None, accompanying_number: str | None = None, tariff_code: int, comment: str | None = None, shipment_point: str | None = None, delivery_point: str | None = None, delivery_recipient_cost: ~cdek.apps.models.order.DeliveryRecipientCost | None = None, delivery_recipient_cost_adv: list[~cdek.apps.models.order.DeliveryCostThreshold] | None = None, sender: ~cdek.apps.models.contact.Contact | None = None, seller: ~cdek.apps.models.seller.Seller | None = None, recipient: ~cdek.apps.models.contact.Contact, from_location: ~cdek.apps.order.responses.OrderLocationResponse | None = None, to_location: ~cdek.apps.models.location.OrderLocation | None = None, services: list[~cdek.apps.models.order.AdditionalService] | None = None, packages: list[~cdek.apps.models.package.Package] = <factory>, has_reverse_order: bool | None = None, additional_order_types: list[int] | None = None, date_invoice: ~datetime.date | None = None, shipper_name: str | None = None, shipper_address: str | None = None, is_client_return: bool | None = None, uuid: str, is_return: bool | None = None, is_reverse: bool | None = None, cdek_number: int | None = None, accompanying_waybill: ~cdek.apps.models.order.AccompanyingWaybill | None = None, keep_free_until: ~datetime.datetime | None = None, statuses: list[~cdek.apps.models.order.OrderStatus], delivery_mode: str | None = None, planned_delivery_date: ~datetime.date | None = None, delivery_detail: ~cdek.apps.models.order.DeliveryDetail | None = None, transacted_payment: bool | None = None, delivery_problem: ~cdek.apps.models.order.DeliveryProblem | None = None, developer_key: str | None = None, calls: ~cdek.apps.models.order.Call | None = None)[исходный код]

Базовые классы: Order

Модель ответа о заказе.

accompanying_waybill: AccompanyingWaybill | None
calls: Call | None
cdek_number: int | None
delivery_detail: DeliveryDetail | None
delivery_mode: str | None
delivery_problem: DeliveryProblem | None
developer_key: str | None
from_location: OrderLocationResponse | None
is_client_return: bool | None
is_return: bool | None
is_reverse: bool | None
keep_free_until: datetime | None
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

planned_delivery_date: Date | None
serialize_keep_free_until(keep_free_until: datetime) str[исходный код]

Представить дату окончания бесплатного хранения в формате ISO 8601

serialize_planned_delivery_date(planned_delivery_date: date) str[исходный код]

Вернуть плановую дату доставки в формате YYYY-MM-DD

statuses: list[OrderStatus]
transacted_payment: bool | None
type: int
uuid: str
class cdek.apps.order.OrderUpdateRequest(*, type: int | None = None, number: str | None = None, accompanying_number: str | None = None, tariff_code: int | None = None, comment: str | None = None, shipment_point: str | None = None, delivery_point: str | None = None, delivery_recipient_cost: DeliveryRecipientCost | None = None, delivery_recipient_cost_adv: list[DeliveryCostThreshold] | None = None, sender: Contact | None = None, seller: Seller | None = None, recipient: Contact, from_location: OrderLocation | None = None, to_location: OrderLocation | None = None, services: list[AdditionalService] | None = None, packages: list[Package] | None = None, has_reverse_order: bool | None = None, uuid: str | None = None, cdek_number: int | None = None)[исходный код]

Базовые классы: UpdateOrder

Изменение заказа

cdek_number: int | None
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

uuid: str | None

Submodules

cdek.apps.order.order module

class cdek.apps.order.order.OrderApp(client: CdekClient)[исходный код]

Базовые классы: App

Класс для работы с заказами

client_return(uuid: str, tariff_code: int) EntityResponse[исходный код]

Регистрация клиентского возврата

Args:

uuid: идентификатор заказа tariff_code: код тарифа

Returns:

EntityResponse: объект с информацией о регистрации клиентского возврата

create(order: OrderRequest) EntityResponse[исходный код]

Создать заказ в системе CDEK

Args:

order: объект OrderRequest с параметрами запроса

Returns:

EntityResponse: объект с информацией о созданном заказе

Raises:

ValueError: если order не является объектом OrderRequest

delete(uuid: str) EntityResponse[исходный код]

Удалить заказ по его UUID

Args:

uuid: идентификатор заказа

Returns:

EntityResponse: объект с информацией о удаленном заказе

Raises:

ValueError: если uuid не является строкой

get_by_cdek_number(cdek_number: str) OrderEntityResponse[исходный код]

Полная информация о заказе по трек номеру

Args:

cdek_number: трек номер заказа

Returns:

OrderEntityResponse: объект с информацией о заказе

get_by_im_number(im_number: str) OrderEntityResponse[исходный код]

Полная информация о заказе по ID заказа в магазине

Args:

im_number: ID заказа в магазине

Returns:

OrderEntityResponse: объект с информацией о заказе

get_by_uuid(uuid: str) OrderEntityResponse[исходный код]

Полная информация о заказе по uuid

Args:

uuid: идентификатор заказа

Returns:

OrderEntityResponse: объект с информацией о заказе

refusal(uuid: str) EntityResponse[исходный код]

Регастрация отказа

Регистрации отказа по заказу и дальнейшего возврата данного заказа в интернет-магазин. После успешной регистрации отказа статус заказа переходит в «Не вручен» (код NOT_DELIVERED) с дополнительным статусом «Возврат, отказ от получения: Без объяснения» (код 11). Заказ может быть отменен в любом статусе*, пока не установлен статус «Вручен» или «Не вручен». * Не рекомендуется использовать метод для заказов, которые находятся в статусе «Создан» и не планируются к отгрузке на склады СДЭК. В случае применения метода отказа для заказов, находящихся в статусе «Создан», по ним будут начислены операции и заказы будут включены в Акт оказанных услуг. Для отмены заказа в статусе «Создан» воспользуйтесь методом «Удаление заказа».

Args:

uuid: идентификатор заказа

Returns:

EntityResponse: объект с информацией о регистрации отказа

Raises:

ValueError: если uuid не является строкой

update(order: OrderUpdateRequest) EntityResponse[исходный код]

Обновить сведения по ранее созданному заказу

Args:

order: объект OrderUpdateRequest с параметрами запроса

Returns:

EntityResponse: объект с информацией о обновленном заказе

Raises:

ValueError: если order не является объектом OrderUpdateRequest

cdek.apps.order.requests module

class cdek.apps.order.requests.OrderRequest(*, type: int | None = None, number: str | None = None, accompanying_number: str | None = None, tariff_code: int, comment: str | None = None, shipment_point: str | None = None, delivery_point: str | None = None, delivery_recipient_cost: ~cdek.apps.models.order.DeliveryRecipientCost | None = None, delivery_recipient_cost_adv: list[~cdek.apps.models.order.DeliveryCostThreshold] | None = None, sender: ~cdek.apps.models.contact.Contact | None = None, seller: ~cdek.apps.models.seller.Seller | None = None, recipient: ~cdek.apps.models.contact.Contact, from_location: ~cdek.apps.models.location.OrderLocation | None = None, to_location: ~cdek.apps.models.location.OrderLocation | None = None, services: list[~cdek.apps.models.order.AdditionalService] | None = None, packages: list[~cdek.apps.models.package.Package] = <factory>, has_reverse_order: bool | None = None, additional_order_types: list[int] | None = None, date_invoice: ~datetime.date | None = None, shipper_name: str | None = None, shipper_address: str | None = None, is_client_return: bool | None = None, print: str | None = None, widget_token: str | None = None)[исходный код]

Базовые классы: Order

Модель для запроса на создание заказа.

accompanying_number: str | None
additional_order_types: list[int] | None
comment: str | None
date_invoice: Date | None
delivery_point: str | None
delivery_recipient_cost: DeliveryRecipientCost | None
delivery_recipient_cost_adv: list[DeliveryCostThreshold] | None
from_location: OrderLocation | None
has_reverse_order: bool | None
is_client_return: bool | None
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

number: str | None
packages: list[Package]
print: str | None
recipient: Contact
seller: Seller | None
sender: Contact | None
services: list[AdditionalService] | None
shipment_point: str | None
shipper_address: str | None
shipper_name: str | None
tariff_code: int
to_location: OrderLocation | None
type: int | None
widget_token: str | None
class cdek.apps.order.requests.OrderUpdateRequest(*, type: int | None = None, number: str | None = None, accompanying_number: str | None = None, tariff_code: int | None = None, comment: str | None = None, shipment_point: str | None = None, delivery_point: str | None = None, delivery_recipient_cost: DeliveryRecipientCost | None = None, delivery_recipient_cost_adv: list[DeliveryCostThreshold] | None = None, sender: Contact | None = None, seller: Seller | None = None, recipient: Contact, from_location: OrderLocation | None = None, to_location: OrderLocation | None = None, services: list[AdditionalService] | None = None, packages: list[Package] | None = None, has_reverse_order: bool | None = None, uuid: str | None = None, cdek_number: int | None = None)[исходный код]

Базовые классы: UpdateOrder

Изменение заказа

accompanying_number: str | None
cdek_number: int | None
comment: str | None
delivery_point: str | None
delivery_recipient_cost: DeliveryRecipientCost | None
delivery_recipient_cost_adv: list[DeliveryCostThreshold] | None
from_location: OrderLocation | None
has_reverse_order: bool | None
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

number: str | None
packages: list[Package] | None
recipient: Contact
seller: Seller | None
sender: Contact | None
services: list[AdditionalService] | None
shipment_point: str | None
tariff_code: int | None
to_location: OrderLocation | None
type: int | None
uuid: str | None

cdek.apps.order.responses module

class cdek.apps.order.responses.OrderEntityResponse(*, entity: OrderResponse | None = None, requests: list[Request] | None = None, related_entities: list[RelatedEntity] | None = None)[исходный код]

Базовые классы: EntityResponse

Модель ответа о заказе.

entity: OrderResponse | None
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

related_entities: list[RelatedEntity] | None
requests: list[Request] | None
class cdek.apps.order.responses.OrderLocationResponse(*, postal_code: str | None = None, longitude: float | None = None, latitude: float | None = None, region: str | None = None, region_code: int | None = None, kladr_region_code: str | None = None, sub_region: str | None = None, country_code: Annotated[str | None, MaxLen(max_length=2)] = None, country: Annotated[str | None, MaxLen(max_length=255)] = None, code: int | None = None, city_uuid: UUID | None = None, city: str | None = None, fias_guid: UUID | None = None, time_zone: str | None = None, address: str | None = None)[исходный код]

Базовые классы: BaseOrderLocation

Модель ответа о локации заказа.

address: str | None
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class cdek.apps.order.responses.OrderResponse(*, type: int, number: str | None = None, accompanying_number: str | None = None, tariff_code: int, comment: str | None = None, shipment_point: str | None = None, delivery_point: str | None = None, delivery_recipient_cost: ~cdek.apps.models.order.DeliveryRecipientCost | None = None, delivery_recipient_cost_adv: list[~cdek.apps.models.order.DeliveryCostThreshold] | None = None, sender: ~cdek.apps.models.contact.Contact | None = None, seller: ~cdek.apps.models.seller.Seller | None = None, recipient: ~cdek.apps.models.contact.Contact, from_location: ~cdek.apps.order.responses.OrderLocationResponse | None = None, to_location: ~cdek.apps.models.location.OrderLocation | None = None, services: list[~cdek.apps.models.order.AdditionalService] | None = None, packages: list[~cdek.apps.models.package.Package] = <factory>, has_reverse_order: bool | None = None, additional_order_types: list[int] | None = None, date_invoice: ~datetime.date | None = None, shipper_name: str | None = None, shipper_address: str | None = None, is_client_return: bool | None = None, uuid: str, is_return: bool | None = None, is_reverse: bool | None = None, cdek_number: int | None = None, accompanying_waybill: ~cdek.apps.models.order.AccompanyingWaybill | None = None, keep_free_until: ~datetime.datetime | None = None, statuses: list[~cdek.apps.models.order.OrderStatus], delivery_mode: str | None = None, planned_delivery_date: ~datetime.date | None = None, delivery_detail: ~cdek.apps.models.order.DeliveryDetail | None = None, transacted_payment: bool | None = None, delivery_problem: ~cdek.apps.models.order.DeliveryProblem | None = None, developer_key: str | None = None, calls: ~cdek.apps.models.order.Call | None = None)[исходный код]

Базовые классы: Order

Модель ответа о заказе.

accompanying_number: str | None
accompanying_waybill: AccompanyingWaybill | None
additional_order_types: list[int] | None
calls: Call | None
cdek_number: int | None
comment: str | None
date_invoice: Date | None
delivery_detail: DeliveryDetail | None
delivery_mode: str | None
delivery_point: str | None
delivery_problem: DeliveryProblem | None
delivery_recipient_cost: DeliveryRecipientCost | None
delivery_recipient_cost_adv: list[DeliveryCostThreshold] | None
developer_key: str | None
from_location: OrderLocationResponse | None
has_reverse_order: bool | None
is_client_return: bool | None
is_return: bool | None
is_reverse: bool | None
keep_free_until: datetime | None
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

number: str | None
packages: list[Package]
planned_delivery_date: Date | None
recipient: Contact
seller: Seller | None
sender: Contact | None
serialize_keep_free_until(keep_free_until: datetime) str[исходный код]

Представить дату окончания бесплатного хранения в формате ISO 8601

serialize_planned_delivery_date(planned_delivery_date: date) str[исходный код]

Вернуть плановую дату доставки в формате YYYY-MM-DD

services: list[AdditionalService] | None
shipment_point: str | None
shipper_address: str | None
shipper_name: str | None
statuses: list[OrderStatus]
tariff_code: int
to_location: OrderLocation | None
transacted_payment: bool | None
type: int
uuid: str