Dashboard > ChannelAdvisor Developer Network > ... > Order Service > SubmitOrderRefund
Log In   View a printable version of the current page.
Added by Bill Loeb, last edited by Marshall McClure on Jan 17, 2012  (view change)
Labels: 
(None)


Overview

Issue a full or partial refund for an existing order and optionally restock inventory quantity with the refunded line items. This method includes all functionality in SubmitAmazonFullRefund and SubmitAmazonPartialRefund, and effectively replaces those functions.

When submitting refund requests, you can identify the order using either the ClientOrderIdentifier or OrderID.

Restrictions
  1. This method is currently supported for orders from all marketplaces except for Yahoo! Stores.
  2. Partial refunds can not be issued for orders using PayPal coupons.
  3. Inventory quantity restocking is not currently supported for Amazon, Buy.com, or Pixmania.

Request

Field Name Data Type Description
accountID string A unique identifier representing the ChannelAdvisor account you wish to access. This is required.
ClientOrderIdentifier string The order number as seen in the ChannelAdvisor user interface. Required if OrderID is not supplied.
OrderID int The internal ChannelAdvisor order identifier - may or may not be the same as the ClientOrderIdentifier. Required if ClientOrderIdentifier is not supplied.
Amount decimal Amount to refund - Ignored if RefundItems are present, but required otherwise.
AdjustmentReason RefundAdjustmentReason Reason for the refund request. If no reason is supplied then the value will default to GeneralAdjustment.
SellerRefundID
string
An optional identifier provided by the seller that only applies to order-level refunds.
RefundItems RefundItem[] Used to provide more granular details for partial refunds. This is required for partial refunds of Amazon/Buy orders. If RefundItems are supplied, then the Amount and Adjustment Reason above are ignored. If RefundItems are not supplied for an Amazon/Buy order, then a full refund is issued.

Response

Field Name Data Type Description
ClientOrderIdentifier string The order number as seen in the ChannelAdvisor user interface.
OrderID int The internal ChannelAdvisor order identifier - may or may not be the same as the ClientOrderIdentifier.
RefundItems RefundItem[] Additional result details for refund items.
MessageCode int
Message string Description of result.  Success does not necessarily mean the refund was successful.  Check the refund item details for more information.

References

Sample XML Request/Response: Order-level refund

XML Request

<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:web="http://api.channeladvisor.com/webservices/"
xmlns:ord="http://api.channeladvisor.com/datacontracts/orders">
   <soapenv:Header>
      <web:APICredentials>
         <web:DeveloperKey>...</web:DeveloperKey>
         <web:Password>...</web:Password>
      </web:APICredentials>
   </soapenv:Header>
   <soapenv:Body>
      <web:SubmitOrderRefund>
         <web:accountID>...</web:accountID>
         <web:request>
            <ord:OrderID>14996612</ord:OrderID>
            <ord:Amount>10.99</ord:Amount>
            <ord:AdjustmentReason>GeneralAdjustment</ord:AdjustmentReason>
         </web:request>
      </web:SubmitOrderRefund>
   </soapenv:Body>
</soapenv:Envelope>

XML Response

<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <SubmitOrderRefundResponse xmlns="http://api.channeladvisor.com/webservices/">
         <SubmitOrderRefundResult>
            <Status>Success</Status>
            <MessageCode>0</MessageCode>
            <Message>Approved: Success - CorrelationID: f45c5d7eb4c63, RefundTransactionID: 20S114698E0288022</Message>
            <ResultData>
               <OrderID xmlns="http://api.channeladvisor.com/datacontracts/orders">14996612</OrderID>
               <MessageCode xmlns="http://api.channeladvisor.com/datacontracts/orders">0</MessageCode>
            </ResultData>
         </SubmitOrderRefundResult>
      </SubmitOrderRefundResponse>
   </soap:Body>
</soap:Envelope>

Sample XML Request/Response: Partial refund

XML Request

