These docs are for v1.1. Click to read the latest docs for v1.2.

To add an order to a store, simply call the create method on the Order resource class. (A comprehensive list of the data attributes and their definitions can be found below.)

payload = { order: { "external_order_identifier" => "ABC123", "subtotal_including_tax" => "12.38", ... } }

ShippingEasy::Resources::Order.create(store_api_key: "d8821dde1d32f408def40b77273d5c11", payload: payload)

If successful the call will return a hash with the ShippingEasy order ID, as well as the external order identifier originally supplied in your call.

{ "order" => { "id" => "27654", "external_order_identifier" => "ABC123" } }

Possible Exceptions

ShippingEasy::AccessDeniedError

Your credentials could not be authenticated or the store api_key could not be found.

ShippingEasy::InvalidRequestError

The order could not be created on the server for one or more of the following reasons:

  • The JSON payload could not be parsed.
  • One or more of the supplied data attributes failed validation and is missing or incorrect.
  • An order with the supplied external_order_identifier already exists for that store.

The exception will contain a message that indicates which of these conditions failed.

Order Attributes

The following is a list of attributes that should be provided to the ShippingEasy_Order object as a associative array.

An example hash for the create order API call may be found here: https://gist.github.com/twmills/9349053.

external_order_identifier
: Required. The e-commerce system's order ID.

ordered_at
: Required. Timestamp when the order was created.

order_status
: Possible values are "awaiting_shipment", "awaiting_payment", "awaiting_fulfillment", "awaiting_shipment", "partially_shipped". Default is "awaiting_shipment".

total_including_tax
: Defaults to 0.0 if not specified.

total_excluding_tax
: Defaults to 0.0 if not specified.

discount_amount
: Defaults to 0.0 if not specified.

coupon_discount
: Defaults to 0.0 if not specified.

subtotal_including_tax
: Defaults to 0.0 if not specified.

subtotal_excluding_tax
: Defaults to 0.0 if not specified.

subtotal_tax
: Defaults to 0.0 if not specified.

total_tax
: Defaults to 0.0 if not specified.

base_shipping_cost
: Defaults to 0.0 if not specified.

shipping_cost_including_tax
: Defaults to 0.0 if not specified.

shipping_cost_excluding_tax
: Defaults to 0.0 if not specified.

shipping_cost_tax
: Defaults to 0.0 if not specified.

base_handling_cost
: Defaults to 0.0 if not specified.

handling_cost_excluding_tax
: Defaults to 0.0 if not specified.

handling_cost_including_tax
: Defaults to 0.0 if not specified.

handling_cost_tax
: Defaults to 0.0 if not specified.

base_wrapping_cost
: Defaults to 0.0 if not specified.

wrapping_cost_excluding_tax
: Defaults to 0.0 if not specified.

wrapping_cost_including_tax
: Defaults to 0.0 if not specified.

wrapping_cost_tax
: Defaults to 0.0 if not specified.

notes
: Customer notes on the order.

billing_company
: Company name for billing address

billing_first_name
: Customer first name for billing address

billing_last_name
: Customer last name for billing address

billing_address
: First address line for billing address

billing_address2
: Additional address line for billing address

billing_city
: City name for billing address

billing_state
: State name for billing address

billing_country
: Country name for billing address

billing_postal_code
: Postal code for billing address

billing_phone_number
: Phone number.

billing_email
: Email address

recipients
: A nested associative array of recipient attributes. At least one recipient is required.

recipients > company
: Company name for shipping address

recipients > first_name
: Customer first name for shipping address

recipients > last_name
: Customer last name for shipping address

recipients > address
: Required. First address line for shipping address

recipients > address2
: Additional address line for shipping address

recipients > city
: City name for shipping address

recipients > state
: State name for shipping address

recipients > country
: Country name for shipping address

recipients > residential
: Whether or not address is residential or not. Value can be "true" or "false".

recipients > postal_code
: Required. Postal code for shipping address

recipients > postal_code_plus_4
: Postal code plus 4 for shipping address

recipients > phone_number
: Customer phone number

recipients > email
: Customer email address

recipients > base_cost
: Cost before tax for all line items sent to this recipient

recipients > cost_excluding_tax
: Cost before tax for all line items sent to this recipient

recipients > cost_including_tax
: Cost including tax for all line items sent to this recipient

recipients > cost_tax
: Cost of the tax for all line items sent to this recipient

recipients > base_handling_cost
: Handling cost before tax for all line items sent to this recipient

recipients > handling_cost_excluding_tax
: Handling cost before tax for all line items sent to this recipient

recipients > handling_cost_including_tax
: Handling cost including tax for all line items sent to this recipient

recipients > handling_cost_tax
: Handling cost of the tax for all line items sent to this recipient

recipients > shipping_zone_id
: ID of the shipping zone.

recipients > shipping_zone_name
: Name of the shipping zone.

recipients > shipping_method
: Method of shipment.

recipients > items_total
: Total number of items.

recipients > items_shipped
: Total number of items shipped.

recipients > line_items
: A nested associative array of line item attributes. At least one line item is required.

recipients > line_items > item_name
: Name of the item/product.

recipients > line_items > sku
: SKU of the item/product.

recipients > line_items > bin_picking_number
: Bin number where the item may be stored in a warehouse.

recipients > line_items > weight_in_ounces
: Weight of the line item in ounces.

recipients > line_items > quantity
: Quantity of the the items for the line item.

recipients > line_items > total_excluding_tax
: Total excluding tax for the line item.

recipients > line_items > unit_price
: Unit price of the item.

recipients > line_items > product_options
: Hash of product variations applicable to this line item. E.g. {"color":"red", "size":"XXL"}