NAV

<back to all web services

NAVOrderImport

The following routes are available for this service:
POST/orders
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class NAVOrderImportResponse:
    response_status: Optional[ResponseStatus] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class NAVOrderImportAddress:
    first_name: Optional[str] = None
    last_name: Optional[str] = None
    address_line1: Optional[str] = None
    address_line2: Optional[str] = None
    address_line3: Optional[str] = None
    address_line4: Optional[str] = None
    address_line5: Optional[str] = None
    city: Optional[str] = None
    state_province_code: Optional[str] = None
    postal_code: Optional[str] = None
    county: Optional[str] = None
    country_code: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class NAVOrderImportSkuComponent:
    parent_order_line_number: Optional[int] = None
    order_line_number: Optional[int] = None
    sku_code: Optional[str] = None
    quantity: Optional[int] = None
    price_paid_per_unit: Optional[Decimal] = None
    retail_price_per_unit: Optional[Decimal] = None
    net_price: Optional[Decimal] = None
    tax_amount: Optional[Decimal] = None
    tax_percentage: Optional[Decimal] = None
    version_number: Optional[str] = None
    version_year: Optional[str] = None
    vehicle_id: Optional[str] = None
    offer_id: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class NAVOrderImportSku:
    sku_code: Optional[str] = None
    order_line_number: Optional[int] = None
    quantity: Optional[int] = None
    is_auto_ship: Optional[bool] = None
    order_sku_components: Optional[List[NAVOrderImportSkuComponent]] = None
    price_paid_per_unit: Optional[Decimal] = None
    retail_price_per_unit: Optional[Decimal] = None
    net_price: Optional[Decimal] = None
    net_sales: Optional[Decimal] = None
    submitted_net_price: Optional[Decimal] = None
    submitted_net_sales: Optional[Decimal] = None
    manual_discount_amount: Optional[Decimal] = None
    item_discount_percent: Optional[Decimal] = None
    tax_amount: Optional[Decimal] = None
    tax_percentage: Optional[Decimal] = None
    commissionable_value_earned: Optional[Decimal] = None
    qualifying_value_earned: Optional[Decimal] = None
    qualifying_value_earned_submitted: Optional[Decimal] = None
    override_c_v_earned: Optional[Decimal] = None
    override_c_v_earned_submitted: Optional[Decimal] = None
    override_q_v_earned: Optional[Decimal] = None
    group_c_v_earned: Optional[Decimal] = None
    group_q_v_earned: Optional[Decimal] = None
    upline_c_v_earned: Optional[Decimal] = None
    upline_q_v_earned: Optional[Decimal] = None
    version_number: Optional[str] = None
    version_year: Optional[str] = None
    coupon_code: Optional[str] = None
    substitute_indicator: Optional[str] = None
    fulfillment_indicator: Optional[str] = None
    substitute_sku_code: Optional[str] = None
    vehicle_id: Optional[str] = None
    offer_id: Optional[str] = None
    parent_s_k_u_code: Optional[str] = None
    buying_discount: Optional[Decimal] = None
    original_order_qty: Optional[Decimal] = None
    closed_quantity: Optional[Decimal] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class NAVOrderImportPayment:
    payment_type: Optional[str] = None
    payment_identifier1: Optional[str] = None
    payment_identifier2: Optional[str] = None
    payment_identifier3: Optional[str] = None
    payment_identifier4: Optional[str] = None
    payment_identifier5: Optional[str] = None
    payment_token: Optional[str] = None
    authorization_time: Optional[datetime.datetime] = None
    authorization_code: Optional[str] = None
    transaction_id: Optional[str] = None
    amount_charged: Optional[Decimal] = None
    billing_address: Optional[NAVOrderImportAddress] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class NAVOrderImportFee:
    fee_system_keyword: Optional[str] = None
    fee_amount: Optional[Decimal] = None
    tax_amount: Optional[Decimal] = None
    fee_total: Optional[Decimal] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class NAVOrderImport(IPost):
    external_order_id: Optional[str] = None
    order_type_id: Optional[str] = None
    created_date_u_t_c: Optional[datetime.datetime] = None
    submitted_date_u_t_c: Optional[datetime.datetime] = None
    bee_number_customer: Optional[Decimal] = None
    bee_number_payee: Optional[Decimal] = None
    order_source: Optional[str] = None
    shipping_method: Optional[str] = None
    gift_message: Optional[str] = None
    gift_message_from: Optional[str] = None
    gift_message_to: Optional[str] = None
    shipping_comment: Optional[str] = None
    shipping_address: Optional[NAVOrderImportAddress] = None
    order_skus: Optional[List[NAVOrderImportSku]] = None
    order_payments: Optional[List[NAVOrderImportPayment]] = None
    order_fees: Optional[List[NAVOrderImportFee]] = None
    sub_total: Optional[Decimal] = None
    order_total: Optional[Decimal] = None
    shipping_cost: Optional[Decimal] = None
    tax: Optional[Decimal] = None
    shipping_tax: Optional[Decimal] = None
    external_discount_reason: Optional[str] = None
    pc_level: Optional[Decimal] = None
    agent_id: Optional[str] = None
    number_of_customers_served: Optional[Decimal] = None
    version_number: Optional[str] = None
    version_year: Optional[str] = None
    additional_code: Optional[str] = None
    discount_percent: Optional[str] = None
    tax_rate_percent: Optional[str] = None
    order_within_time_period: Optional[Decimal] = None
    tax_area_code: Optional[str] = None
    geocode: Optional[str] = None
    fundraiser_id: Optional[str] = None
    warehouse_code: Optional[str] = None
    original_reship_external_order_id: Optional[str] = None
    shipped_version_number: Optional[str] = None
    shipped_version_year: Optional[str] = None
    master_order_id: Optional[str] = None
    coupon_value: Optional[str] = None
    sales_center_id: Optional[str] = None
    premier_level: Optional[str] = None
    pc_level_current_cycle: Optional[Decimal] = None
    premier_level_current_cycle: Optional[str] = None
    email_address: Optional[str] = None
    phone_number: Optional[str] = None

Python NAVOrderImport DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /orders HTTP/1.1 
Host: extensions.avon.ca 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<NAVOrderImport xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/NAV.ServiceModel">
  <AdditionalCode>String</AdditionalCode>
  <AgentId>String</AgentId>
  <BeeNumberCustomer>0</BeeNumberCustomer>
  <BeeNumberPayee>0</BeeNumberPayee>
  <CouponValue>String</CouponValue>
  <CreatedDateUTC>0001-01-01T00:00:00</CreatedDateUTC>
  <DiscountPercent>String</DiscountPercent>
  <EmailAddress>String</EmailAddress>
  <ExternalDiscountReason>String</ExternalDiscountReason>
  <ExternalOrderId>String</ExternalOrderId>
  <FundraiserId>String</FundraiserId>
  <Geocode>String</Geocode>
  <GiftMessage>String</GiftMessage>
  <GiftMessageFrom>String</GiftMessageFrom>
  <GiftMessageTo>String</GiftMessageTo>
  <MasterOrderId>String</MasterOrderId>
  <NumberOfCustomersServed>0</NumberOfCustomersServed>
  <OrderFees>
    <NAVOrderImportFee>
      <FeeAmount>0</FeeAmount>
      <FeeSystemKeyword>String</FeeSystemKeyword>
      <FeeTotal>0</FeeTotal>
      <TaxAmount>0</TaxAmount>
    </NAVOrderImportFee>
  </OrderFees>
  <OrderPayments>
    <NAVOrderImportPayment>
      <AmountCharged>0</AmountCharged>
      <AuthorizationCode>String</AuthorizationCode>
      <AuthorizationTime>0001-01-01T00:00:00</AuthorizationTime>
      <BillingAddress>
        <AddressLine1>String</AddressLine1>
        <AddressLine2>String</AddressLine2>
        <AddressLine3>String</AddressLine3>
        <AddressLine4>String</AddressLine4>
        <AddressLine5>String</AddressLine5>
        <City>String</City>
        <CountryCode>String</CountryCode>
        <County>String</County>
        <FirstName>String</FirstName>
        <LastName>String</LastName>
        <PostalCode>String</PostalCode>
        <StateProvinceCode>String</StateProvinceCode>
      </BillingAddress>
      <PaymentIdentifier1>String</PaymentIdentifier1>
      <PaymentIdentifier2>String</PaymentIdentifier2>
      <PaymentIdentifier3>String</PaymentIdentifier3>
      <PaymentIdentifier4>String</PaymentIdentifier4>
      <PaymentIdentifier5>String</PaymentIdentifier5>
      <PaymentToken>String</PaymentToken>
      <PaymentType>String</PaymentType>
      <TransactionId>String</TransactionId>
    </NAVOrderImportPayment>
  </OrderPayments>
  <OrderSkus>
    <NAVOrderImportSku>
      <BuyingDiscount>0</BuyingDiscount>
      <ClosedQuantity>0</ClosedQuantity>
      <CommissionableValueEarned>0</CommissionableValueEarned>
      <CouponCode>String</CouponCode>
      <FulfillmentIndicator>String</FulfillmentIndicator>
      <GroupCVEarned>0</GroupCVEarned>
      <GroupQVEarned>0</GroupQVEarned>
      <IsAutoShip>false</IsAutoShip>
      <ItemDiscountPercent>0</ItemDiscountPercent>
      <ManualDiscountAmount>0</ManualDiscountAmount>
      <NetPrice>0</NetPrice>
      <NetSales>0</NetSales>
      <OfferId>String</OfferId>
      <OrderLineNumber>0</OrderLineNumber>
      <OrderSkuComponents>
        <NAVOrderImportSkuComponent>
          <NetPrice>0</NetPrice>
          <OfferId>String</OfferId>
          <OrderLineNumber>0</OrderLineNumber>
          <ParentOrderLineNumber>0</ParentOrderLineNumber>
          <PricePaidPerUnit>0</PricePaidPerUnit>
          <Quantity>0</Quantity>
          <RetailPricePerUnit>0</RetailPricePerUnit>
          <SkuCode>String</SkuCode>
          <TaxAmount>0</TaxAmount>
          <TaxPercentage>0</TaxPercentage>
          <VehicleId>String</VehicleId>
          <VersionNumber>String</VersionNumber>
          <VersionYear>String</VersionYear>
        </NAVOrderImportSkuComponent>
      </OrderSkuComponents>
      <OriginalOrderQty>0</OriginalOrderQty>
      <OverrideCVEarned>0</OverrideCVEarned>
      <OverrideCVEarnedSubmitted>0</OverrideCVEarnedSubmitted>
      <OverrideQVEarned>0</OverrideQVEarned>
      <ParentSKUCode>String</ParentSKUCode>
      <PricePaidPerUnit>0</PricePaidPerUnit>
      <QualifyingValueEarned>0</QualifyingValueEarned>
      <QualifyingValueEarnedSubmitted>0</QualifyingValueEarnedSubmitted>
      <Quantity>0</Quantity>
      <RetailPricePerUnit>0</RetailPricePerUnit>
      <SkuCode>String</SkuCode>
      <SubmittedNetPrice>0</SubmittedNetPrice>
      <SubmittedNetSales>0</SubmittedNetSales>
      <SubstituteIndicator>String</SubstituteIndicator>
      <SubstituteSkuCode>String</SubstituteSkuCode>
      <TaxAmount>0</TaxAmount>
      <TaxPercentage>0</TaxPercentage>
      <UplineCVEarned>0</UplineCVEarned>
      <UplineQVEarned>0</UplineQVEarned>
      <VehicleId>String</VehicleId>
      <VersionNumber>String</VersionNumber>
      <VersionYear>String</VersionYear>
    </NAVOrderImportSku>
  </OrderSkus>
  <OrderSource>String</OrderSource>
  <OrderTotal>0</OrderTotal>
  <OrderTypeId>String</OrderTypeId>
  <OrderWithinTimePeriod>0</OrderWithinTimePeriod>
  <OriginalReshipExternalOrderId>String</OriginalReshipExternalOrderId>
  <PCLevel>0</PCLevel>
  <PCLevelCurrentCycle>0</PCLevelCurrentCycle>
  <PhoneNumber>String</PhoneNumber>
  <PremierLevel>String</PremierLevel>
  <PremierLevelCurrentCycle>String</PremierLevelCurrentCycle>
  <SalesCenterId>String</SalesCenterId>
  <ShippedVersionNumber>String</ShippedVersionNumber>
  <ShippedVersionYear>String</ShippedVersionYear>
  <ShippingAddress>
    <AddressLine1>String</AddressLine1>
    <AddressLine2>String</AddressLine2>
    <AddressLine3>String</AddressLine3>
    <AddressLine4>String</AddressLine4>
    <AddressLine5>String</AddressLine5>
    <City>String</City>
    <CountryCode>String</CountryCode>
    <County>String</County>
    <FirstName>String</FirstName>
    <LastName>String</LastName>
    <PostalCode>String</PostalCode>
    <StateProvinceCode>String</StateProvinceCode>
  </ShippingAddress>
  <ShippingComment>String</ShippingComment>
  <ShippingCost>0</ShippingCost>
  <ShippingMethod>String</ShippingMethod>
  <ShippingTax>0</ShippingTax>
  <SubTotal>0</SubTotal>
  <SubmittedDateUTC>0001-01-01T00:00:00</SubmittedDateUTC>
  <Tax>0</Tax>
  <TaxAreaCode>String</TaxAreaCode>
  <TaxRatePercent>String</TaxRatePercent>
  <VersionNumber>String</VersionNumber>
  <VersionYear>String</VersionYear>
  <WarehouseCode>String</WarehouseCode>
</NAVOrderImport>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<NAVOrderImportResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/NAV.ServiceModel">
  <ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
    <d2p1:ErrorCode>String</d2p1:ErrorCode>
    <d2p1:Message>String</d2p1:Message>
    <d2p1:StackTrace>String</d2p1:StackTrace>
    <d2p1:Errors>
      <d2p1:ResponseError>
        <d2p1:ErrorCode>String</d2p1:ErrorCode>
        <d2p1:FieldName>String</d2p1:FieldName>
        <d2p1:Message>String</d2p1:Message>
        <d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </d2p1:Meta>
      </d2p1:ResponseError>
    </d2p1:Errors>
    <d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </d2p1:Meta>
  </ResponseStatus>
</NAVOrderImportResponse>