Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Version

Revision date

Revision description

1.5January 29, 2019Creation of the documentation
1.5February 4, 2019

New tags for international order registration have been added to the method "Order registration" for online store

New tags for the method "Order Change" have been added: RecipientName tag, Phone tag, Address block, DeliveryRecipientCostAdv block

A recommended phone number format has been described

Introduction

General Description

...

CDS means the CDEK Courier Delivery Service.

International Order isan order where the sender country is not the same as the receiver country, and at least one of the countries is not a member of the Customs Union.


What You Should Know to Make the Integration Work

...

Note
titleNote

The phone format is validated. We recommend to transfer the number in the international format +7 (ХХХ) ХХХ-ХХ-ХХ.

...

:


  • A number should be written in the

...

note
  • international format: country code (+7 for Russia) and then the number itself (10 or more digits)

  • A number shouldn’t contain any letters or symbols excluding special symbols:

    • ":" (colon), "#" (hash) are used to indicate an extension number

    • numbers should be separated with "," (comma), ";" (semicolon), "/" (slash)


Data are transmitted in the XML format in UTF-8 encoding. Please note that XML markup symbols (< > & " ') may not be entered in fields.

Note
titleNote

Be careful! If there aredouble or single quotation marks in the receiver's or seller's namethey must be replaced, e. g., with a space character.

...

The CDEK server will return a result in the form of XML:

Тэг/Атрибут

Описание

Тип поля

Обяз.

1

PvzList

Document title
yes

1.1

Pvz

Pickup points
yes
1.1.1CodeCodestring(10)yes
1.1.2PostalCodePostcodestring(10)yes
1.1.3NameParameterstring(50)yes
1.1.4CountryCodeCountry codeintegeryes
1.1.5CountryNameCountry namestring(50)yes
1.1.6RegionCodeRegion codeintegeryes
1.1.7RegionNameRegion namestring(50)yes
1.1.8CityCodeCity code from the CDEK base (see the file“City_XXX_YYYYMMDD.xls”)integeryes
1.1.9CityCity namestring(50)yes
1.1.10WorkTimeOpening hours, string of the following type: Mon–Fri 9–18, Sat9–16”string(100)yes
1.1.11AddressAddress (street, house, office) in the specified citystring(255)yes
1.1.12FullAddressFull address, including country, region, city, etc.string(255)yes
1.1.13AddressCommentDescription of locationstring(255)yes
1.1.14PhonePhonephoneyes
1.1.15EmailE-mailstring(255)yes
1.1.16qqIdNumber of QQ (for China)

string(10)

yes

1.1.17

Note

Pickup points note

string(255)

yes

1.1.18coordXCoordinates of location (longitude) in degreesfloatyes
1.1.19coordYCoordinates of location (latitude) in degreesfloatyes
1.1.20

Type

Pickup point type: PVZ — CDEK warehouse, POSTOMAT — CDEK partner's postamat

string(8)

yes

1.1.21

ownerCode

Affiliation of the pickup points company: CDEK — pickup point is owned by CDEK, InPost — pickup point is owned by InPost.

string(6)

yes

1.1.22IsDressingRoomAvailability of a fitting roomstring(4)yes
1.1.23

HaveCashless

Availability of payment terminal

string(4)yes
1.1.24AllowedCodCash on delivery is permitted in a pickup pointstring(4)yes
1.1.25NearestStationNearest station/public transport stopstring(50)yes
1.1.26MetroStationNearest metro stationstring(50)yes

1.1.27

SitePickup point's website on the CDEK pagestring(255)yes

1.1.28

OfficeImageAll photos of the office (except for a photo showing how to get to it)
yes

1.1.28.1

url

All photos have a separate tag with url attribute.
A link to the image is displayed.

string(255)

yes

1.1.29

WorkTimeYOpening hours for every day
yes

1.1.29.1

dayOrdinal number of a day (Monday = 1, Sunday = 7)integeryes

1.1.29.2

periodsOpening hours for these days. If the pickup point does not work on this day, no period is specifiedstring(20)yes

1.1.30

WeightLimitWeight limits for a pickup point(the tag is used only if limits are set)
yes

1.1.30.1.

WeightMinMinimum weight (in kg) accepted by a pickup point (> WeightMin)floatyes

1.1.30.2.

WeightMaxMaximum weight (in kg) accepted by a pickup point (<=WeightMax)floatyes


Example. List of pickup points

...

Registration of a Request from the Online Store

...

No.Tag / attributeDescriptionType of fieldMandatory (yes/no)1Delivery RequestDocument titleyes1.1NumberNumber of an acceptance certificate/waybill. Identifier of the list of cargoes in the IS of the CDEK client. 1 can be used a default value.string(30)yes1.2DateDate of document (date of order)datetime/dateyes1.3ForeignDeliveryAttribute of international delivery. In the current version, the value is always false.booleanyes1.4CurrencyCurrencystring(30)yes, if
ForeignDelivery =true1.5AccountClient identifierstring(255)yes1.6SecureKeystring(255)yes1.7OrderCountThe total number of orders in a document, default value: 1.integeryes1.8OrderShipment (order)yes1.8.1ClientSide6Client type: sender, receiver, third person. Possible values: “sender”, “receiver”, “other” (third party)string(10)yes1.8.2NumberClient shipment number (unique for orders of a particular client). Order identifier in the Client's IS.string(40)yes1.8.36610.3610.4616619ItemsCurrency622623yes13yes

No.

Tag / attributeDescriptionTypeof fieldMandatory (yes/no)
1Delivery RequestDocument title
yes
1.1NumberID number of the acceptance certificate/waybill (accompanying document attached upon the transfer of the cargo to CDEK, generated in the online store's system). Identifier of the list of cargoes in the IS of the CDEK client. By default, you can use 1.string(30)yes
1.2DateDate of document (date of order)Datetime/dateyes
1.3AccountOnline store identifierstring(255)yes
1.4SecureKeystring(255)yes
1.5OrderCountThe total number of orders in a document, default value: 1.integeryes
1.6Currency

Currency identifier for prices, RUB is a default parameter. Only for international orders

string(10)no
1.7OrderShipment (order)
yes
1.67.1NumberClient shipment number (unique for orders of a particular client). Order identifier in the Client's IS.string(40)yes
1.67.2SendCityCode1Sender's city code from the CDEK base (see the file “City_XXX_YYYYMMDD.xls”)integeryes
1.67.3RecCityCode1Receiver's city code from the CDEK base (see the file “City_XXX_YYYYMMDD.xls”)integeryes
1.67.4SendCityPostCode1Postal code of the sender's citystring(6)yes
1.67.5RecCityPostCoDe1Postal code of the receiver's citystring(6)yes
1.67.6SendCountryCode1Sender's country code to identify a country by postal code.string(2)no
1.67.7RecCountryCode1Receiver's country code to identify a country by postal code.string(2)no
1.67.8SendCityName1Name of sender's citystring(255)no
1.67.9RecCityName1Name of receiver's citystring(255)no
1.7.10SenderSender. Must be defined if it is different from the online store client. If the online store is a sender, the Sender tag is not available.RecipientINN

TIN of the receiver. Only for international orders.

string(12)no
1.67.10.111CompanyName of sender's companystring(128)DateInvoice

Invoice date. Only for international orders.

Date time/dateno
1.67.10.212NameSender's contact personSellerName

True seller. Used to print orders to display the true seller of goods or trade name. Only for international orders.

string (128255)no
1.7.13AddressAddress of pickupno

1.6.10.3.1

StreetStreetstring(50)yes

1.6.10.3.2

HouseHousestring(30)yes

1.6.10.3.3

FlatFlat/officestring(10SellerAddress

True seller’s address. Used to print invoices to display the address of the true seller or trade name. Only for international orders.

string (255)no
1.7.14ShipperName

Shipper. Used to print waybills. Only for international orders.

string (255)no
1.7.15ShipperAddress

Shipper’s address. Used to print waybills. Only for international orders.

string (255)no
1.7.16PhoneSender's phonephonePassport

Details of the receiver’s passport. Used to print waybills. Only for international orders.


no
1.7.616.111RecipientNameReceiver (full name). At least 3 characters.Series

Series of the receiver’s passport.

string (128255)yesno
1.7.616.122RecipientEmailReceiver's email for sending order status notifications and contacting in case of failed callsemailNumber

Number of the receiver’s passport.

string (255)no
1.67.16.133PhoneReceiver's phonephoneyes

1.6.14

TariffTypeCodeCode of tariff type (for more details, see Appendix No. 1)integeryes

1.6.15

DeliveryRecipientCost2Extra delivery charge collected by the online store from the receiver (in the specified currency)floatIssueDate

Date of issue of the receiver’s passport.

Date time/dateno
1.7.16.4IssuedBy

Issuing authority of the receiver’s passport.

string (255)no
1.7.16.5DateBirth

The receiver’s birthdate

Date time/dateno
1.7.17DeliveryRecipientVATRateVAT rate included in the extra delivery charge (for more details, see Appendix No. 4)string(10)SenderSender. Must be defined if it is different from the online store client. If the online store is a sender, the Sender tag is not available.
no
1.67.17.1DeliveryRecipientVATSumVAT amount included in the extra delivery chargefloatCompanyName of sender's companystring(128)no
1.67.17.182RecipientCurrency3Code of cash-on-delivery currency: extra delivery charge and payment for the goods to be collected from the receiver. The currency is considered to be a currency of the receiver's country (for details, see Appendix No. 3)string(10NameSender's contact personstring(128)no
1.7.17.3AddressCode of declared value currency (all items in the order). Currency of settlements with the CDEK client under contract.string(10)Address of pickup
no
1.7.17.63.201SellerNameReal seller. Used in printing orders to show a real seller of the goods or a brand nameStreetStreetstring(2550)noyes
1.7.17.63.212Comment4Comments (special notes on the order)HouseHousestring(25530)noyes
1.7.17.3.3AddressDelivery address. Depending on a delivery mode, it is necessary to specify either Street, House, Flat attributes (delivery to the receiver's address) or PvzCode (pickup)yes

1.6.22.1

StreetReceiver's street. If possible, do not specify prefixes of values, such as “st.”string(50FlatFlat/officestring(10)no
1.7.17.4PhoneSender's phonephoneno
1.7.18RecipientNameReceiver (full name). At least 3 characters.string(128)yes
1.67.22.219HouseRecipientEmailReceiver's house, building, block. If possible, do not specify prefixes of values, such as “house”.string(30)yes

1.6.22.3

FlatReceiver's flat/office. If possible, do not specify prefixes of values, such as “flat”.string(10)no

1.6.22.4

PvzCodePickup code. The attribute is required only for orders with the delivery mode “to warehouse”, provided that no additional service “Delivery in the receiver's city” is ordered (AddService="17", email for sending order status notifications and contacting in case of failed callsemailno
1.7.20PhoneReceiver's phonephoneyes
1.7.21TariffTypeCodeCode of tariff type (for more details, see Appendix 2).
If the specified pickup point is closed at the time of order creation, the order will be accepted for the nearest functioning pickup point. The receiver will be notified about change of the pickup point via SMS. If all pickup points in the city that can provide the selected service are closed, order registration will be impossible. The relevant error message will be sent.No. 1)
integeryes
1.7.22DeliveryRecipientCost2Extra delivery charge collected by the online store from the receiver (in the specified currency)floatno
1.7.23DeliveryRecipientVATRateVAT rate included in the extra delivery charge (for more details, see Appendix No. 4)string(10)yesno
1.7.PackagePackage (all packages are sent with different Package tags)24DeliveryRecipientVATSumVAT amount included in the extra delivery chargefloatno
1.6.23.1NumberPackage number (ordinal package number or order number can be used), unique for this order. Order identifier in the Client's IS.string(20)yes

1.6.23.2

BarCodePackage barcode, package identifier (if any); otherwise, transmit a value of the package number: Packege.Number). The parameter is used to handle the cargo at CDEK warehouses), unique for this order. Package identifier in the Client's IS.string(20)yes

1.6.23.3

WeightTotal weight (in grams)integeryes

1.6.23.4

SizeA5Package dimensions. Length (in centimeters)integeryes, if other dimensions are indicated, in a range of 1 to 1,500

1.6.23.5

SizeB5Package dimensions. Width (in centimeters)integeryes, if other dimensions are indicated, in a range of 1 to 1,500

1.6.23.6

SizeC5Package dimensions. Height (in centimeters)integeryes, if other dimensions are indicated, in a range of 1 to 1,500

1.6.23.7

ItemItems (goods)yes

1.6.23.7.1

AmountQuantity of goods of the same type (pcs). The maximum number is 999.Integeryes

1.6.23.7.2

WareKeyIdentifier/item number of the goods (Unique for
this Package).
string(50)yes

1.6.23.7.3

CostDeclared value of the goods (per item in the specified currency, value >=0). This value is used to calculate the amount of insurance.floatyes

1.6.23.7.4

PaymentCash on delivery (per item in the specified currency, value >=0) — cash on delivery; in case of prepayment, value = 0.floatyes

1.6.23.7.5

PaymentVATRateVAT rate included in the value of the goods (for more details, see the Appendix 4)string(10)no

1.6.23.7.6

PaymentVATSumVAT amount included in the value (payment) of the goods.floatno

1.6.23.7.7

WeightWeight (per item, in grams)integeryes

1.6.23.7.8

CommentName of the goods (may contain description of the goods: size, color)string(255)yes
1.6.24DeliveryRecipientCostAdv

Additional charge for delivery (E-shop charges the receiver), depending on the order’s sum

no
1.6.24.1Threshold

Goods price threshold (valid by condition less than or equal to), in even monetary units

integeryes
1.6.24.2Sum

Additional charge for delivery with total amount that falls within the interval

floatyes
1.6.24.3VATRate

VAT rate included in the additional charge for delivery (for more details, see Appendix No. 4). If the value is unknown, then default value “No VAT” is applied

string(10)no
1.6.24.4VATSum

VAT sum included in the additional charge for delivery

floatno

1.6.25

AddServiceAdditional servicesno

1.6.25.1

ServiceCodeType of additional service (for more details, see Appendix No. 2)integeryes
1.6.26Schedule7

Schedule for delivery /pickup

no

1.6.26.1

Attempt

Time of delivery (one time interval not less than 3 hours is permitted for one day)

yes

1.6.26.1.1

ID

ID number of a schedule from the online store's database. You may use 1 as a default value

integeryes

1.6.26.1.2

Date

Date of delivery (only date, in the format “YYYY-MM-DD”, no time) as agreed by the receiver

dateyes
1.6.26.1.3CommentCommentstring(255)no

1.6.26.1.4

TimeBeg

Start of a delivery time range (receiver's time)

timeno

1.6.26.1.5

TimeEnd

End of a delivery time range (receiver's time)

timeno

1.6.26.1.8

Address

New delivery address (if change is required). Depending on a delivery mode, Street or House attributes should be specified. Flat – delivery to the receiver's address, or PvzCode – pickup

no

1.6.26.1.8.1

Street

Receiver's street. If possible, do not specify prefixesof values, such as “str”

string(50)yes

1.6.26.1.8.2

House

Receiver's house, building, block. If possible, do not specify prefixes of values, such as “house”

string(30)yes

1.6.26.1.8.3

Flat

Receiver's flat/office. If possible, do not specify prefixes of values, such as “flat.”

string(10)no
1.6.26.1.8.4PvzCode

Pickup code, required only for orders with a delivery mode “to warehouse” and provided that no additional service “Delivery in the receiver's city” has been ordered.

string(10)yes
1.7CallCourier8Call courierno

1.7.1

Call

Waiting for a courier

yes

1.7.1.1

Date

Date of courier waiting

dateyes

1.7.1.2

TimeBeg

Start time of courier waiting

timeyes

1.7.1.3

TimeEnd

End time of courier waiting

timeyes

1.7.1.4

LunchBeg

Start time of a lunch break, if it is within a time range [TimeBeg; TimeEnd]

timeno

1.7.1.5

LunchEnd

End time of a lunch break, if it is within a time range [TimeBeg; TimeEnd]

timeno

1.7.1.6

SendCityCode1

Sender's city code from the CDEK base (see the file “City_XXX_YYYYMMDD.xls”)

integeryes

1.7.1.7

SendCityPostCode1

Postal code of the sender's city

string(6)yes

1.7.1.8

SendCountryCode1

Sender's country code to identify a country by postal code

string(2)no

1.7.1.9

SendCityName1

Name of sender's city

string(255)no

1.7.1.10

SendPhone

Sender's contact phone

phoneyes

1.7.1.11

SenderName

Sender (full name)

string(255)yes

1.7.1.12

CommentComment for courier7.25RecipientCurrency3Code of cash-on-delivery currency: extra delivery charge and payment for the goods to be collected from the receiver. The currency is considered to be a currency of the receiver's country (for details, see Appendix No. 3)string(10)no
1.7.26ItemsCurrencyCode of declared value currency (all items in the order). Currency of settlements with the CDEK client under contract.string(10)no
1.7.27SellerNameReal seller. Used in printing orders to show a real seller of the goods or a brand namestring(25)no
1.7.28Comment4Comments (special notes on the order)string(255)no
1.7.29AddressDelivery address. Depending on a delivery mode, it is necessary to specify either Street, House, Flat attributes (delivery to the receiver's address) or PvzCode (pickup)
yes
1.7.29.1StreetReceiver's street. If possible, do not specify prefixes of values, such as “st.”string(50)yes
1.7.29.2HouseReceiver's house, building, block. If possible, do not specify prefixes of values, such as “house”.string(30)yes
1.7.29.3FlatReceiver's flat/office. If possible, do not specify prefixes of values, such as “flat”.string(10)no
1.7.29.4PvzCodePickup code. The attribute is required only for orders with the delivery mode “to warehouse”, provided that no additional service “Delivery in the receiver's city” is ordered (AddService="17", for more details, see Appendix 2).
If the specified pickup point is closed at the time of order creation, the order will be accepted for the nearest functioning pickup point. The receiver will be notified about change of the pickup point via SMS. If all pickup points in the city that can provide the selected service are closed, order registration will be impossible. The relevant error message will be sent.
string(10)yes
1.7.30PackagePackage (all packages are sent with different Package tags)
yes
1.7.30.1NumberPackage number (ordinal package number or order number can be used), unique for this order. Order identifier in the Client's IS.string(20)yes
1.7.30.2BarCodePackage barcode, package identifier (if any); otherwise, transmit a value of the package number: Packege.Number). The parameter is used to handle the cargo at CDEK warehouses), unique for this order. Package identifier in the Client's IS.string(20)yes
1.7.30.3WeightTotal weight (in grams)integeryes
1.7.30.4SizeA5Package dimensions. Length (in centimeters)integeryes, if other dimensions are indicated, in a range of 1 to 1,500
1.7.30.5SizeB5Package dimensions. Width (in centimeters)integeryes, if other dimensions are indicated, in a range of 1 to 1,500
1.7.30.6SizeC5Package dimensions. Height (in centimeters)integeryes, if other dimensions are indicated, in a range of 1 to 1,500
1.7.30.7ItemItems (goods)
yes
1.7.30.7.1AmountQuantity of goods of the same type (pcs). The maximum number is 999.Integeryes
1.7.30.7.2WareKeyIdentifier/item number of the goods (Unique for
this Package).
string(50)yes
1.7.30.7.3CostDeclared value of the goods (per item in the specified currency, value >=0). This value is used to calculate the amount of insurance.floatyes
1.7.30.7.4PaymentCash on delivery (per item in the specified currency, value >=0) — cash on delivery; in case of prepayment, value = 0.floatyes
1.7.30.7.5PaymentVATRateVAT rate included in the value of the goods (for more details, see the Appendix 4)string(10)no
1.7.30.7.6PaymentVATSumVAT amount included in the value (payment) of the goods.floatno
1.7.30.7.7WeightWeight (per item, in grams)integeryes
1.7.30.7.8CommentName of the goods (may contain description of the goods: size, color)string(255)yes
1.7.30.7.9WeightBrutto

Gross weight (for one unit of goods, in grams). Only for international orders.

integerno
1.7.30.7.10CommentEx

Name of the goods, in English (also can contain description of the goods, such as size and color). Only for international orders.

string(255)no
1.7.30.7.11Link

Link to the e-shop’s website with the goods’ description. Only for international orders.

string(255)no
1.7.31DeliveryRecipientCostAdv

Additional charge for delivery (E-shop charges the receiver), depending on the order’s sum


no
1.7.31.1Threshold

Goods price threshold (valid by condition less than or equal to), in even monetary units

integeryes
1.7.31.2Sum

Additional charge for delivery with total amount that falls within the interval

floatyes
1.7.31.3VATRate

VAT rate included in the additional charge for delivery (for more details, see Appendix No. 4). If the value is unknown, then default value “No VAT” is applied

string(10)no
1.7.31.4VATSum

VAT sum included in the additional charge for delivery

floatno
1.7.32AddServiceAdditional services
no
1.7.32.1ServiceCodeType of additional service (for more details, see Appendix No. 2)integeryes
12236Schedule7

Schedule for delivery /pickup


no
1.7.33.1Attempt

Time of delivery (one time interval not less than 3 hours is permitted for one day)


yes
1.7.33.1.1ID

ID number of a schedule from the online store's database. You may use 1 as a default value

integeryes
1.7.33.1.2Date

Date of delivery (only date, in the format “YYYY-MM-DD”, no time) as agreed by the receiver

dateyes
1.7.33.1.3CommentCommentstring(255)no
1.7.33.1.4SendAddressSender's addressTimeBeg

Start of a delivery time range (receiver's time)

timeno
1.7.33.1.13.1StreetSender5TimeEnd

End of a delivery time range (receiver's time)

timeno
1.7.33.1.6Address

New delivery address (if change is required). Depending on a delivery mode, Street or House attributes should be specified. Flat – delivery to the receiver's address, or PvzCode – pickup


no
1.7.33.1.6.1Street

Receiver's street. If possible, do not specify prefixes of prefixesof values, such as “st.”“str”

string(50)yes
1.7.33.1.136.2House

SenderReceiver's house, building, block. If possible, do not specify prefixes of values, such as “house”.

string(30)yes
1.7.33.1.136.3Flat

SenderReceiver's flat/office. If possible, do not specify prefixes of values, such as “flat”“flat.

string(10)yes

...

no
1.7.33.1.6.4PvzCode

Pickup code, required only for orders with a delivery mode “to warehouse” and provided that no additional service “Delivery in the receiver's city” has been ordered.

string(10)yes
1.8CallCourier8Call courier
no
1.8.1Call

Waiting for a courier


yes
1.8.1.1Date

Date of courier waiting

dateyes
1.8.1.2TimeBeg

Start time of courier waiting

timeyes
1.8.1.3TimeEnd

End time of courier waiting

timeyes
1.8.1.4LunchBeg

Start time of a lunch break, if it is within a time range [TimeBeg; TimeEnd]

timeno
1.8.1.5LunchEnd

End time of a lunch break, if it is within a time range [TimeBeg; TimeEnd]

timeno
1.8.1.6SendCityCode1

Sender's city code from the CDEK base (see the

file“City

file “City_XXX_YYYYMMDD.xls”)

Integer
integeryes
1.8.
4RecCityCode
1
Receiver's city code from the CDEK base (see the file “City_XXX_YYYYMMDD.xls”)Integeryes1.8.5
.7SendCityPostCode1

Postal code of the sender's city

string(6)yes
1.8.
6RecCityPostCode
1
Postal code of the receiver's citystring(6)yes1
.8
.7
SendCountryCode1

Sender's country code to identify a country by postal code

.

string(2)no
1.8
.8RecCountryCode1Receiver's country code to identify a country by postal code
.
string(2)no
1.
8.
9SendCityName1

Name of sender's city

string(255)no
1.8.1.10
RecCityName1Name of receiver
SendPhone

Sender's

citystring(255)no

contact phone

phoneyes
1.8.
11SenderSenderno
1
.8
.11
.1
Company6Name of sender's company
SenderName

Sender (full name)

string(
128
255)
no
yes
1.8.
11
1.
2
12
NameSender's contact person
CommentComment for courierstring(
128
255)no
1.8.
11
1.
3no
13
AddressAddress of pickup
SendAddressSender's address
yes
1.8.
11
1.
3
13.1Street
Street

Sender's street. If possible, do not specify prefixes of values, such as “st.”

string(50)yes
1.8.
11
1.
3
13.2House
House

Sender's house, building, block. If possible, do not specify prefixes of values, such as “house”.

string(30)yes
1.8.
11
1.
3
13.3Flat
Flat

Sender's flat/office. If possible, do not specify prefixes of values, such as “flat”.

string(10)
no1.8.11.4PhoneSender's phonephoneyes1.8.12RecipientCompanyName of receiver's companystring(128
yes


Registration of a Delivery Order

8.18Delivery address. Depending on a delivery mode, it is necessary to specify either Street, House, Flat attributes (delivery to the receiver's address) or PvzCode (pickup).18.1string(5019Package (all packages are sent with different Package tags
No.Tag / attributeDescriptionType of fieldMandatory (yes/no)
1Delivery RequestDocument title
yes
1.1NumberNumber of an acceptance certificate/waybill. Identifier of the list of cargoes in the IS of the CDEK client. 1 can be used a default value.string(30)yes
1.8.132RecipientNameDateReceiver (full name). At least 3 characters.string(128)Date of document (date of order)datetime/dateyes
1.8.143RecipientEmailEmail for sending order status notifications and contacting in case of failed callsеmailno
1.8.15PhoneReceiver's phonephoneyes
1.8.16TariffTypeCodeCode of tariff type (for more details, see Appendix No. 1)IntegerForeignDeliveryAttribute of international delivery. In the current version, the value is always false.booleanyes
1.4CurrencyCurrencystring(30)yes, if
ForeignDelivery =true
1.5AccountClient identifierstring(255)yes
1.8.17Comment4Comments (special notes on the order)6SecureKeystring(255)noyes
1.7AddressOrderCountThe total number of orders in a document, default value: 1.integeryes
1.8StreetReceiver's street. If possible, do not specify prefixes of values, such as “st.”OrderShipment (order)
yes
1.8.18.2HouseReceiver's house, building, block. If possible, do not specify prefixes of values, such as “house”string(301ClientSide6Client type: sender, receiver, third person. Possible values: “sender”, “receiver”, “other” (third party)string(10)yes
1.8.18.32FlatReceiver's flat/office. If possible, do not specify prefixes of values, such as “flat”string(10)noNumberClient shipment number (unique for orders of a particular client). Order identifier in the Client's IS.string(40)yes
1.8.18.4PvzCodePickup code. The attribute is required only for orders with the delivery mode “to warehouse”, provided that no additional service “Delivery in the receiver's city” is ordered (AddService="17", for more details, see Appendix 2).
If the specified pickup point is closed at the time of order creation, the order will be accepted for the nearest functioning pickup point.
The receiver will be notified about change of the pickup point via SMS. If all pickup points in the city that can provide the selected service are closed, order registration will be impossible. The relevant error message will be sent.
string(10)3SendCityCode1Sender's city code from the CDEK base (see the file“City_XXX_YYYYMMDD.xls”)Integeryes
1.8.4RecCityCode1Receiver's city code from the CDEK base (see the file “City_XXX_YYYYMMDD.xls”)Integeryes
1.8.Package5SendCityPostCode1Postal code of the sender's citystring(6)yes
1.8.19.1NumberPackage number (ordinal package number or order number can be used), unique for this order. Order identifier in the Client's IS.string(206RecCityPostCode1Postal code of the receiver's citystring(6)yes
1.8.19.2BarCodePackage barcode, package identifier (if any); otherwise, transmit a value of the package number: Packege.Number). The parameter is used to handle the cargo at CDEK warehouses, uniquefor this order. Package identifier in the Client's IS.string(20)yes
1.8.19.3WeightTotal weight (in grams)integeryes
1.8.19.4SizeA5Package dimensions. Length (in centimeters)integeryes, if other dimensions are indicated, in a range of 1 to 1,500
1.8.19.5SizeB5Package dimensions. Width (in centimeters)integeryes, if other dimensions are indicated, in a range of 1 to 1,500
1.8.19.6SizeC5Package dimensions. Height (in centimeters)integeryes, if other dimensions are indicated, in a range of 1 to 1,500
1.8.20AddServiceAdditional servicesno
1.8.20.1ServiceCodeType of additional service (for more details, see Appendix No. 2)integeryes

1 A city can be identified in one of two ways at the user's discretion:

  • By unique city code from the CDEK database (city ID). City codes from the CDEK database can be found in lists of cities in the package documentation (see the file “City_XXX_YYYYMMDD.xls”). Values are transferred in SendCityCode and RecCityCode attributes.

  • By postal code of the city. Values are transferred in SendCityPostCode and RecCityPostCode attributes. The country code SendCountryCode and RecCountryCode is paired with the postal code. Along with the postcode, the country code (attributes SendCountryCode, RecCountryCode) and/or the city’s name (attributes SendCityName, RecCityName) can be used for specifying: the country code of the sought city should match with that described in the related attribute, and the transferred name of the city should be included in the name of the sought one. The city’s name can be in the client’s language (all localizations will be searched).

Usually, the city code serves to indicate the sender’s city, and the post code – to indicate the receiver’s city

It should be noted that the database of postal codes in the CDEK IS may contain incomplete and sometimes inaccurate information on postal codes. Therefore, the user should be able to adjust the postal code parameter, if necessary.

Note: At present, CDEK IS contains postcodes only for Russia. To identify cities of other countries, we recommend using a city code from the CDEK database.

2 If CDEK delivery services are paid by the online store, rather than by the receiver, the order price may include the cost of delivery collected by the online store from the receiver, e.g., as compensation for its expenses. This amount may be different from the cost of delivery according to the CDEK tariffs. The value of the parameter is displayed in the order receipt in the “Cost of delivery” field, but it is included in the cash on delivery amount and processed as cash on delivery.

3 For deliveries of goods within Kazakhstan, an additional restriction is imposed. A cash-on-delivery currency must coincide with the contract currency (settlement currency); otherwise the error message ErrorCode="ERR_CURRCASH_NOTVALID" errorMessage="Валюта наложенного платежа не совпадает с валютой взаиморасчетов".

4 In the comment field, you can write any notes on the delivery of cargo. For example, if you allow a partial delivery of the cargo, you can specify “Partial delivery is allowed”. If you want to prohibit opening of the parcel, you can specify “Do not open”.

5 The package dimensions should be indicated if the box is used as a package. Taking into account the dimensions, the volumetric weight is calculated by the formula: SizeА * SizeВ * SizeС/5,000. The greater of actual weight and volumetric weight is used to calculate the cost of delivery.

6 If the ClientSide attribute is set to “sender”, a value of the Company attribute in the Sender tag will be ignored.

7The agreement with an e-shop specifies organization (CDEK or e-shop), responsible for obtaining delivery schedule from the receiver. If it is an e-shop, then the data is tagged as <Schedule>. The schedule can be transferred later, if necessary (see “Registration of information of the call’s result” method).

Only one schedule is permitted for one order and one date. The schedule can have several delivery days.

8Courier invitation to indicated address is not a mandatory parameter. However, only one courier invitation can be included into a request to create an order. A courier can be invited to a particular address only once a day. The CallCourier tag has to be inside a tag.

4.2.2. Response Format

The CDEK server will return a result in the form of XML:

...

Invitation number

...

Fixed text “Orders added”

Description of error (if any)

...

7SendCountryCode1Sender's country code to identify a country by postal code.string(2)no
1.8.8RecCountryCode1Receiver's country code to identify a country by postal code.string(2)no
1.8.9SendCityName1Name of sender's citystring(255)no
1.8.10RecCityName1Name of receiver's citystring(255)no
1.8.11SenderSender
no
1.8.11.1Company6Name of sender's companystring(128)no
1.8.11.2NameSender's contact personstring(128)no
1.8.11.3AddressAddress of pickup
no
1.8.11.3.1StreetStreetstring(50)yes
1.8.11.3.2HouseHousestring(30)yes
1.8.11.3.3FlatFlat/officestring(10)no
1.8.11.4PhoneSender's phonephoneyes
1.8.12RecipientCompanyName of receiver's companystring(128)yes
1.8.13RecipientNameReceiver (full name). At least 3 characters.string(128)yes
1.8.14RecipientEmailEmail for sending order status notifications and contacting in case of failed callsеmailno
1.8.15PhoneReceiver's phonephoneyes
1.8.16TariffTypeCodeCode of tariff type (for more details, see Appendix No. 1)Integeryes
1.8.17Comment4Comments (special notes on the order)string(255)no
1.8.18AddressDelivery address. Depending on a delivery mode, it is necessary to specify either Street, House, Flat attributes (delivery to the receiver's address) or PvzCode (pickup)
yes
1.8.18.1StreetReceiver's street. If possible, do not specify prefixes of values, such as “st.”string(50)yes
1.8.18.2HouseReceiver's house, building, block. If possible, do not specify prefixes of values, such as “house”string(30)yes
1.8.18.3FlatReceiver's flat/office. If possible, do not specify prefixes of values, such as “flat”string(10)no
1.8.18.4PvzCodePickup code. The attribute is required only for orders with the delivery mode “to warehouse”, provided that no additional service “Delivery in the receiver's city” is ordered (AddService="17", for more details, see Appendix 2).
If the specified pickup point is closed at the time of order creation, the order will be accepted for the nearest functioning pickup point.
The receiver will be notified about change of the pickup point via SMS. If all pickup points in the city that can provide the selected service are closed, order registration will be impossible. The relevant error message will be sent.
string(10)yes
1.8.19PackagePackage (all packages are sent with different Package tags)
yes
1.8.19.1NumberPackage number (ordinal package number or order number can be used), unique for this order. Order identifier in the Client's IS.string(20)yes
1.8.19.2BarCodePackage barcode, package identifier (if any); otherwise, transmit a value of the package number: Packege.Number). The parameter is used to handle the cargo at CDEK warehouses, uniquefor this order. Package identifier in the Client's IS.string(20)yes
1.8.19.3WeightTotal weight (in grams)integeryes
1.8.19.4SizeA5Package dimensions. Length (in centimeters)integeryes, if other dimensions are indicated, in a range of 1 to 1,500
1.8.19.5SizeB5Package dimensions. Width (in centimeters)integeryes, if other dimensions are indicated, in a range of 1 to 1,500
1.8.19.6SizeC5Package dimensions. Height (in centimeters)integeryes, if other dimensions are indicated, in a range of 1 to 1,500
1.8.20AddServiceAdditional services
no
1.8.20.1ServiceCodeType of additional service (for more details, see Appendix No. 2)integeryes

1 A city can be identified in one of two ways at the user's discretion:

  • By unique city code from the CDEK database (city ID). City codes from the CDEK database can be found in lists of cities in the package documentation (see the file “City_XXX_YYYYMMDD.xls”). Values are transferred in SendCityCode and RecCityCode attributes.

  • By postal code of the city. Values are transferred in SendCityPostCode and RecCityPostCode attributes. The country code SendCountryCode and RecCountryCode is paired with the postal code. Along with the postcode, the country code (attributes SendCountryCode, RecCountryCode) and/or the city’s name (attributes SendCityName, RecCityName) can be used for specifying: the country code of the sought city should match with that described in the related attribute, and the transferred name of the city should be included in the name of the sought one. The city’s name can be in the client’s language (all localizations will be searched).

Usually, the city code serves to indicate the sender’s city, and the post code – to indicate the receiver’s city

It should be noted that the database of postal codes in the CDEK IS may contain incomplete and sometimes inaccurate information on postal codes. Therefore, the user should be able to adjust the postal code parameter, if necessary.

Note: At present, CDEK IS contains postcodes only for Russia. To identify cities of other countries, we recommend using a city code from the CDEK database.

2 If CDEK delivery services are paid by the online store, rather than by the receiver, the order price may include the cost of delivery collected by the online store from the receiver, e.g., as compensation for its expenses. This amount may be different from the cost of delivery according to the CDEK tariffs. The value of the parameter is displayed in the order receipt in the “Cost of delivery” field, but it is included in the cash on delivery amount and processed as cash on delivery.

3 For deliveries of goods within Kazakhstan, an additional restriction is imposed. A cash-on-delivery currency must coincide with the contract currency (settlement currency); otherwise the error message ErrorCode="ERR_CURRCASH_NOTVALID" errorMessage="Валюта наложенного платежа не совпадает с валютой взаиморасчетов".

4 In the comment field, you can write any notes on the delivery of cargo. For example, if you allow a partial delivery of the cargo, you can specify “Partial delivery is allowed”. If you want to prohibit opening of the parcel, you can specify “Do not open”.

5 The package dimensions should be indicated if the box is used as a package. Taking into account the dimensions, the volumetric weight is calculated by the formula: SizeА * SizeВ * SizeС/5,000. The greater of actual weight and volumetric weight is used to calculate the cost of delivery.

6 If the ClientSide attribute is set to “sender”, a value of the Company attribute in the Sender tag will be ignored.

7The agreement with an e-shop specifies organization (CDEK or e-shop), responsible for obtaining delivery schedule from the receiver. If it is an e-shop, then the data is tagged as <Schedule>. The schedule can be transferred later, if necessary (see “Registration of information of the call’s result” method).

Only one schedule is permitted for one order and one date. The schedule can have several delivery days.

8Courier invitation to indicated address is not a mandatory parameter. However, only one courier invitation can be included into a request to create an order. A courier can be invited to a particular address only once a day. The CallCourier tag has to be inside a tag.


4.2.2. Response Format

The CDEK server will return a result in the form of XML:

No.Tag / attributeDescriptionType of fieldMandatory (yes/no)
1ResponseDocument title
yes
1.1OrderOrder
yes
1.1.1DispatchNumberCDEK order numberintegeryes
1.1.2NumberOrder number of the online storestring(40)yes
1.1.3ErrorCodeError codestring(255)no
1.1.4MsgFixed text “Orders added”
Description of error (if any)
string(255)yes
1.2CallCall courier
no
1.2.1Number

Invitation number

string(30)yes
1.2.2ErrorCodeError codestring(255)no
1.2.3Msg

Fixed text “Orders added”

Description of error (if any)

string(255)yes


Example 1. Registration of an “online store” order

...

Code Block
languagexml
titleDeliveryRequest
<?xml version="1.0" encoding="UTF-8"?>
<deliveryrequest account="0278f9e8004f6b08f37497001e804007"
    currency="rub" date="2019-01-23 16:00:07" foreigndelivery="false"
    number="test_request" ordercount="2" secure="3e10b5b7d1da1dfa42cb70c329964ec2">
    <order clientside="SENDER" comment="test_comment"
       number="number-s785558446" phone="+79138739870"
       reccitycode="44" recipientcompany="company-6344227223"
       recipientcurrency="rub" recipientemail="email_1_G4Akh0@test.ru"
       recipientname="Ivanov Ivan" sendcitycode="44" tarifftypecode="1">
       <address flat="flat-G4Akh0" house="house-G4Akh0" street="street-G4Akh0"/>
       <sender name="Petrov Petr">
           <address flat="flat-G4Akh0" house="house-G4Akh0" street="street-G4Akh0"/>
           <phone>+79138739876</phone>
           <phone>+79132873910</phone>
       </sender>
       <package number="number-p785558446" barcode="test_package" comment="test_comment"
           sizea="10.0" sizeb="20.0" sizec="30.0" weight="1000.0"/>
    </order>
    <order clientside="SENDER" comment="test_comment"
       number="number-s785558447" phone="+79138739870"
       reccitycode="44" recipientcompany="company-6344227225"
       recipientcurrency="rub" recipientemail="email_1_G4Akh1@test.ru"
       recipientname="Ivanov Ivan" sendcitycode="44" tarifftypecode="1">
       <address flat="flat-G4Akh1" house="house-G4Akh1" street="street-G4Akh1"/>
       <sender name="Petrov Petr">
           <address flat="flat-G4Akh1" house="house-G4Akh1" street="street-G4Akh1"/>
           <phone>89133309944</phone>
           <phone>89138092416</phone>
       </sender>
       <package number="number-p785558446" barcode="test_package" comment="test_comment"
           sizea="10.0" sizeb="20.0" sizec="30.0" weight="1000.0"/>
    </order>
</deliveryrequest>
Code Block
languagexml
titleResponse
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response>
    <Order DispatchNumber="1105256458" Number="number-s785558446"/>
    <Order DispatchNumber="1105256457" Number="number-s785558447"/>
    <Order Msg="2 orders were added"/>
     sizea="10.0" sizeb="20.0" sizec="30.0" weight="1000.0"/>
    </order>
</deliveryrequest>
Code Block
languagexml
titleResponse
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response>
    <Order DispatchNumber="1105256458" Number="number-s785558446"/>
    <Order DispatchNumber="1105256457" Number="number-s785558447"/>
    <Order Msg="2 orders were added"/>
    <TraceId>bcea8cac3e397ffd</TraceId>
</response>

...

This method is used to change a created order. The following order details can be changed:

  • cash-on-delivery amount;

  • all details of packages and items (i.e. old data will be deleted, and new data will be saved).

An order can be changed only if there is no cargo movement in the CDEK warehouse (i.e. the order status is “Created”).

4.3.1. Description of Request Fields to be Transmitted

...

<TraceId>bcea8cac3e397ffd</TraceId>
</response>


4.3. 
Anchor
Change
Change
Order Change Method


This method is used to change a created order. The following order details can be changed:

  • cash-on-delivery amount;

  • all details of packages and items (i.e. old data will be deleted, and new data will be saved).

An order can be changed only if there is no cargo movement in the CDEK warehouse (i.e. the order status is “Created”).

4.3.1. Description of Request Fields to be Transmitted

2integeryesstring(40)Delivery Recipient Cost delivery charge collected by the online store from the receiver (in the specified currency)noDelivery RecipientVATRate extra charge
No.Tag / attributeDescriptionType of fieldMandatory (yes/no)
1UpdateRequestDocument title
yes
1.1NumberAcceptance certificate number Order identifier in the IS of the CDEK client.string(30)yes
1.2DateDate of document (date of order)Date time/ dateyes
1.3AccountOnline store identifierstring(255)yes
1.4SecureKeystring(255)yes
1.5OrderCountThe total number of orders in a document, default value: 1.integeryes
1.6OrderShipment (order)
yes
1.6.1NumberClient shipment number (unique for orders of a particular client). Order identifier in the Client's IS.string(40)yes
1.6.2Delivery Recipient CostAdditional delivery charge collected by the online store from the receiver (in the specified currency)floatno
1.6.3Delivery RecipientVATRateVAT rate included in the extra delivery charge
(for more details, see Appendix No. 4)
string(10)no
1.6.4DeliveryRecipientVATSumVAT amount included in the extra. delivery chargefloatno
1.6.5RecipientNameReceiver (full name). At least 3 characters.string(128)no
1.6.6PhoneReceiver's phonephoneno
1.6.7AddressDelivery address. Depending on a delivery mode, it is necessary to specify either Street, House, Flat attributes (delivery to the receiver's address) or PvzCode (pickup)
no
1.6.7.1StreetReceiver's street. If possible, do not specify prefixes of values, such as “st.”string(50)yes
1.6.7.2HouseReceiver's house, building, block. If possible, do not specify prefixes of values, such as “house”.string(30)yes
1.6.7.3DateDate of document (date of order)Date time/ dateyes
1.3AccountOnline store identifierstring(255)yes
1.4SecureKeystring(255)yes
1.5OrderCountThe total number of orders in a document, default value: 1.FlatReceiver's flat/office. If possible, do not specify prefixes of values, such as “flat”.string(10)no
1.6.7.4PvzCodePickup code. The attribute is required only for orders with the delivery mode “to warehouse”, provided that no additional service “Delivery in the receiver's city” is ordered (AddService="17", for more details, see Appendix 2).
If the specified pickup point is closed at the time of order creation, the order will be accepted for the nearest functioning pickup point. The receiver will be notified about change of the pickup point via SMS. If all pickup points in the city that can provide the selected service are closed, order registration will be impossible. The relevant error message will be sent.
string(10)yes
1.6.8OrderShipment (order)DeliveryRecipientCostAdvAdditional charge for delivery (E-shop charges the receiver), depending on the order’s sumДоп. сбор за доставку (которую ИМ берет с получателя), в зависимости от суммы заказа
no
1.6.8.1NumberClient shipment number (unique for orders of a particular client). Order identifier in the Client's IS.Threshold

Goods price threshold (valid by condition less than or equal to), in even monetary units

integeryes
1.6.8.2Sum

Additional

charge for delivery with total amount that falls within the interval

floatyes
1.6.8.3VATRate

VAT rate included in the

additional charge for delivery

(for more details, see Appendix No. 4). If the value is unknown, then default value “No VAT” is applied

string(10)no
1.6.8.4DeliveryRecipientVATSumVATSum

VAT

amount

sum included in the

extra.

additional charge for delivery

charge

floatno
1.6.5PackagePackage (all packages are sent with different Package tags)
yesno
1.6.5.1NumberPackage number (ordinal package number or order number can be used), unique for this order. Order identifier in the Client's IS.string(20)yes
1.6.5.2BarCodePackage barcode, package identifier (if any); otherwise, transmit a value of the package number Package.Number). The parameter is used to handle the cargo at CDEK warehouses), unique for this order. Package identifier in the Client's IS.string(20)yes
1.6.5.3WeightTotal weight (in grams)integeryes
1.6.5.4SizeAPackage dimensions. Length (in centimeters)integeryes, if other dimensions are indicated, in a range of 1 to 1,500
1.6.5.5SizeBPackage dimensions. Width (in centimeters)integeryes, if other dimensions are indicated, in a range of 1 to 1,500
1.6.5.6SizeCPackage dimensions. Height (in centimeters)integeryes, if other dimensions are indicated, in a range of 1 to 1,500
1.6.5.7ItemItems (goods)
yes
1.6.5.7.1Amount

Quantity of goods of the same type (pcs). The maximum number is 999.

integeryes
1.6.5.7.2WareKeyIdentifier/item number of the goods (Unique for this Package).string(50)yes
1.6.5.7.3CostDeclared value of the goods (per item in the specified currency, value >=0). This value is used to calculate the amount of insurance.floatyes
1.6.5.7.4PaymentCash on delivery (per item in the specified currency, value >=0) — cash on delivery, in case of prepayment, value = 0.floatyes
1.6.5.7.5PaymentVATRateVAT rate included in the value of the goods (for more details, see Appendix No. 4)string(10)yes
1.6.5.7.6PaymentVATSumVAT amount included in the value (payment) of the goods.floatyes
1.6.5.7.7Weight

Weight (per item, in grams)

integeryes
1.6.5.7.8Comment

Name of the goods (may contain description of the goods: size, color)

string(255)yes

...

CodeReason
1Phone is busy
2The subscriber does not answer
3Subscriber unavailable
4Wrong Number
5Phone unknown
6Silence
7Reset
8Hung up



It is recommended to represent phone numbers in the following formats: