NAV

<back to all web services

NAVReturnCreate

The following routes are available for this service:
POST/returns
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 NAVReturnCreateResponse:
    rma_number: Optional[str] = None
    packing_list_u_r_i: Optional[str] = None
    total: Optional[Decimal] = None
    response_status: Optional[ResponseStatus] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class NAVReturnHeaderCreate:
    original_order_number: Optional[str] = None
    original_order_type_id: Optional[str] = None
    rma_note: Optional[str] = None
    ship_label_type: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class NAVReturnInboundSkuCreate:
    sku_code: Optional[str] = None
    order_line_number: Optional[int] = None
    quantity_returned: Optional[int] = None
    reason_type: Optional[str] = None
    rma_note: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class NAVReturnOutboundSkuCreate:
    sku_code: Optional[str] = None
    order_line_number: Optional[int] = None
    quantity_returned: Optional[int] = None
    reason_type: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class NAVReturnAddress:
    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 NAVReturnCreate(IPost):
    header: Optional[NAVReturnHeaderCreate] = None
    inbound_skus: Optional[List[NAVReturnInboundSkuCreate]] = None
    outbound_skus: Optional[List[NAVReturnOutboundSkuCreate]] = None
    billing_address: Optional[NAVReturnAddress] = None
    shipping_address: Optional[NAVReturnAddress] = None

Python NAVReturnCreate 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 /returns HTTP/1.1 
Host: extensions.avon.ca 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<NAVReturnCreate xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/NAV.ServiceModel">
  <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>
  <Header>
    <OriginalOrderNumber>String</OriginalOrderNumber>
    <OriginalOrderTypeId>String</OriginalOrderTypeId>
    <RmaNote>String</RmaNote>
    <ShipLabelType>String</ShipLabelType>
  </Header>
  <InboundSkus>
    <NAVReturnInboundSkuCreate>
      <OrderLineNumber>0</OrderLineNumber>
      <QuantityReturned>0</QuantityReturned>
      <ReasonType>String</ReasonType>
      <RmaNote>String</RmaNote>
      <SkuCode>String</SkuCode>
    </NAVReturnInboundSkuCreate>
  </InboundSkus>
  <OutboundSkus>
    <NAVReturnOutboundSkuCreate>
      <OrderLineNumber>0</OrderLineNumber>
      <QuantityReturned>0</QuantityReturned>
      <ReasonType>String</ReasonType>
      <SkuCode>String</SkuCode>
    </NAVReturnOutboundSkuCreate>
  </OutboundSkus>
  <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>
</NAVReturnCreate>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<NAVReturnCreateResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/NAV.ServiceModel">
  <PackingListURI>String</PackingListURI>
  <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>
  <RmaNumber>String</RmaNumber>
  <Total>0</Total>
</NAVReturnCreateResponse>