<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:web="http://api.channeladvisor.com/webservices/"
xmlns:ord="http://api.channeladvisor.com/datacontracts/orders">
   <soapenv:Header>
      <web:APICredentials>
         <web:DeveloperKey>...</web:DeveloperKey>
         <web:Password>...</web:Password>
      </web:APICredentials>
   </soapenv:Header>
   <soapenv:Body>
      <web:SubmitOrderRefund>
         <web:accountID>...</web:accountID>
         <web:request>
            <ord:ClientOrderIdentifier>597A2-2147M6-6H8232</ord:ClientOrderIdentifier>
            <ord:RefundItems>
             <ord:RefundItem>
                  <ord:SKU>VictorinoxChefKnife - 8-inch</ord:SKU>
                  <ord:Amount>0.00</ord:Amount>
                  <ord:ShippingAmount>0.00</ord:ShippingAmount>
                  <ord:ShippingTaxAmount>0</ord:ShippingTaxAmount>
                  <ord:TaxAmount>0.00</ord:TaxAmount>
                  <ord:Quantity>1</ord:Quantity>
              </ord:RefundItem>
              <ord:RefundItem>
                  <ord:SKU>VictorinoxChefKnife - 6-inch</ord:SKU>
                  <ord:Amount>0.0</ord:Amount>
                  <ord:ShippingAmount>0.01</ord:ShippingAmount>
                  <ord:ShippingTaxAmount>0</ord:ShippingTaxAmount>
                  <ord:TaxAmount>0</ord:TaxAmount>
                  <ord:Quantity>1</ord:Quantity>
                  <ord:AdjustmentReason>CouldNotShip</ord:AdjustmentReason>
               </ord:RefundItem>
           </ord:RefundItems>
         </web:request>
      </web:SubmitOrderRefund>
   </soapenv:Body>
</soapenv:Envelope>

XML Response

<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <SubmitOrderRefundResponse xmlns="http://api.channeladvisor.com/webservices/">
         <SubmitOrderRefundResult>
            <Status>Success</Status>
            <MessageCode>0</MessageCode>
            <Message>Success</Message>
            <ResultData>
               <ClientOrderIdentifier xmlns="http://api.channeladvisor.com/datacontracts/orders">597A2-2147M6-6H8232</ClientOrderIdentifier>
               <OrderID xmlns="http://api.channeladvisor.com/datacontracts/orders">15000270</OrderID>
               <RefundItems xmlns="http://api.channeladvisor.com/datacontracts/orders">
                  <RefundItem>
                     <SKU>VictorinoxChefKnife - 8-inch</SKU>
                     <Amount>0.00</Amount>
                     <ShippingAmount>0.00</ShippingAmount>
                     <ShippingTaxAmount>0</ShippingTaxAmount>
                     <TaxAmount>0.00</TaxAmount>
                     <Quantity>1</Quantity>
                     <RefundRequestID>39643</RefundRequestID>
                     <RefundRequested>true</RefundRequested>
                     <AdjustmentReason>GeneralAdjustment</AdjustmentReason>
                  </RefundItem>
                  <RefundItem>
                     <SKU>VictorinoxChefKnife - 6-inch</SKU>
                     <Amount>0.0</Amount>
                     <ShippingAmount>0.0100</ShippingAmount>
                     <ShippingTaxAmount>0</ShippingTaxAmount>
                     <TaxAmount>0</TaxAmount>
                     <Quantity>1</Quantity>
                     <RefundRequestID>39644</RefundRequestID>
                     <RefundRequested>true</RefundRequested>
                     <AdjustmentReason>CouldNotShip</AdjustmentReason>
                  </RefundItem>
               </RefundItems>
               <MessageCode xmlns="http://api.channeladvisor.com/datacontracts/orders">0</MessageCode>
            </ResultData>
         </SubmitOrderRefundResult>
      </SubmitOrderRefundResponse>
   </soap:Body>
</soap:Envelope>
RefundAdjustmentReason (ChannelAdvisor Developer Network)
RefundItem (ChannelAdvisor Developer Network)

Hi,

I'm testing to submit a total refund but I'm getting error code 11. I can't find the meaning of this code in documentation.

Can you help understand why I am getting this error code? I'm sending the amount and without array fo Refund Items.

Posted by Anonymous at May 17, 2013 10:24 | Reply To This
Powered by Atlassian Confluence, the Enterprise Wiki. (Version: 2.5.1 Build:#806 May 06, 2007) - Bug/feature request - Contact Administrators