Documentation Summary

API

Order Calls

These calls return information about orders which have been place on the deployment. Orders which have not yet been placed will not be available.

All calls that return custom field values (product metadata fields, order fields, user profile fields etc.) only return values stored in the Storefront database. Values dynamically retrieved from remote data sources (such as third party web services and APIs) are not returned.

GetOrder

This call returns information about a single order.

Request

POST /roiwebinterface.asmx HTTP/1.1
Host: host
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetOrder xmlns="http://roidistribution.com/webapi">
      <orderId>string</orderId>
      <token>string</token>
    </GetOrder>
  </soap12:Body>
</soap12:Envelope>

<orderId> - the ID of the order to view
<token> - the authorisation token to validate the API call

Response

HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetOrderResponse xmlns="http://roidistribution.com/webapi">
      <GetOrderResult>
        <orderId>string</orderId>
        <externalId>string</externalId>
        <userId>string</userId>
        <dateTimeOrderPlaced>dateTime</dateTimeOrderPlaced>
        <approvalWorkflowName>string</approvalWorkflowName>
        <orderReviewer>string</orderReviewer>
        <reviewerComment>string</reviewerComment>
        <handlingCharge>
          <unit>eUnknown or ePound or eDollar or eEuro</unit>
          <amount>double</amount>
        </handlingCharge>
        <shippingCharge>
          <unit>eUnknown or ePound or eDollar or eEuro</unit>
          <amount>double</amount>
        </shippingCharge>
        <orderTotal>
          <unit>eUnknown or ePound or eDollar or eEuro</unit>
          <amount>double</amount>
        </orderTotal>
        <orderTax>
          <unit>eUnknown or ePound or eDollar or eEuro</unit>
          <amount>double</amount>
        </orderTax>
        <orderWeight>long</orderWeight>
        <orderParts>
          <OrderPart>
            <id>string</id>
            <orderId>string</orderId>
            <documentIdList xsi:nil="true" />
            <shippingAddress xsi:nil="true" />
          </OrderPart>
          <OrderPart>
            <id>string</id>
            <orderId>string</orderId>
            <documentIdList xsi:nil="true" />
            <shippingAddress xsi:nil="true" />
          </OrderPart>
        </orderParts>
        <documentIdList>
          <string>string</string>
          <string>string</string>
        </documentIdList>
        <CustomShippingFields>
          <CustomField>
            <Name>string</Name>
            <Value>string</Value>
          </CustomField>
          <CustomField>
            <Name>string</Name>
            <Value>string</Value>
          </CustomField>
        </CustomShippingFields>
      </GetOrderResult>
    </GetOrderResponse>
  </soap12:Body>
</soap12:Envelope>

<orderId> - the ID of the order
<externalId> - the ID of the order visible on the deployment
<userId> - the ID of the user who placed the order
<dateTimeOrderPlaced> - the timestamp for when the order was placed
<approvalWorkflowName> - the name of the approval workflow assigned to the order, may be blank if no workflow is applied
<orderReviewer> - the user ID of the approver, may be blank if no workflow is applied
<reviewerComment> - the comments of the approver, may be blank if no workflow is applied
<handlingCharge> - the enumerated currency and amount of the order’s handling fee
<shippingCharge> - the enumerated currency and amount of the order’s delivery fee
<orderTotal> - the enumerated currency and amount of the total order’s fee, excluding shipping and handling
<orderTax> - the enumerated currency and amount of the total order’s tax
<orderWeight> - the weight of the order, the unit of measure is configured in the deployment’s site options
<orderParts> - the order may be divided into shipments, grouped by order item ID and delivery address
<documentIdList> - a list of order item IDs for all the items in the order
<CustomShippingFields> - A list of custom field key-value pairs of the order’s shipping fields

GetOrderListForDate

This call returns information about multiple orders placed on a specified date.

Request

POST /roiwebinterface.asmx HTTP/1.1
Host: host
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetOrderListForDate xmlns="http://roidistribution.com/webapi">
      <date>dateTime</date>
      <token>string</token>
    </GetOrderListForDate>
  </soap12:Body>
</soap12:Envelope>

<date> - an ISO-8601 formatted date and time
<token> - the authorisation token to validate the API call

Response

HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetOrderListForDateResponse xmlns="http://roidistribution.com/webapi">
      <GetOrderListForDateResult>
        <Order>
          <orderId>string</orderId>
          <externalId>string</externalId>
          <userId>string</userId>
          <dateTimeOrderPlaced>dateTime</dateTimeOrderPlaced>
          <approvalWorkflowName>string</approvalWorkflowName>
          <orderReviewer>string</orderReviewer>
          <reviewerComment>string</reviewerComment>
          <handlingCharge>
            <unit>eUnknown or ePound or eDollar or eEuro</unit>
            <amount>double</amount>
          </handlingCharge>
          <shippingCharge>
            <unit>eUnknown or ePound or eDollar or eEuro</unit>
            <amount>double</amount>
          </shippingCharge>
          <orderTotal>
            <unit>eUnknown or ePound or eDollar or eEuro</unit>
            <amount>double</amount>
          </orderTotal>
          <orderTax>
            <unit>eUnknown or ePound or eDollar or eEuro</unit>
            <amount>double</amount>
          </orderTax>
          <orderWeight>long</orderWeight>
          <orderParts>
            <OrderPart xsi:nil="true" />
            <OrderPart xsi:nil="true" />
          </orderParts>
          <documentIdList>
            <string>string</string>
            <string>string</string>
          </documentIdList>
          <CustomShippingFields>
            <CustomField xsi:nil="true" />
            <CustomField xsi:nil="true" />
          </CustomShippingFields>
        </Order>
        <Order>
          <orderId>string</orderId>
          <externalId>string</externalId>
          <userId>string</userId>
          <dateTimeOrderPlaced>dateTime</dateTimeOrderPlaced>
          <approvalWorkflowName>string</approvalWorkflowName>
          <orderReviewer>string</orderReviewer>
          <reviewerComment>string</reviewerComment>
          <handlingCharge>
            <unit>eUnknown or ePound or eDollar or eEuro</unit>
            <amount>double</amount>
          </handlingCharge>
          <shippingCharge>
            <unit>eUnknown or ePound or eDollar or eEuro</unit>
            <amount>double</amount>
          </shippingCharge>
          <orderTotal>
            <unit>eUnknown or ePound or eDollar or eEuro</unit>
            <amount>double</amount>
          </orderTotal>
          <orderTax>
            <unit>eUnknown or ePound or eDollar or eEuro</unit>
            <amount>double</amount>
          </orderTax>
          <orderWeight>long</orderWeight>
          <orderParts>
            <OrderPart xsi:nil="true" />
            <OrderPart xsi:nil="true" />
          </orderParts>
          <documentIdList>
            <string>string</string>
            <string>string</string>
          </documentIdList>
          <CustomShippingFields>
            <CustomField xsi:nil="true" />
            <CustomField xsi:nil="true" />
          </CustomShippingFields>
        </Order>
      </GetOrderListForDateResult>
    </GetOrderListForDateResponse>
  </soap12:Body>
</soap12:Envelope>

<orderId> - the ID of the order
<externalId> - the ID of the order visible on the deployment
<userId> - the ID of the user who placed the order
<dateTimeOrderPlaced> - the timestamp for when the order was placed
<approvalWorkflowName> - the name of the approval workflow assigned to the order, may be blank if no workflow is applied
<orderReviewer> - the user ID of the approver, may be blank if no workflow is applied
<reviewerComment> - the comments of the approver, may be blank if no workflow is applied
<handlingCharge> - the enumerated currency and amount of the order’s handling fee
<shippingCharge> - the enumerated currency and amount of the order’s delivery fee
<orderTotal> - the enumerated currency and amount of the total order’s fee, excluding shipping and handling
<orderTax> - the enumerated currency and amount of the total order’s tax
<orderWeight> - the weight of the order, the unit of measure is configured in the deployment’s site options
<orderParts> - the order may be divided into shipments, grouped by order item ID and delivery address
<documentIdList> - a list of order item IDs for all the items in the order
<CustomShippingFields> - A list of custom field key-value pairs of the order’s shipping fields

GetOrderListByDateRange

This call returns information about multiple orders placed between a specified date range.

Request

