NAV

<back to all web services

SalesCenterReturnCreate

The following routes are available for this service:
POST/sales-center/return
import 'package:servicestack/servicestack.dart';

class NAVReturnCreateResponse implements IConvertible
{
    String? rmaNumber;
    String? packingListURI;
    double? total;
    ResponseStatus? responseStatus;

    NAVReturnCreateResponse({this.rmaNumber,this.packingListURI,this.total,this.responseStatus});
    NAVReturnCreateResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        rmaNumber = json['rmaNumber'];
        packingListURI = json['packingListURI'];
        total = JsonConverters.toDouble(json['total']);
        responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'rmaNumber': rmaNumber,
        'packingListURI': packingListURI,
        'total': total,
        'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!)
    };

    getTypeName() => "NAVReturnCreateResponse";
    TypeContext? context = _ctx;
}

class NAVReturnHeaderCreate implements IConvertible
{
    String? originalOrderNumber;
    String? originalOrderTypeId;
    String? rmaNote;
    String? shipLabelType;

    NAVReturnHeaderCreate({this.originalOrderNumber,this.originalOrderTypeId,this.rmaNote,this.shipLabelType});
    NAVReturnHeaderCreate.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        originalOrderNumber = json['originalOrderNumber'];
        originalOrderTypeId = json['originalOrderTypeId'];
        rmaNote = json['rmaNote'];
        shipLabelType = json['shipLabelType'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'originalOrderNumber': originalOrderNumber,
        'originalOrderTypeId': originalOrderTypeId,
        'rmaNote': rmaNote,
        'shipLabelType': shipLabelType
    };

    getTypeName() => "NAVReturnHeaderCreate";
    TypeContext? context = _ctx;
}

class NAVReturnInboundSkuCreate implements IConvertible
{
    String? skuCode;
    int? orderLineNumber;
    int? quantityReturned;
    String? reasonType;
    String? rmaNote;

    NAVReturnInboundSkuCreate({this.skuCode,this.orderLineNumber,this.quantityReturned,this.reasonType,this.rmaNote});
    NAVReturnInboundSkuCreate.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        skuCode = json['skuCode'];
        orderLineNumber = json['orderLineNumber'];
        quantityReturned = json['quantityReturned'];
        reasonType = json['reasonType'];
        rmaNote = json['rmaNote'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'skuCode': skuCode,
        'orderLineNumber': orderLineNumber,
        'quantityReturned': quantityReturned,
        'reasonType': reasonType,
        'rmaNote': rmaNote
    };

    getTypeName() => "NAVReturnInboundSkuCreate";
    TypeContext? context = _ctx;
}

class NAVReturnOutboundSkuCreate implements IConvertible
{
    String? skuCode;
    int? orderLineNumber;
    int? quantityReturned;
    String? reasonType;

    NAVReturnOutboundSkuCreate({this.skuCode,this.orderLineNumber,this.quantityReturned,this.reasonType});
    NAVReturnOutboundSkuCreate.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        skuCode = json['skuCode'];
        orderLineNumber = json['orderLineNumber'];
        quantityReturned = json['quantityReturned'];
        reasonType = json['reasonType'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'skuCode': skuCode,
        'orderLineNumber': orderLineNumber,
        'quantityReturned': quantityReturned,
        'reasonType': reasonType
    };

    getTypeName() => "NAVReturnOutboundSkuCreate";
    TypeContext? context = _ctx;
}

class NAVReturnAddress implements IConvertible
{
    String? firstName;
    String? lastName;
    String? addressLine1;
    String? addressLine2;
    String? addressLine3;
    String? addressLine4;
    String? addressLine5;
    String? city;
    String? stateProvinceCode;
    String? postalCode;
    String? county;
    String? countryCode;