POST /roiwebinterface.asmx HTTP/1.1
Host: host
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetOrderListByDateRange xmlns="http://roidistribution.com/webapi">
      <fromDateTime>dateTime</fromDateTime>
      <toDateTime>dateTime</toDateTime>
      <token>string</token>
    </GetOrderListByDateRange>
  </soap12:Body>
</soap12:Envelope>

<fromDateTime> - an ISO-8601 formatted date and time
<toDateTime> - an ISO-8601 formatted date and time
<token> - the authorisation token to validate the API call

Response

HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetOrderListByDateRangeResponse xmlns="http://roidistribution.com/webapi">
      <GetOrderListByDateRangeResult>
        <Order>
          <orderId>string</orderId>
          <externalId>string</externalId>
          <userId>string</userId>
          <dateTimeOrderPlaced>dateTime</dateTimeOrderPlaced>
          <approvalWorkflowName>string</approvalWorkflowName>
          <orderReviewer>string</orderReviewer>
          <reviewerComment>string</reviewerComment>
          <handlingCharge>
            <unit>eUnknown or ePound or eDollar or eEuro</unit>
            <amount>double</amount>
          </handlingCharge>
          <shippingCharge>
            <unit>eUnknown or ePound or eDollar or eEuro</unit>
            <amount>double</amount>
          </shippingCharge>
          <orderTotal>
            <unit>eUnknown or ePound or eDollar or eEuro</unit>
            <amount>double</amount>
          </orderTotal>
          <orderTax>
            <unit>eUnknown or ePound or eDollar or eEuro</unit>
            <amount>double</amount>
          </orderTax>
          <orderWeight>long</orderWeight>
          <orderParts>
            <OrderPart xsi:nil="true" />
            <OrderPart xsi:nil="true" />
          </orderParts>
          <documentIdList>
            <string>string</string>
            <string>string</string>
          </documentIdList>
          <CustomShippingFields>
            <CustomField xsi:nil="true" />
            <CustomField xsi:nil="true" />
          </CustomShippingFields>
        </Order>
        <Order>
          <orderId>string</orderId>
          <externalId>string</externalId>
          <userId>string</userId>
          <dateTimeOrderPlaced>dateTime</dateTimeOrderPlaced>
          <approvalWorkflowName>string</approvalWorkflowName>
          <orderReviewer>string</orderReviewer>
          <reviewerComment>string</reviewerComment>
          <handlingCharge>
            <unit>eUnknown or ePound or eDollar or eEuro</unit>
            <amount>double</amount>
          </handlingCharge>
          <shippingCharge>
            <unit>eUnknown or ePound or eDollar or eEuro</unit>
            <amount>double</amount>
          </shippingCharge>
          <orderTotal>
            <unit>eUnknown or ePound or eDollar or eEuro</unit>
            <amount>double</amount>
          </orderTotal>
          <orderTax>
            <unit>eUnknown or ePound or eDollar or eEuro</unit>
            <amount>double</amount>
          </orderTax>
          <orderWeight>long</orderWeight>
          <orderParts>
            <OrderPart xsi:nil="true" />
            <OrderPart xsi:nil="true" />
          </orderParts>
          <documentIdList>
            <string>string</string>
            <string>string</string>
          </documentIdList>
          <CustomShippingFields>
            <CustomField xsi:nil="true" />
            <CustomField xsi:nil="true" />
          </CustomShippingFields>
        </Order>
      </GetOrderListByDateRangeResult>
    </GetOrderListByDateRangeResponse>
  </soap12:Body>
</soap12:Envelope>

<orderId> - the ID of the order
<externalId> - the ID of the order visible on the deployment
<userId> - the ID of the user who placed the order
<dateTimeOrderPlaced> - the timestamp for when the order was placed
<approvalWorkflowName> - the name of the approval workflow assigned to the order, may be blank if no workflow is applied
<orderReviewer> - the user ID of the approver, may be blank if no workflow is applied
<reviewerComment> - the comments of the approver, may be blank if no workflow is applied
<handlingCharge> - the enumerated currency and amount of the order’s handling fee
<shippingCharge> - the enumerated currency and amount of the order’s delivery fee
<orderTotal> - the enumerated currency and amount of the total order’s fee, excluding shipping and handling
<orderTax> - the enumerated currency and amount of the total order’s tax
<orderWeight> - the weight of the order, the unit of measure is configured in the deployment’s site options
<orderParts> - the order may be divided into shipments, grouped by order item ID and delivery address
<documentIdList> - a list of order item IDs for all the items in the order
<CustomShippingFields> - A list of custom field key-value pairs of the order’s shipping fields

GetOrderIdListForDate

This call returns a list of order IDs placed on a specified date. This is a quicker alternative to GetOrderListByDate.

Request

POST /roiwebinterface.asmx HTTP/1.1
Host: host
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetOrderIdListForDate xmlns="http://roidistribution.com/webapi">
      <date>dateTime</date>
      <token>string</token>
    </GetOrderIdListForDate>
  </soap12:Body>
</soap12:Envelope>

<date> - an ISO-8601 formatted date and time
<token> - the authorisation token to validate the API call

Response

HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetOrderIdListForDateResponse xmlns="http://roidistribution.com/webapi">
      <GetOrderIdListForDateResult>
        <string>string</string>
        <string>string</string>
      </GetOrderIdListForDateResult>
    </GetOrderIdListForDateResponse>
  </soap12:Body>
</soap12:Envelope>

<GetOrderIdListForDateResult> - a list of order IDs placed between on the date specified

GetOrderIdListByDateRange

This call returns a list of order IDs placed between a specified date range. This is a quicker alternative to GetOrderListByDateRange.

Request

POST /roiwebinterface.asmx HTTP/1.1
	Host: host
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetOrderIdListByDateRange xmlns="http://roidistribution.com/webapi">
      <fromDateTime>dateTime</fromDateTime>
      <toDateTime>dateTime</toDateTime>
      <token>string</token>
    </GetOrderIdListByDateRange>
  </soap12:Body>
</soap12:Envelope>

<fromDateTime> - an ISO-8601 formatted date and time
<toDateTime> - an ISO-8601 formatted date and time
<token> - the authorisation token to validate the API call

Response

HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetOrderIdListByDateRangeResponse xmlns="http://roidistribution.com/webapi">
      <GetOrderIdListByDateRangeResult>
        <string>string</string>
        <string>string</string>
      </GetOrderIdListByDateRangeResult>
    </GetOrderIdListByDateRangeResponse>
  </soap12:Body>
</soap12:Envelope>

<GetOrderIdListByDateRangeResult> - a list of order IDs placed between the dates specified

GetOrderFields

This call allows multiple payment field values to be set for a single order.

Request

POST /roiwebinterface.asmx HTTP/1.1
Host: host
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetOrderFields xmlns="http://roidistribution.com/webapi">
	<orderId>string</userId>
	<token>string</token>
    </GetOrderFields>
  </soap12:Body>
</soap12:Envelope>

<orderId> - the ID of an order
<token> - the authorisation token to validate the API call

Response

HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetOrderFieldsResponse xmlns="http://roidistribution.com/webapi" >
      <GetOrderFieldsResult>
		<CustomField>
		  <Name>string</Name>
		  <codevalue>string</Value>
		</CustomField>
		<CustomField>
		  <Name>string</Name>
		  <codevalue>string</Value>
		</CustomField>
      </GetOrderFieldsResult>
    </GetOrderFieldsResponse>
  </soap12:Body>
</soap12:Envelope>

<orderFields> - a list of custom field key-value pairs for the order

SetOrderFields

This call allows multiple payment field values to be set for a single order.

Request

POST /roiwebinterface.asmx HTTP/1.1
Host: host
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
	<SetOrderFields xmlns="http://roidistribution.com/webapi">
	  <orderId>string</userId>
	  <orderFields>
		<CustomField>
		  <Name>string</Name>
		  <codevalue>string</Value>
		</CustomField>
		<CustomField>
		  <Name>string</Name>
		  <codevalue>string</Value>
		</CustomField>
	  </orderFields>
	  <token>string</token>
	</SetOrderFields>
  </soap12:Body>
</soap12:Envelope>

<orderId> - the ID of an order
<orderFields> - a list of custom field key-value pairs for the order to be set
<token> - the authorisation token to validate the API call

Response

HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <SetOrderFieldsResponse xmlns="http://roidistribution.com/webapi" />
  </soap12:Body>
</soap12:Envelope>

The call returns an error if it fails to set the requested payment fields