    NAVReturnAddress({this.firstName,this.lastName,this.addressLine1,this.addressLine2,this.addressLine3,this.addressLine4,this.addressLine5,this.city,this.stateProvinceCode,this.postalCode,this.county,this.countryCode});
    NAVReturnAddress.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        firstName = json['firstName'];
        lastName = json['lastName'];
        addressLine1 = json['addressLine1'];
        addressLine2 = json['addressLine2'];
        addressLine3 = json['addressLine3'];
        addressLine4 = json['addressLine4'];
        addressLine5 = json['addressLine5'];
        city = json['city'];
        stateProvinceCode = json['stateProvinceCode'];
        postalCode = json['postalCode'];
        county = json['county'];
        countryCode = json['countryCode'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'firstName': firstName,
        'lastName': lastName,
        'addressLine1': addressLine1,
        'addressLine2': addressLine2,
        'addressLine3': addressLine3,
        'addressLine4': addressLine4,
        'addressLine5': addressLine5,
        'city': city,
        'stateProvinceCode': stateProvinceCode,
        'postalCode': postalCode,
        'county': county,
        'countryCode': countryCode
    };

    getTypeName() => "NAVReturnAddress";
    TypeContext? context = _ctx;
}

class SalesCenterReturnCreate implements IPost, IConvertible
{
    NAVReturnHeaderCreate? header;
    List<NAVReturnInboundSkuCreate>? inboundSkus;
    List<NAVReturnOutboundSkuCreate>? outboundSkus;
    NAVReturnAddress? billingAddress;
    NAVReturnAddress? shippingAddress;

    SalesCenterReturnCreate({this.header,this.inboundSkus,this.outboundSkus,this.billingAddress,this.shippingAddress});
    SalesCenterReturnCreate.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        header = JsonConverters.fromJson(json['header'],'NAVReturnHeaderCreate',context!);
        inboundSkus = JsonConverters.fromJson(json['inboundSkus'],'List<NAVReturnInboundSkuCreate>',context!);
        outboundSkus = JsonConverters.fromJson(json['outboundSkus'],'List<NAVReturnOutboundSkuCreate>',context!);
        billingAddress = JsonConverters.fromJson(json['billingAddress'],'NAVReturnAddress',context!);
        shippingAddress = JsonConverters.fromJson(json['shippingAddress'],'NAVReturnAddress',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'header': JsonConverters.toJson(header,'NAVReturnHeaderCreate',context!),
        'inboundSkus': JsonConverters.toJson(inboundSkus,'List<NAVReturnInboundSkuCreate>',context!),
        'outboundSkus': JsonConverters.toJson(outboundSkus,'List<NAVReturnOutboundSkuCreate>',context!),
        'billingAddress': JsonConverters.toJson(billingAddress,'NAVReturnAddress',context!),
        'shippingAddress': JsonConverters.toJson(shippingAddress,'NAVReturnAddress',context!)
    };

    getTypeName() => "SalesCenterReturnCreate";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'extensions.avon.ca', types: <String, TypeInfo> {
    'NAVReturnCreateResponse': TypeInfo(TypeOf.Class, create:() => NAVReturnCreateResponse()),
    'NAVReturnHeaderCreate': TypeInfo(TypeOf.Class, create:() => NAVReturnHeaderCreate()),
    'NAVReturnInboundSkuCreate': TypeInfo(TypeOf.Class, create:() => NAVReturnInboundSkuCreate()),
    'NAVReturnOutboundSkuCreate': TypeInfo(TypeOf.Class, create:() => NAVReturnOutboundSkuCreate()),
    'NAVReturnAddress': TypeInfo(TypeOf.Class, create:() => NAVReturnAddress()),
    'SalesCenterReturnCreate': TypeInfo(TypeOf.Class, create:() => SalesCenterReturnCreate()),
    'List<NAVReturnInboundSkuCreate>': TypeInfo(TypeOf.Class, create:() => <NAVReturnInboundSkuCreate>[]),
    'List<NAVReturnOutboundSkuCreate>': TypeInfo(TypeOf.Class, create:() => <NAVReturnOutboundSkuCreate>[]),
});

Dart SalesCenterReturnCreate 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 /sales-center/return HTTP/1.1 
Host: extensions.avon.ca 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<SalesCenterReturnCreate 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>
</SalesCenterReturnCreate>
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>