csharp
java
javascript
php
python
ruby
typescript

auto_order

/auto_order

The auto order REST API provides all the functionality necessary manipulate auto orders on your UltraCart account.

Software Development Kit (SDK)

To make working with our API easier, we package an SDK in the languages listed to the right. Select the language that you are interested in and sample code with additional commentary will be available. All of our APIs are available on GitHub at:

http://www.github.com/UltraCart/

By using an SDK you receive a number of important benefits.

Instantiating the API

There are four steps to instantiating the API.

  1. Include the SDK package
  2. Set the API credentials.
  3. Set the API version header.
  4. Instantiate the API Client.

Expansion

The auto order REST API has the capability to expand everything related to the auto order including the original and rebill order records. By default, when you read an auto order, a limited object is returned. If you specify the _expand parameter, additional properties of the auto order object are returned. We encourage you to limit the amount of information that you query for auto orders to the minimal amount possible to have optimal communication. The following expansion operations are available.

Retrieve auto orders

Permissions:
  • auto_order_read

Produces: application/json
get
/auto_order/auto_orders

Retrieves auto orders from the account. If no parameters are specified, all auto orders will be returned. You will need to make multiple API calls in order to retrieve the entire result set since this API performs result set pagination.

Parameters
Parameter Description Location Data Type Required
auto_order_code Auto order code query string optional
original_order_id Original order id query string optional
first_name First name query string optional
last_name Last name query string optional
company Company query string optional
city City query string optional
state State query string optional
postal_code Postal code query string optional
country_code Country code (ISO-3166 two letter) query string optional
phone Phone query string optional
email Email query string optional
original_order_date_begin Original order date begin query string (dateTime) optional
original_order_date_end Original order date end query string (dateTime) optional
next_shipment_date_begin Next shipment date begin query string (dateTime) optional
next_shipment_date_end Next shipment date end query string (dateTime) optional
card_type Card type query string optional
item_id Item ID query string optional
status Status query string optional
_limit The maximum number of records to return on this one API call. (Max 200)
Default: 100
query integer optional
_offset Pagination of the record set. Offset is a zero based index.
Default: 0
query integer optional
_since Fetch auto orders that have been created/modified since this date/time. query dateTime optional
_sort The sort order of the auto orders. See Sorting documentation for examples of using multiple values and sorting by ascending and descending.
Allowed Values
  • auto_order_code
  • order_id
  • shipping.company
  • shipping.first_name
  • shipping.last_name
  • shipping.city
  • shipping.state_region
  • shipping.postal_code
  • shipping.country_code
  • billing.phone
  • billing.email
  • billing.cc_email
  • billing.company
  • billing.first_name
  • billing.last_name
  • billing.city
  • billing.state
  • billing.postal_code
  • billing.country_code
  • creation_dts
  • payment.payment_dts
  • checkout.screen_branding_theme_code
query string optional
_expand The object expansion to perform on the result. See documentation for examples query string optional
Responses
Status Code Reason Response Model
200
Successful response AutoOrdersResponse
400
Bad Request 400
401
Unauthorized 401
410
Authorized Application Disabled 410
429
Too Many Requests 429
500
Server Side 500
// You must create your own Simple API key for this example to work.
// See the comments below.

using System;
using System.Collections.Generic;
using com.ultracart.admin.v2.Api;
using com.ultracart.admin.v2.Client;
using com.ultracart.admin.v2.Model;
using NUnit.Framework;

namespace SDKSample {

  [TestFixture]
  public class QueryAutoOrdersByEmail {

    /// <summary>
    /// Helper method to loop through a (possibly, be extremely doubtful) large auto order set and return back a chunk of it.
    /// See the Main method for its usage.
    /// See https://www.ultracart.com/api/#resource_auto_order.html
    /// </summary>
    /// <param name="api">AutoorderApi reference</param>
    /// <param name="email">email to filter by</param>
    /// <param name="offset">The record offset.  First execution this will be zero, and then increment
    /// by the number of records returned each iteration.</param>
    /// <param name="limit">Default and maximum is 200 records.  The example below uses 100.</param>
    /// <returns>
    /// A list of UltraCart AutoOrders.
    /// </returns>
    private static List<AutoOrder> GetAutOrdersChunk(AutoorderApi api, string email, int offset = 0, int limit = 200) {

      const string expand = "items,rebill_orders,original_order";

      var autoOrderResponse = api.GetAutoOrders(email: email, offset: offset, limit: limit, expand: expand);
      // TODO if the response is not success, handle errors here.
      return autoOrderResponse.Success == true ? autoOrderResponse.AutoOrders : new List<AutoOrder>();

    }


    [Test]
    public void GetAutoOrders() {

      // API Simple Keys Documentation
      // https://ultracart.atlassian.net/wiki/display/ucdoc/API+Simple+Key
      //
      // This is the backend screen where API keys are created.
      // See https://secure.ultracart.com/merchant/configuration/apiManagementApp.do
      const string simpleKey = "508052342b482a015d85c69048030a0005a9da7cea5afe015d85c69048030a00";
      Configuration.Default.ApiKey.Add("x-ultracart-simple-key", simpleKey);

      // This is required.  Search for 'Versioning' on this page:
      // https://www.ultracart.com/api/versioning.html
      Configuration.Default.DefaultHeader.Add("X-UltraCart-Api-Version", "2017-03-01");

      var api = new AutoorderApi();
      var offset = 0;
      const int limit = 100; // why 100?  Just to show more looping.  200 is the max and a better choice.
      var stillMoreRecords = true;
      var autoOrders = new List<AutoOrder>();
      const string email = "test@test.com";

      while (stillMoreRecords) {
        var chunkOfAutoOrders = GetAutOrdersChunk(api, email, offset, limit);
        Console.WriteLine($"{chunkOfAutoOrders.Count} auto orders retrieved.");
        autoOrders.AddRange(chunkOfAutoOrders);
        offset += limit;
        stillMoreRecords = chunkOfAutoOrders.Count == limit;

      }

      Console.WriteLine($"{autoOrders.Count} total auto orders retrieved.");

    }

  }
}
require 'com_ultracart_admin_v2'

# Setup authorization
UltraCartAdminV2.configure do |config|
  config.api_key['x-ultracart-simple-key'] \
      = '508052342b482a015d85c69048030a0005a9da7cea5afe015d85c69048030a00'
  config.debugging = false # For development.  Use true in production
  config.verify_ssl = false # Development server.  Use true in production
  config.verify_ssl_host = false # Development server.  Use true in production
end

api_instance = UltraCartAdminV2::AutoorderApi.new
api_instance.api_client.default_headers['X-UltraCart-Api-Version'] = '2017-03-01'

auto_order_oid = 3_268_342 # Integer | The auto order oid to retrieve.

opts = {
    _expand: 'items'
}

begin
  # Retrieve an auto order
  auto_order_response = api_instance.get_auto_order(auto_order_oid, opts)
  # p auto_order_response

  auto_order = auto_order_response.auto_order

  p auto_order

rescue UltraCartAdminV2::ApiError => e
  puts "Exception when calling AutoorderApi->get_auto_order: #{e.response_body}"
end

# for windows, I had to download libcurl.dll
# and place it (along with libeay32.dll and ssleay32.dll) into the ruby/bin directory.

Retrieve auto order batch

Permissions:
  • order_read

Produces: application/json
post
/auto_order/auto_orders/batch

Retrieves a group of auto orders from the account based on an array of auto order oids. If more than 200 auto order ids are specified, the API call will fail with a bad request error.

Parameters
Parameter Description Location Data Type Required
auto_order_batch Auto order batch body AutoOrderQueryBatch required
_expand The object expansion to perform on the result. query string optional
Responses
Status Code Reason Response Model
200
Successful response AutoOrdersResponse
400
Bad Request 400
401
Unauthorized 401
410
Authorized Application Disabled 410
429
Too Many Requests 429
500
Server Side 500

Update multiple auto orders

Permissions:
  • auto_order_write

Consumes: application/json
Produces: application/json
put
/auto_order/auto_orders/batch

Update multiple auto orders on the UltraCart account.

Parameters
Parameter Description Location Data Type Required
auto_orders_request Auto orders to update (synchronous maximum 20 / asynchronous maximum 100) body AutoOrdersRequest required
_expand The object expansion to perform on the result. See documentation for examples query string optional
_placeholders Whether or not placeholder values should be returned in the result. Useful for UIs that consume this REST API. query boolean optional
_async True if the operation should be run async. No result returned query boolean optional
Responses
Status Code Reason Response Model
200
Successful response AutoOrdersResponse
400
Bad Request 400
401
Unauthorized 401
410
Authorized Application Disabled 410
429
Too Many Requests 429
500
Server Side 500

Retrieve an auto order

Permissions:
  • auto_order_read

Produces: application/json
get
/auto_order/auto_orders/code/{auto_order_code}

Retrieves a single auto order using the specified reference (original) order id.

Parameters
Parameter Description Location Data Type Required
auto_order_code The auto order oid to retrieve. path string required
_expand The object expansion to perform on the result. See documentation for examples query string optional
Responses
Status Code Reason Response Model
200
Successful response AutoOrderResponse
400
Bad Request 400
401
Unauthorized 401
410
Authorized Application Disabled 410
429
Too Many Requests 429
500
Server Side 500

Retrieve auto orders

Permissions:
  • order_read

Produces: application/json
post
/auto_order/auto_orders/query

Retrieves a group of auto orders from the account based on a query object. You will need to make multiple API calls in order to retrieve the entire result set since this API performs result set pagination.

Parameters
Parameter Description Location Data Type Required
auto_order_query Auto order query body AutoOrderQuery required
_limit The maximum number of records to return on this one API call. (Maximum 200)
Default: 100
query integer optional
_offset Pagination of the record set. Offset is a zero based index.
Default: 0
query integer optional
_sort The sort order of the auto orders. See Sorting documentation for examples of using multiple values and sorting by ascending and descending.
Allowed Values
  • auto_order_code
  • order_id
  • shipping.company
  • shipping.first_name
  • shipping.last_name
  • shipping.city
  • shipping.state_region
  • shipping.postal_code
  • shipping.country_code
  • billing.phone
  • billing.email
  • billing.cc_email
  • billing.company
  • billing.first_name
  • billing.last_name
  • billing.city
  • billing.state
  • billing.postal_code
  • billing.country_code
  • creation_dts
  • payment.payment_dts
  • checkout.screen_branding_theme_code
query string optional
_expand The object expansion to perform on the result. query string optional
Responses
Status Code Reason Response Model
200
Successful response AutoOrdersResponse
400
Bad Request 400
401
Unauthorized 401
410
Authorized Application Disabled 410
429
Too Many Requests 429
500
Server Side 500

Retrieve an auto order

Permissions:
  • auto_order_read

Produces: application/json
get
/auto_order/auto_orders/reference_order_id/{reference_order_id}

Retrieves a single auto order using the specified reference (original) order id.

Parameters
Parameter Description Location Data Type Required
reference_order_id The auto order oid to retrieve. path string required
_expand The object expansion to perform on the result. See documentation for examples query string optional
Responses
Status Code Reason Response Model
200
Successful response AutoOrderResponse
400
Bad Request 400
401
Unauthorized 401
410
Authorized Application Disabled 410
429
Too Many Requests 429
500
Server Side 500

Retrieve an auto order

Permissions:
  • auto_order_read

Produces: application/json
get
/auto_order/auto_orders/{auto_order_oid}

Retrieves a single auto order using the specified auto order oid.

Parameters
Parameter Description Location Data Type Required
auto_order_oid The auto order oid to retrieve. path integer (int32) required
_expand The object expansion to perform on the result. See documentation for examples query string optional
Responses
Status Code Reason Response Model
200
Successful response AutoOrderResponse
400
Bad Request 400
401
Unauthorized 401
410
Authorized Application Disabled 410
429
Too Many Requests 429
500
Server Side 500
using System;
using com.ultracart.admin.v2.Api;
using com.ultracart.admin.v2.Client;
using com.ultracart.admin.v2.Model;
using NUnit.Framework;

namespace SDKSample {
  [TestFixture]
  public class AutoOrderUpdateTest {


    [Test]
    public void UpdateAutoOrder() {


      // See https://secure.ultracart.com/merchant/configuration/apiManagementApp.do
      const string simpleKey = "508052342b482a015d85c69048030a0005a9da7cea5afe015d85c69048030a00";
      Configuration.Default.ApiKey.Add("x-ultracart-simple-key", simpleKey);
      Configuration.Default.DefaultHeader.Add("X-UltraCart-Api-Version", "2017-03-01");

      var api = new AutoorderApi();

      const int autoOrderOid = 3268342;
      const string expansion = "items";
      var autoOrderResponse = api.GetAutoOrder(autoOrderOid, expansion);
      var autoOrder = autoOrderResponse.AutoOrder;

      var items = autoOrder.Items;

      // for the new item, set the next shipment date equal to the shipment date of the current items.
      // in case there are no items on this auto order (should *never* happen), start with a default of one month out.
      var nextShipmentDate =
        DateTime.UtcNow.AddMonths(1).ToString("s", System.Globalization.CultureInfo.InvariantCulture);

      if (items.Count > 0) {
        nextShipmentDate = items[0].NextShipmentDts;
      }


      var autoOrderItem = new AutoOrderItem {
        OriginalItemId = "PDF",
        OriginalQuantity = 2,
        RebillValue = decimal.Parse("34.23"),
        NextShipmentDts = nextShipmentDate
      };
      items.Add(autoOrderItem);

      autoOrderResponse = api.UpdateAutoOrder(autoOrder, autoOrderOid, expansion);
      autoOrder = autoOrderResponse.AutoOrder;

      Console.WriteLine(autoOrder);


    }


    [Test]
    public void DeleteAutoOrderItem() {


      // See https://secure.ultracart.com/merchant/configuration/apiManagementApp.do
      const string simpleKey = "508052342b482a015d85c69048030a0005a9da7cea5afe015d85c69048030a00";
      Configuration.Default.ApiKey.Add("x-ultracart-simple-key", simpleKey);
      Configuration.Default.DefaultHeader.Add("X-UltraCart-Api-Version", "2017-03-01");

      var api = new AutoorderApi();

      const int autoOrderOid = 3268342;
      const string expansion = "items";
      var autoOrderResponse = api.GetAutoOrder(autoOrderOid, expansion);
      var autoOrder = autoOrderResponse.AutoOrder;

      var items = autoOrder.Items;


      if (items.Count > 0) {
        items.Remove(items[items.Count - 1]);
      }


      autoOrderResponse = api.UpdateAutoOrder(autoOrder, autoOrderOid, expansion);
      autoOrder = autoOrderResponse.AutoOrder;

      Console.WriteLine(autoOrder);

    }


  }
}
<?php

set_time_limit(3000);
ini_set('max_execution_time', 3000);
ini_set('display_errors', 1);
?>
<!DOCTYPE html>
<html>
<body>
<?php

error_reporting(E_ALL);
require_once(__DIR__ . '/SwaggerClient-php/autoload.php');
$simple_key = '4256aaf6dfedfa01582fe9a961ab0100216d737b874a4801582fe9a961ab0100';
ultracart\v2\Configuration::getDefaultConfiguration()->setApiKey('x-ultracart-simple-key', $simple_key);
ultracart\v2\Configuration::getDefaultConfiguration()->addDefaultHeader("X-UltraCart-Api-Version", "2017-03-01");

$auto_order_oid = 2078718;  // this is found either by looping through auto orders, or from the back end.

$auto_order_api = new ultracart\v2\api\AutoorderApi();

$auto_order_response = $auto_order_api->getAutoOrder($auto_order_oid, "items");
$auto_order = $auto_order_response->getAutoOrder();

$auto_order->getItems()[0]->setArbitraryQuantity(4);

$auto_order_response = $auto_order_api->updateAutoOrder($auto_order, $auto_order_oid);


?>
<pre>
<?php echo print_r($auto_order); ?>
<?php echo print_r($auto_order_response); ?>
</pre>
<?php echo 'Finished.'; ?>
</body>
</html>

Update an auto order

Permissions:
  • auto_order_write

Consumes: application/json
Produces: application/json
put
/auto_order/auto_orders/{auto_order_oid}

Update an auto order on the UltraCart account.

Parameters
Parameter Description Location Data Type Required
auto_order Auto order to update body AutoOrder required
auto_order_oid The auto order oid to update. path integer (int32) required
_expand The object expansion to perform on the result. See documentation for examples query string optional
Responses
Status Code Reason Response Model
200
Successful response AutoOrderResponse
400
Bad Request 400
401
Unauthorized 401
410
Authorized Application Disabled 410
429
Too Many Requests 429
500
Server Side 500
using System;
using com.ultracart.admin.v2.Api;
using com.ultracart.admin.v2.Client;
using com.ultracart.admin.v2.Model;
using NUnit.Framework;

namespace SDKSample {
  [TestFixture]
  public class AutoOrderUpdateTest {


    [Test]
    public void UpdateAutoOrder() {


      // See https://secure.ultracart.com/merchant/configuration/apiManagementApp.do
      const string simpleKey = "508052342b482a015d85c69048030a0005a9da7cea5afe015d85c69048030a00";
      Configuration.Default.ApiKey.Add("x-ultracart-simple-key", simpleKey);
      Configuration.Default.DefaultHeader.Add("X-UltraCart-Api-Version", "2017-03-01");

      var api = new AutoorderApi();

      const int autoOrderOid = 3268342;
      const string expansion = "items";
      var autoOrderResponse = api.GetAutoOrder(autoOrderOid, expansion);
      var autoOrder = autoOrderResponse.AutoOrder;

      var items = autoOrder.Items;

      // for the new item, set the next shipment date equal to the shipment date of the current items.
      // in case there are no items on this auto order (should *never* happen), start with a default of one month out.
      var nextShipmentDate =
        DateTime.UtcNow.AddMonths(1).ToString("s", System.Globalization.CultureInfo.InvariantCulture);

      if (items.Count > 0) {
        nextShipmentDate = items[0].NextShipmentDts;
      }


      var autoOrderItem = new AutoOrderItem {
        OriginalItemId = "PDF",
        OriginalQuantity = 2,
        RebillValue = decimal.Parse("34.23"),
        NextShipmentDts = nextShipmentDate
      };
      items.Add(autoOrderItem);

      autoOrderResponse = api.UpdateAutoOrder(autoOrder, autoOrderOid, expansion);
      autoOrder = autoOrderResponse.AutoOrder;

      Console.WriteLine(autoOrder);


    }


    [Test]
    public void DeleteAutoOrderItem() {


      // See https://secure.ultracart.com/merchant/configuration/apiManagementApp.do
      const string simpleKey = "508052342b482a015d85c69048030a0005a9da7cea5afe015d85c69048030a00";
      Configuration.Default.ApiKey.Add("x-ultracart-simple-key", simpleKey);
      Configuration.Default.DefaultHeader.Add("X-UltraCart-Api-Version", "2017-03-01");

      var api = new AutoorderApi();

      const int autoOrderOid = 3268342;
      const string expansion = "items";
      var autoOrderResponse = api.GetAutoOrder(autoOrderOid, expansion);
      var autoOrder = autoOrderResponse.AutoOrder;

      var items = autoOrder.Items;


      if (items.Count > 0) {
        items.Remove(items[items.Count - 1]);
      }


      autoOrderResponse = api.UpdateAutoOrder(autoOrder, autoOrderOid, expansion);
      autoOrder = autoOrderResponse.AutoOrder;

      Console.WriteLine(autoOrder);

    }


  }
}
require 'com_ultracart_admin_v2'
require 'date'

# Setup authorization
UltraCartAdminV2.configure do |config|
  config.api_key['x-ultracart-simple-key'] \
      = '508052342b482a015d85c69048030a0005a9da7cea5afe015d85c69048030a00'
  config.debugging = false # For development.  Use true in production
  config.verify_ssl = false # Development server.  Use true in production
  config.verify_ssl_host = false # Development server.  Use true in production
end

api_instance = UltraCartAdminV2::AutoorderApi.new
api_instance.api_client.default_headers['X-UltraCart-Api-Version'] = '2017-03-01'

auto_order_oid = 3_268_342 # Integer | The auto order oid to retrieve.

opts = {
  _expand: 'items'
}

begin
  # Retrieve an auto order
  auto_order_response = api_instance.get_auto_order(auto_order_oid, opts)
  # p auto_order_response

  auto_order = auto_order_response.auto_order
  items = auto_order.items
  p items

  # add a new item to the auto order.  the big challenge is supplying the next shipment date.
  # if we already have items (should always), just use their date, else go 30 days out.
  default_dt = Time.new.to_datetime
  default_dt = default_dt >> 30
  next_shipment_dts = if !items.empty?
                        items[0].next_shipment_dts
                      else
                        default_dt.iso8601
                      end

  auto_order_item = UltraCartAdminV2::AutoOrderItem.new
  auto_order_item.original_item_id = 'PDF'
  auto_order_item.original_quantity = 1
  auto_order_item.rebill_value = 35.35
  auto_order_item.next_shipment_dts = next_shipment_dts

  items.push(auto_order_item)

  auto_order_response = api_instance.update_auto_order(auto_order, auto_order_oid, opts)
  auto_order = auto_order_response.auto_order

  p auto_order.items

rescue UltraCartAdminV2::ApiError => e
  puts "Exception when calling AutoorderApi->get_auto_order: #{e.response_body}"
end

# for windows, I had to download libcurl.dll
# and place it (along with libeay32.dll and ssleay32.dll) into the ruby/bin directory.

Webhooks

The following webhook events are generated for this resource.

Event Description Response Expansion
auto_order_cancel Trigger when an auto order canceled AutoOrder Yes
auto_order_create Trigger when an auto order is created AutoOrder Yes
auto_order_decline Trigger when an auto order is declined AutoOrder Yes
auto_order_disable Trigger when an auto order is disabled AutoOrder Yes
auto_order_rebill Trigger when an auto order is rebilled AutoOrder Yes
auto_order_update Trigger when an order is updated AutoOrder Yes

Activity

Attributes
Name Data Type Description
action string
metric string
subject string
ts integer (int64)
type string
uuid string

AutoOrder

Attributes
Name Data Type Description
auto_order_code (read only) string Unique code assigned to this auto order
auto_order_oid (read only) integer (int32) Auto order object identifier
cancel_after_next_x_orders integer (int32) Cancel this auto order after X additional rebills
cancel_downgrade (read only) boolean True if the auto order was canceled because the customer purchased a downgrade item
cancel_upgrade (read only) boolean True if the auto order was canceled because the customer purchased an upgrade item
canceled_by_user string The user that canceled the auto order
canceled_dts string (dateTime) The date/time that the auto order was canceled
completed (read only) boolean True if the auto order ran successfully to completion
credit_card_attempt integer (int32) The number of credit card attempts that have taken place
disabled_dts (read only) string (dateTime) The date/time the auto order was disabled due to failed rebills
enabled boolean True if this auto order is enabled
failure_reason (read only) string The reason this auto order failed during the last rebill attempt
items array of AutoOrderItem The items that are setup to rebill
next_attempt string (dateTime) The next time that the auto order will be attempted for processing
original_order Order The original order that this auto order is associated with.
original_order_id (read only) string The original order id that this auto order is associated with.
override_affiliate_id integer (int32) Override the affiliate id given credit for rebills of this auto order
rebill_orders (read only) array of Order Rebill orders that have taken place on this auto order
rotating_transaction_gateway_code string The RTG code associated with this order for future rebills

AutoOrderItem

Attributes
Name Data Type Description
arbitrary_item_id string Arbitrary item id that should be rebilled instead of the normal schedule
arbitrary_percentage_discount number An arbitrary percentage discount to provide on future rebills
arbitrary_quantity number Arbitrary quantity to rebill
arbitrary_schedule_days integer (int32) The number of days to rebill if the frequency is set to an arbitrary number of days
arbitrary_unit_cost number Arbitrary unit cost that rebills of this item should occur at
arbitrary_unit_cost_remaining_orders integer (int32) The number of rebills to give the arbitrary unit cost on before reverting to normal pricing.
auto_order_item_oid integer (int32) Primary key of AutoOrderItem
frequency string Frequency of the rebill if not a fixed schedule
Allowed Values
  • Weekly
  • Biweekly
  • Every...
  • Every 10 Days
  • Every 24 Days
  • Every 28 Days
  • Monthly
  • Every 45 Days
  • Every 2 Months
  • Every 3 Months
  • Every 4 Months
  • Every 6 Months
  • Yearly
future_schedules array of AutoOrderItemFutureSchedule The future rebill schedule for this item up to the next ten rebills
last_order_dts string (dateTime) Date/time of the last order of this item
life_time_value number The life time value of this item including the original purchase
next_preshipment_notice_dts string (dateTime) The date/time of when the next pre-shipment notice should be sent
next_shipment_dts string (dateTime) Date/time that this item is scheduled to rebill
no_order_after_dts string (dateTime) Date/time after which no additional rebills of this item should occur
number_of_rebills integer (int32) The number of times this item has rebilled
options array of AutoOrderItemOption Options associated with this item
original_item_id string The original item id purchased. This item controls scheduling. If you wish to modify a schedule, for example, from monthly to yearly, change this item from your monthly item to your yearly item, and then change the next_shipment_dts to your desired date.
original_quantity number The original quantity purchased
paypal_payer_id string The PayPal Payer ID tied to this item
paypal_recurring_payment_profile_id string The PayPal Profile ID tied to this item
preshipment_notice_sent boolean True if the preshipment notice associated with the next rebill has been sent
rebill_value number The value of the rebills of this item
remaining_repeat_count integer (int32) The number of rebills remaining before this item is complete
simple_schedule AutoOrderItemSimpleSchedule If the item is configured as an automatic rebill and only has a simple single step schedule then details are provided within this object

AutoOrderItemFutureSchedule

Attributes
Name Data Type Description
item_id string Item ID that should rebill
rebill_count integer (int32) The number of times this rebill represents
shipment_dts string (dateTime) Date/time that this item is scheduled to rebill
unit_cost number The unit cost of the item rebilling

AutoOrderItemOption

Attributes
Name Data Type Description
label string(50) Label
value string(1024) Value

AutoOrderItemSimpleSchedule

Attributes
Name Data Type Description
frequency (read only) string Frequency of the rebill if not a fixed schedule
Allowed Values
  • Weekly
  • Biweekly
  • Every...
  • Every 10 Days
  • Every 24 Days
  • Every 28 Days
  • Monthly
  • Every 45 Days
  • Every 2 Months
  • Every 3 Months
  • Every 4 Months
  • Every 6 Months
  • Yearly
item_id (read only) string Item ID that should rebill
repeat_count integer (int32) The number of times this simple schedule is configured for

AutoOrderQuery

Attributes
Name Data Type Description
auto_order_code string Auto order code
card_type string(100) Card type
city string City
company string Company
country_code string(2) ISO-3166 two letter country code
customer_profile_oid integer (int32) Customer profile object identifier
email string(100) Email
first_name string First name
item_id string Item ID
last_name string Last name
next_shipment_date_begin string (dateTime) Next shipment date begin
next_shipment_date_end string (dateTime) Next shipment date end
original_order_date_begin string (dateTime) Original order date begin
original_order_date_end string (dateTime) Original order date end
original_order_id string Original order ID
phone string(25) Phone
postal_code string Postal code
state string State
status string Status

AutoOrderQueryBatch

Attributes
Name Data Type Description
auto_order_oids array of integer (int32) Auto order oids

AutoOrderResponse

Attributes
Name Data Type Description
auto_order AutoOrder Auto order
error Error Error object if unsuccessful
metadata ResponseMetadata Meta-data about the response such as payload or paging information
success boolean Indicates if API call was successful

AutoOrdersRequest

Attributes
Name Data Type Description
autoOrders array of AutoOrder auto_orders

AutoOrdersResponse

Attributes
Name Data Type Description
auto_orders array of AutoOrder
error Error Error object if unsuccessful
metadata ResponseMetadata Meta-data about the response such as payload or paging information
success boolean Indicates if API call was successful

Currency

Attributes
Name Data Type Description
currency_code string Currency code of the localized value
exchange_rate number Exchange rate used to localize
localized number Value localized to the customer
localized_formatted string Value localized and formatted for the customer
value number Value in base currency

Customer

Attributes
Name Data Type Description
activity CustomerActivity activity by this customer
affiliate_oid integer (int32) Affiliate oid
allow_3rd_party_billing boolean Allow 3rd party billing
allow_cod boolean Allow COD
allow_purchase_order boolean Allow purchase orders by this customer
allow_quote_request boolean Allow quote request
allow_selection_of_address_type boolean Allow selection of residential or business address type
attachments array of CustomerAttachment Attachments
auto_approve_cod boolean Auto approve COD
auto_approve_purchase_order boolean Auto approve purchase orders by this customer
automatic_merchant_notes string Automatic merchant notes are added to every order placed
billing array of CustomerBilling Billing addresses for this customer
business_notes string(2000) Business notes (internally visible only)
cards array of CustomerCard Credit Cards for this customer
cc_emails array of CustomerEmail Additional emails to CC notification
customer_profile_oid (read only) integer (int32) Customer profile object identifier
dhl_account_number string(20) DHL account number
dhl_duty_account_number string(20) DHL duty account number
email string Email address of this customer profile
exempt_shipping_handling_charge boolean Exempt shipping handling charge
fedex_account_number string(20) FedEx account number
free_shipping boolean This customer always receives free shipping
free_shipping_minimum number If free_shipping is true, this is the minimum subtotal required for free shipping
last_modified_by (read only) string(100) Last modified by
last_modified_dts (read only) string (dateTime) Last modified date
loyalty CustomerLoyalty Loyalty
maximum_item_count integer (int32) Maximum item count
minimum_item_count integer (int32) Minimum item count
minimum_subtotal number Minimum subtotal
no_coupons boolean No coupons
no_free_shipping boolean No free shipping regardless of coupons or item level settings
no_realtime_charge boolean No realtime charge
orders array of Order Orders associated with this customer profile
orders_summary CustomerOrdersSummary Summary of orders placed by this customer profile
password string(30) Password (may only be set, never read)
pricing_tiers array of CustomerPricingTier Pricing tiers for this customer
privacy CustomerPrivacy Privacy settings of the customer profile
qb_class string QuickBooks class to import this customer as
qb_code string QuickBooks name to import this customer as
quotes array of Order Quotes associated with this customer profile
quotes_summary CustomerQuotesSummary Summary of the quotes submitted by this customer profile
referral_source string(50) Referral Source
reviewer CustomerReviewer Item reviewer information
sales_rep_code string(10) Sales rep code
send_signup_notification boolean Send signup notification, if true during customer creation, will send a notification.
shipping array of CustomerShipping Shipping addresses for this customer
signup_dts (read only) string Signup date
software_entitlements array of CustomerSoftwareEntitlement Software entitlements owned by this customer
suppress_buysafe boolean Suppress buySAFE
tags array of CustomerTag Tags for this customer
tax_codes CustomerTaxCodes Tax codes used by tax integrations
tax_exempt boolean True if the customer is tax exempt
tax_id string(15) Tax ID
terms string Terms for this customer
track_separately boolean True if the customer should be tracked separately in QuickBooks
unapproved boolean Unapproved
ups_account_number string(20) UPS account number
website_url string(100) Website url

CustomerActivity

Attributes
Name Data Type Description
activities array of Activity
memberships array of ListSegmentMembership
metrics array of Metric
properties_list array of Property

CustomerAttachment

Attributes
Name Data Type Description
customer_profile_attachment_oid (read only) integer (int32) Attachment identifier
description string Description
file_name (read only) string File name
mime_type (read only) string Mime typoe
upload_dts (read only) string (dateTime) Upload date/time

CustomerBilling

Attributes
Name Data Type Description
address1 string(50) Address line 1
address2 string(50) Address line 2
city string(32) City
company string(50) Company
country_code string(2) ISO-3166 two letter country code
customer_billing_oid (read only) integer (int32) Customer profile billing object identifier
customer_profile_oid (read only) integer (int32) Customer profile object identifier
day_phone string(25) Day phone
default_billing boolean Default billing
evening_phone string(25) Evening phone
first_name string(30) First name
last_name string(30) Last name
last_used_dts string (dateTime) Last used date
postal_code string(20) Postal code
state_region string(32) State for United States otherwise region or province for other countries
tax_county string(32) Tax County
title string(50) Title

CustomerCard

Attributes
Name Data Type Description
card_expiration_month integer (int32) Card expiration month (1-12)
card_expiration_year integer (int32) Card expiration year (four digit year)
card_number string Card number (masked to the last 4)
card_number_token string Hosted field token for the card number
card_type string Card type
customer_profile_credit_card_id integer (int32) ID of the stored credit card to use
customer_profile_oid (read only) integer (int32) Customer profile object identifier
last_used_dts string (dateTime) Last used date

CustomerEmail

Attributes
Name Data Type Description
customer_profile_email_oid integer (int32) ID of the email
email string(100) Email
label string(100) Label
receipt_notification boolean CC this email on receipt notifications
refund_notification boolean CC this email on refund notifications
shipment_notification boolean CC this email on shipment notifications

CustomerLoyalty

Attributes
Name Data Type Description
current_points (read only) integer (int32) Current Points
ledger_entries (read only) array of CustomerLoyaltyLedger Ledger entries
redemptions (read only) array of CustomerLoyaltyRedemption Redemptions

CustomerLoyaltyLedger

Attributes
Name Data Type Description
created_by (read only) string Created By
created_dts (read only) string (dateTime) Created date
description (read only) string Description
email (read only) string Email
item_id (read only) string Item Id
item_index (read only) integer (int32) Item Index
ledger_dts (read only) string (dateTime) Ledger date
loyalty_campaign_oid (read only) integer (int32) Loyalty campaign oid
loyalty_ledger_oid (read only) integer (int32) Loyalty ledger oid
loyalty_points (read only) integer (int32) Loyalty points
modified_by (read only) string Modified By
modified_dts (read only) string (dateTime) Modified date
order_id (read only) string Order Id
quantity (read only) integer (int32) Quantity
vesting_dts (read only) string (dateTime) Vesting date

CustomerLoyaltyRedemption

Attributes
Name Data Type Description
coupon_code (read only) string Coupon code
coupon_code_oid (read only) integer (int32) Coupon code OID
coupon_used (read only) boolean Coupon used
description_for_customer (read only) string Description for customer
expiration_dts (read only) string (dateTime) Expiration date
gift_certificate_code (read only) string Gift certificate code
gift_certificate_oid (read only) integer (int32) Gift certificate oid
loyalty_ledger_oid (read only) integer (int32) Loyalty ledger OID
loyalty_points (read only) integer (int32) Loyalty points
loyalty_redemption_oid (read only) integer (int32) Loyalty redemption OID
order_id (read only) string Order id
redemption_dts (read only) string (dateTime) Redemption date
remaining_balance (read only) number Remaining balance

CustomerOrdersSummary

Attributes
Name Data Type Description
first_order_dts (read only) string (dateTime) First order date
last_order_dts (read only) string (dateTime) Last order date
order_count integer (int32) Total number of orders
total number Total amount associated with the orders

CustomerPricingTier

Attributes
Name Data Type Description
name string(50) Name
pricing_tier_oid integer (int32) Pricing Tier Oid

CustomerPrivacy

Attributes
Name Data Type Description
last_update_dts (read only) string (dateTime) Last update date
marketing (read only) boolean The customer has opted in to marketing
preference (read only) boolean The customer has opted in to preference tracking
statistics (read only) boolean The customer has opted in to statistics collection

CustomerQuotesSummary

Attributes
Name Data Type Description
first_quote_dts (read only) string (dateTime) First quote date
last_quote_dts (read only) string (dateTime) Last quote date
quote_count integer (int32) Total number of quote
total number Total amount associated with the quotes

CustomerReviewer

Attributes
Name Data Type Description
auto_approve boolean True if reviewes from this customer profile should automatically be approved
average_overall_rating (read only) number Average overall rating of items reviewed
expert boolean True if the customer is an expert
first_review (read only) string (dateTime) First review
last_review (read only) string (dateTime) Last review
location string Location of the reviewer
nickname string Nickname of the reviewer
number_helpful_review_votes (read only) integer (int32) Number of helpful review votes
rank (read only) integer (int32) Rank of this reviewer
reviews_contributed (read only) integer (int32) Number of reviews contributed

CustomerShipping

Attributes
Name Data Type Description
address1 string(50) Address line 1
address2 string(50) Address line 2
city string(32) City
company string(50) Company
country_code string(2) ISO-3166 two letter country code
customer_profile_oid (read only) integer (int32) Customer profile object identifier
customer_shipping_oid (read only) integer (int32) Customer profile shipping object identifier
day_phone string(25) Day phone
default_shipping boolean Default shipping
evening_phone string(25) Evening phone
first_name string(30) First name
last_name string(30) Last name
last_used_dts string (dateTime) Last used date
postal_code string(20) Postal code
state_region string(32) State for United States otherwise region or province for other countries
tax_county string(32) Tax County
title string(50) Title

CustomerSoftwareEntitlement

Attributes
Name Data Type Description
activation_code string(50) Activation Code Associated with the software
activation_dts string (dateTime) Date/time when the activation code was created
customer_software_entitlement_oid (read only) integer (int32) Customer profile software entitlement object identifier
expiration_dts string (dateTime) Date/time when the activation code will expire
purchased_via_item_description (read only) string(512) Item description used to purchase this software.
purchased_via_item_id (read only) string(20) Item ID used to purchase this software.
purchased_via_order_id (read only) string(30) Order ID used to purchase this software.
software_sku string(30) SKU of the software

CustomerTag

Attributes
Name Data Type Description
tag_value string(100) Tag Value

CustomerTaxCodes

Attributes
Name Data Type Description
avalara_customer_code string Avalara customer code
avalara_entity_use_code string Avalara entity use code
taxjar_customer_id string TaxJar customer id

Distance

Attributes
Name Data Type Description
uom string Unit of measure
Allowed Values
  • IN
  • CM
value number The distance measured in UOM

Error

Attributes
Name Data Type Description
developer_message string A technical message meant to be read by a developer
error_code string HTTP status code
more_info string Additional information often a link to additional documentation
user_message string An end-user friendly message suitable for display to the customer

ErrorResponse

Attributes
Name Data Type Description
error Error Error object if unsuccessful
metadata ResponseMetadata Meta-data about the response such as payload or paging information
success boolean Indicates if API call was successful

ListSegmentMembership

Attributes
Name Data Type Description
name string
type string
uuid string

Metric

Attributes
Name Data Type Description
all_time number
all_time_formatted string
last_30 number
last_30_formatted string
name string
prior_30 number
prior_30_formatted string
type string

Order

Attributes
Name Data Type Description
affiliates (read only) array of OrderAffiliate Affiliates if any were associated with the order. The first one in the array sent the order and each subsequent affiliate is the recruiter that earns a downline commission.
auto_order (read only) OrderAutoOrder Auto Order
billing OrderBilling Billing
buysafe OrderBuysafe buySAFE bond
channel_partner (read only) OrderChannelPartner Channel Partner if one is associated with the order
checkout OrderCheckout Checkout
coupons array of OrderCoupon Coupons
creation_dts (read only) string (dateTime) Date/time that the order was created
currency_code string(3) Currency code that the customer used if different than the merchant's base currency code
Allowed Values
  • AUD
  • BRL
  • CAD
  • CHF
  • EUR
  • GBP
  • JPY
  • MXN
  • MYR
  • NOK
  • NZD
  • RUB
  • SEK
  • SGD
  • TRY
  • USD
current_stage string Current stage that the order is in.
Allowed Values
  • Accounts Receivable
  • Pending Clearance
  • Fraud Review
  • Rejected
  • Shipping Department
  • Completed Order
  • Quote Request
  • Quote Sent
  • Least Cost Routing
  • Unknown
customer_profile (read only) Customer Customer profile if one is associated with the order
digital_order OrderDigitalOrder Digital order details
edi OrderEdi EDI related information (only for orders received via EDI channel partner)
exchange_rate number Exchange rate at the time the order was placed if currency code is different than the base currency
fraud_score (read only) OrderFraudScore Fraud score if checked on the order
gift OrderGift Gift giving information
gift_certificate (read only) OrderGiftCertificate Gift certificate used on the order
internal OrderInternal Internal
items array of OrderItem Items
language_iso_code (read only) string(3) Three letter ISO-639 language code used by the customer during the checkout if different than the default language
linked_shipment (read only) OrderLinkedShipment Linked shipment information (CCBill orders only)
marketing OrderMarketing Marketing
merchant_id (read only) string UltraCart merchant ID owning this order
order_id (read only) string Order ID
payment OrderPayment Payment
properties array of OrderProperty Properties, available only through update, not through insert due to the nature of how properties are handled internally
quote (read only) OrderQuote Quote
refund_dts (read only) string (dateTime) If the order was refunded, the date/time that the last refund occurred
reject_dts (read only) string (dateTime) If the order was rejected, the date/time that the rejection occurred
salesforce (read only) OrderSalesforce Salesforce.com identifiers
shipping OrderShipping Shipping
summary OrderSummary Summary
Tags array of OrderTag tags, available only through update, not through insert due to the nature of how tags are handled internally
taxes OrderTaxes Taxes

OrderAffiliate

This object is read only. Changing the affiliate association should be with via the user interface.
Attributes
Name Data Type Description
affiliate_oid integer (int32) Affiliate ID
ledger_entries array of OrderAffiliateLedger Ledger entries associated with all the commissions earned on this order
sub_id string Sub identifier provided by the affiliate on the click that generated this order

OrderAffiliateLedger

This object is read only.
Attributes
Name Data Type Description
assigned_by_user string UltraCart user name that assigned this commission if manually assigned
item_id string Item ID that this ledger record is associated with
tier_number integer (int32) Tier number of this affiliate in the commission calculation
transaction_amount number Amount of the transaction
transaction_amount_paid number The amount that has been paid so far on the transaction
transaction_dts string (dateTime) The date/time that the affiliate ledger was generated for the transaction
transaction_memo string Details of the transaction suitable for display to the affiliate
transaction_percentage number The percentage earned on the transaction
transaction_state string The state of the transaction
Allowed Values
  • Pending
  • Posted
  • Approved
  • Paid
  • Rejected
  • Partially Paid

OrderAutoOrder

Attributes
Name Data Type Description
auto_order_code string Unique code assigned to the auto order
auto_order_oid integer (int32) Unique identifier assigned to the auto order
original_order_id string Orignal order id that started this auto order sequence
status string The status of the auto order
Allowed Values
  • active
  • canceled
  • disabled

OrderBilling

Attributes
Name Data Type Description
address1 string(50) Address line 1
address2 string(50) Address line 2
cc_emails array of string CC emails. Multiple allowed, but total length of all emails can not exceed 100 characters.
city string(32) City
company string(50) Company
country_code string(2) ISO-3166 two letter country code
day_phone string(25) Day time phone
day_phone_e164 (read only) string(25) Day time phone (E164 format)
email string(100) Email
evening_phone string(25) Evening phone
first_name string(30) First name
last_name string(30) Last name
postal_code string(20) Postal code
state_region string(32) State for United States otherwise region or province for other countries
title string(50) Title

OrderBuysafe

Attributes
Name Data Type Description
buysafe_bond_available (read only) boolean True if a buySAFE bond was available for purchase on this order
buysafe_bond_cost (read only) Currency Cost of the buySAFE bond
buysafe_bond_free (read only) boolean True if the buySAFE bond was free for this order
buysafe_bond_refunded (read only) Currency Amount of the buySAFE bond that was refunded
buysafe_bond_wanted boolean True if the buySAFE bond was wanted by the customer
buysafe_shopping_cart_id (read only) string Shopping cart ID associated with the buySAFE bond

OrderChannelPartner

This object is read-only except for inserts.
Attributes
Name Data Type Description
auto_approve_purchase_order boolean If true, any purchase order submitted is automatically approved
channel_partner_code string The code of the channel partner
channel_partner_data string Additional data provided by the channel partner, read-only
channel_partner_oid integer (int32) Channel partner object identifier, read-only and available on existing channel orders only.
channel_partner_order_id string The order ID assigned by the channel partner for this order
no_realtime_payment_processing boolean Indicates this order should be placed in Account Receivable for later payment processing
skip_payment_processing boolean Indicates this order was already paid for via a channel purchase and no payment collection should be attempted
store_completed boolean Instructs UltraCart to skip shipping department and mark this order as fully complete. Set this flag if you have already shipped product for this order.
store_if_payment_declines boolean If true, any failed payment will place the order in Accounts Receivable rather than rejecting it.
treat_warnings_as_errors boolean Any warnings are raised as errors and halt the import of the order

OrderCheckout

Attributes
Name Data Type Description
comments string Comments from the customer. Rarely used on the single page checkout.
custom_field1 string(50) Custom field 1
custom_field2 string(50) Custom field 2
custom_field3 string(50) Custom field 3
custom_field4 string(50) Custom field 4
custom_field5 string(75) Custom field 5
custom_field6 string(50) Custom field 6
custom_field7 string(50) Custom field 7
customer_ip_address (read only) string IP address of the customer when placing the order
screen_branding_theme_code string(10) Screen branding theme code associated with the order (legacy checkout)
storefront_host_name string StoreFront host name associated with the order
upsell_path_code (read only) string Upsell path code assigned during the checkout that the customer went through

OrderCoupon

Attributes
Name Data Type Description
accounting_code (read only) string QuickBooks accounting code for this coupon
automatically_applied (read only) boolean Whether or not the coupon was automatically applied to the order
base_coupon_code string(20) Coupon code configured by the merchant. Will differ if the customer used a one time coupon code generated off this base coupon
coupon_code string(20) Coupon code entered by the customer

OrderDigitalItem

Attributes
Name Data Type Description
file_size (read only) integer (int64) File size
last_download (read only) string (dateTime) Last download
last_download_ip_address (read only) string IP address that performed the last download
original_filename (read only) string Original file name
product_code (read only) string Item id associated with this item
product_description (read only) string Item description associated with this item
remaining_downloads integer (int32) Remaining number of downloads
url (read only) string URL that the customer can click to download the specific digital item

OrderDigitalOrder

Attributes
Name Data Type Description
creation_dts (read only) string (dateTime) Date/time that the digital order was created
expiration_dts string (dateTime) Expiration date/time of the digital order
items array of OrderDigitalItem Digital items associated with the digital order
url (read only) string URL where the customer can go to and download their digital order content
url_id (read only) string URL ID is a unique code that is part of the URLs

OrderEdi

Attributes
Name Data Type Description
bill_to_edi_code string Billing address identification code from the EDI order. Typically DUNS or DUNS+4
edi_department string Department number associated with this EDI order
edi_internal_vendor_number string(50) Internal vendor number associated with this EDI order
ship_to_edi_code string Shipping address identification code from the EDI order. Typically DUNS or DUNS+4

OrderFraudScore

The fraud score for the order. This entire object is read only and the details are provided to help you make a more educated decision on whether the order should be approved or rejected if the score is above your threshold.
Attributes
Name Data Type Description
anonymous_proxy boolean True if the IP address is a known anonymous proxy server
bin_match string Whether the BIN (first six digits) matched the country
Allowed Values
  • NA
  • No
  • NotFound
  • Yes
carder_email boolean True if the email address belongs to a known credit card fraudster
country_code string Country code
country_match boolean Country code matches BIN country
customer_phone_in_billing_location string Whether the customer's phone number is located in the area of the billing address
distance_km integer (int32) Distance in kilometers between the IP address and the BIN
free_email boolean True if the email address is for a free service like gmail.com
high_risk_country boolean True if the customer is in a high risk country known for internet fraud
ip_city string City associated with the IP address
ip_isp string ISP that owns the IP address
ip_latitude string Approximate latitude associated with the IP address
ip_longitude string Approximate longitude associated with the IP address
ip_org string Organization that owns the IP address
ip_region string State/region associated with the IP address
proxy_score number Likelihood of the IP address being a proxy server
score number Overall score. This is the score that is compared to see if the order is rejected or held for review by the fraud filter rules.
ship_forwarder boolean True if the address is a known ship forwarding company
spam_score number Likelihood of the email address being associated with a spammer
transparent_proxy boolean True if the IP address that placed the order is a transparent proxy server

OrderGift

Attributes
Name Data Type Description
gift boolean True if the order is a gift
gift_charge Currency Charge associated with making this order a gift
gift_charge_accounting_code (read only) string QuickBooks code for the gift charge
gift_charge_refunded Currency Amount refunded of the gift charge (read only except refund operation)
gift_email string(100) Email address of the gift recipient
gift_message string(10000) Message to the gift recipient
gift_wrap_accounting_code (read only) string QuickBooks code for the gift wrap charge
gift_wrap_cost Currency Cost of the gift wrap the customer selected
gift_wrap_refunded Currency Amount refunded of the gift wrap (read only except refund operation)
gift_wrap_title string(30) Title of the gift wrap that the customer wants used

OrderGiftCertificate

Attributes
Name Data Type Description
gift_certificate_amount (read only) Currency Gift certificate amount applied to the order
gift_certificate_code (read only) string Gift certificate code used on the order
gift_certificate_oid (read only) integer (int32) Gift certificate object identifier

OrderInternal

Attributes
Name Data Type Description
exported_to_accounting boolean True if the order has been exported to QuickBooks. If QuickBooks is not configured, then this will already be true
merchant_notes string Merchant notes
placed_by_user (read only) string If placed via the BEOE, this is the user that placed the order
refund_by_user (read only) string User that issued the refund
sales_rep_code string(10) Sales rep code associated with the order

OrderItem

Attributes
Name Data Type Description
accounting_code (read only) string QuickBooks code
activation_codes array of string Activation codes assigned to this item
arbitrary_unit_cost Currency Arbitrary unit cost, used only during inserts for overriding the unit cost of an item
auto_order_last_rebill_dts string (dateTime) Date/time of the last rebill, used only during order insert to help project future rebills
auto_order_schedule string Auto order schedule, used only during inserts supplying the recurring schedule
barcode (read only) string Barcode
channel_partner_item_id string(30) Channel partner item id if this order came through a channel partner and the channel partner item id was mapped to an internal item id
cogs (read only) number Cost of goods sold
component_unit_value (read only) number Value of the kit component item
cost Currency Cost
country_code_of_origin (read only) string(2) Country of origin (ISO-3166 two letter code)
customs_description (read only) string Customs description
description string(2000) Description
discount (read only) Currency Discount
discount_quantity (read only) number Discount quantity
discount_shipping_weight (read only) Weight Discount shipping weight
distribution_center_code string Distribution center code responsible for shipping this item
edi OrderItemEdi EDI related item information
exclude_coupon boolean True if this item is excluded from coupons
free_shipping boolean True if the item receives free shipping
hazmat boolean Hazardous materials indicator
height Distance Height
item_reference_oid (read only) integer (int32) Item reference object identifier used to linked to auto order item record
kit boolean True if this item is a kit
kit_component boolean True if this item is a kit component
length Distance Length
manufacturer_sku (read only) string Manufacturer SKU
max_days_time_in_transit integer (int32) Maximum days that the item can be in transit before spoilage (perishable products)
merchant_item_id string(20) Item ID
mix_and_match_group_name string Mix and match group name
mix_and_match_group_oid integer (int32) Mix and match group object identifier
no_shipping_discount boolean True if this item is excluded from shipping discounts
options array of OrderItemOption Options
packed_by_user (read only) string Packed by user
perishable_class string(50) Perishable class of the item
pricing_tier_name string Pricing tier that granted the particular price for this item if the customer profile had pricing tiers assigned
properties array of OrderItemProperty Properties
quantity number Quantity
quantity_refunded number Quantity refunded on this item (read only except refund operation)
quickbooks_class string(31) QuickBooks class
ship_separately boolean True if this item ships in a separate box
shipped_by_user (read only) string Shipped by user
shipped_dts string (dateTime) Date/time that this item was marked shipped
special_product_type string Special product type (USPS Media Mail)
Allowed Values
  • Book or Software
  • Music
  • Editorial
tags array of OrderItemTag Tags
tax_free boolean True if the item is tax free
taxable_cost Currency The taxable cost of the item. Typically the same as the cost
total_cost_with_discount (read only) Currency Total cost with discount
total_refunded Currency Total refunded on this item (read only except refund operation)
transmitted_to_distribution_center_dts string (dateTime) Date/time that this item was transmitted to the distribution center
unit_cost_with_discount (read only) Currency Unit cost with discount
upsell boolean True if this item was added to the order as part of an upsell
weight Weight Weight
width Distance Width

OrderItemEdi

This object is read only.
Attributes
Name Data Type Description
identifications (read only) array of OrderItemEdiIdentification Identification information receives on the EDI purchase order
lots (read only) array of OrderItemEdiLot Lot information

OrderItemEdiIdentification

This object is read only.
Attributes
Name Data Type Description
identification string Identification value
quantity integer (int32) Quantity associated with this identifier

OrderItemEdiLot

This object is read only.
Attributes
Name Data Type Description
lot_expiration string (dateTime) Log expiration
lot_number string Lot number
lot_quantity integer (int32) Lot quantity

OrderItemOption

Attributes
Name Data Type Description
additional_dimension_application string How the additional dimensions are applied to the item.
Allowed Values
  • none
  • set item to
  • add item
cost_change Currency The amount that this option changes the cost
file_attachment (read only) OrderItemOptionFileAttachment File attachment if option_type is file and attachment has not expired.
height Distance If additional_dimension_application != none
Height
hidden boolean True if this option is hidden from display on the order
label string(50) Label
length Distance If additional_dimension_application != none
Length
one_time_fee boolean True if the cost associated with this option is a one time fee or multiplied by the quantity of the item
value string(1024) Value
weight_change Weight The amount that this option changes the weight
width Distance If additional_dimension_application != none
Width

OrderItemOptionFileAttachment

This object is read only
Attributes
Name Data Type Description
expiration_dts string (dateTime) Expiration date/time
file_name string File name
mime_type string Mime type
size integer (int32) Size

OrderItemProperty

Attributes
Name Data Type Description
display boolean True if this property is displayed to the customer
expiration_dts string (dateTime) The date/time that the property expires and is deleted
name string(100) Name
value string(3800) Value

OrderItemTag

Attributes
Name Data Type Description
tag_value string(100) Tag Value

OrderLinkedShipment

This object is read only.
Attributes
Name Data Type Description
has_linked_shipment boolean True if this order has child linked shipments
linked_shipment boolean True if this order is linked to another parent order
linked_shipment_channel_partner_order_ids array of string If has_linked_shipment=true
The child linked shipment channel partner order ids
linked_shipment_order_ids array of string If has_linked_shipment=true
The child linked shipment order ids
linked_shipment_to_order_id string If linked_shipment=true
The parent order id that this one is linked to

OrderMarketing

Attributes
Name Data Type Description
advertising_source string(50) Advertising source
mailing_list boolean True if the customer has opted into mailing list subscription
referral_code string(30) Referral code

OrderPayment

Attributes
Name Data Type Description
check OrderPaymentCheck If payment_method=Check
Check payment information
credit_card OrderPaymentCreditCard If payment_method=Credit Card
Credit card payment information
echeck OrderPaymentECheck If payment_method=eCheck
E-Check payment information
hold_for_fraud_review (read only) boolean True if order has been held for fraud review
payment_dts string (dateTime) Date/time that the payment was successfully processed, for new orders, this field is only considered if channel_partner.skip_payment_processing is true
payment_method string Payment method
Allowed Values
  • Affirm
  • Amazon
  • Amazon SC
  • Cash
  • Check
  • COD
  • Credit Card
  • eBay
  • eCheck
  • LoanHero
  • Money Order
  • PayPal
  • Purchase Order
  • Quote Request
  • Unknown
  • Wire Transfer
  • Walmart
payment_method_accounting_code (read only) string Payment method QuickBooks code
payment_method_deposit_to_account (read only) string Payment method QuickBooks deposit account
payment_status (read only) string Payment status
Allowed Values
  • Unprocessed
  • Authorized
  • Capture Failed
  • Processed
  • Declined
  • Voided
  • Refunded
  • Skipped
purchase_order OrderPaymentPurchaseOrder If payment_method=Purchase Order
Purchase order information
rotating_transaction_gateway_code (read only) string Rotating transaction gateway code used to process this order
surcharge (read only) Currency Surcharge amount calculated from surcahrge_transaction_fee and surcharge_transaction_percentage
surcharge_accounting_code (read only) string Surcharge accounting code
surcharge_transaction_fee number Surcharge transaction fee
surcharge_transaction_percentage number Surcharge transaction percentage
test_order (read only) boolean True if this is a test order
transactions (read only) array of OrderPaymentTransaction Transactions associated with processing this payment

OrderPaymentCheck

Attributes
Name Data Type Description
check_number string Check number

OrderPaymentCreditCard

Attributes
Name Data Type Description
card_auth_ticket (read only) string Card authorization ticket
card_authorization_amount (read only) number Card authorization amount
card_authorization_dts (read only) string (dateTime) Card authorization date/time
card_authorization_reference_number (read only) string Card authorization reference number
card_expiration_month integer (int32) Card expiration month (1-12)
card_expiration_year integer (int32) Card expiration year (Four digit year)
card_number (read only) string Card number (masked to last 4)
card_number_token string Card number token from hosted fields used to update the cart number
card_number_truncated (read only) boolean True if the card has been truncated
card_type string Card type
Allowed Values
  • AMEX
  • Diners Club
  • Discover
  • JCB
  • MasterCard
  • VISA
card_verification_number_token string Card verification number token from hosted fields, only for import/insert of new orders, completely ignored for updates, and always null/empty for queries

OrderPaymentECheck

Attributes
Name Data Type Description
bank_aba_code string(9) Bank routing code
bank_account_name string(50) Bank account name
bank_account_number string(50) Bank account number (masked to last 4)
bank_account_type string Bank account type
Allowed Values
  • Checking
  • Savings
bank_name string(50) Bank name
bank_owner_type string Bank owner type
Allowed Values
  • Personal
  • Business
customer_tax_id string(9) Customer tax id (masked to last 4)
drivers_license_dob string(10) Driver license date of birth
drivers_license_number string(50) Driver license number (masked to last 4)
drivers_license_state string(2) Driver license state

OrderPaymentPurchaseOrder

Attributes
Name Data Type Description
purchase_order_number string Purchase order number

OrderPaymentTransaction

This object is read only.
Attributes
Name Data Type Description
details array of OrderPaymentTransactionDetail Details
successful boolean True if the transaction was successful
transaction_gateway string Transaction gateway
transaction_timestamp string (dateTime) Transaction date/time

OrderPaymentTransactionDetail

This object is read only.
Attributes
Name Data Type Description
name string Name
type string Type
value string Value

OrderProperty

Attributes
Name Data Type Description
display boolean True if this property is displayed to the customer
expiration_dts string (dateTime) The date/time that the property expires and is deleted
name string(100) Name
value string(3800) Value

OrderQuote

This object is read only.
Attributes
Name Data Type Description
quote_expiration_dts string (dateTime) Expiration of quote at date/time
quoted_by string Quoted by user
quoted_dts string (dateTime) Quoted on date/time

OrderSalesforce

This object is read only
Attributes
Name Data Type Description
salesforce_opportunity_id string Salesforce.com opportunity id

OrderShipping

Attributes
Name Data Type Description
address1 string(50) Address line 1
address2 string(50) Address line 2
city string(32) City
company string(50) Company
country_code string(2) ISO-3166 two letter country code
day_phone string(25) Day time phone
day_phone_e164 (read only) string(25) Day time phone (E164 format)
delivery_date string (dateTime) Date the customer is requesting delivery on. Typically used for perishable product delivery.
evening_phone string(25) Evening phone
first_name string(30) First name
last_name string(30) Last name
least_cost_route boolean If true, instructs UltraCart to apply the cheapest shipping method to this order. Used only for channel partner order inserts.
least_cost_route_shipping_methods array of string List of shipping methods to consider if least_code_route is true. Used only for channel parter order inserts.
lift_gate boolean Lift gate requested (LTL shipping methods only)
postal_code string(20) Postal code
rma string(30) RMA number
ship_on_date string (dateTime) Date the customer is requesting that the order ship on. Typically used for perishable product delivery.
ship_to_residential boolean True if the shipping address is residential. Effects the methods that are available to the customer as well as the price of the shipping method.
shipping_3rd_party_account_number string(20) Shipping 3rd party account number
shipping_date (read only) string (dateTime) Date/time the order shipped on. This date is set once the first shipment is sent to the customer.
shipping_department_status string(30) Shipping department status
shipping_method string Shipping method
shipping_method_accounting_code (read only) string Shipping method accounting code
special_instructions string Special instructions from the customer regarding shipping
state_region string(32) State
title string(50) Title
tracking_numbers array of string Tracking numbers
weight (read only) Weight Total weight of the items on the order

OrderSummary

Attributes
Name Data Type Description
arbitrary_shipping_handling_total Currency Arbitrary shipping handling total, this is meaningless for updating an order. For inserting a new order, this will override any internal shipping and handlig totals and should only be used for orders completed outside the system. This will probably only ever be needed when submitting arbitrary taxes AND shipping is taxed.
other_refunded (read only) Currency Other refunded
shipping_handling_refunded Currency Shipping/handling refunded (read only except refund operation)
shipping_handling_total Currency Shipping/handling total
shipping_handling_total_discount (read only) Currency Shipping/handling total discount
subtotal (read only) Currency Subtotal
subtotal_discount (read only) Currency Subtotal discount
subtotal_discount_refunded Currency Subtotal discount refunded (read only except refund operation)
subtotal_refunded (read only) Currency Subtotal refunded
tax Currency Tax, may be updated to reflect any changes made to the tax fields, but cannot be used when inserting an order. For inserting, use the arbitrary fields instead.
tax_refunded Currency Tax refunded (read only except refund operation)
taxable_subtotal (read only) Currency Taxable subtotal
taxable_subtotal_discount (read only) Currency Taxable subtotal discount
total (read only) Currency Total
total_refunded (read only) Currency Total refunded

OrderTag

Attributes
Name Data Type Description
tag_value string(100) Tag Value

OrderTaxes

Attributes
Name Data Type Description
arbitrary_tax number Arbitrary Tax, this is meaningless for updating an order. For inserting a new order, this will override any internal tax calculations and should only be used for orders completed outside the system.
arbitrary_tax_rate number Arbitrary tax rate, this is meaningless for updating an order. For inserting a new order, this will override any internal tax calculations and should only be used for orders completed outside the system.
arbitrary_taxable_subtotal number Arbitrary taxable subtotal, this is meaningless for updating an order. For inserting a new order, this will override any internal tax calculations and should only be used for orders completed outside the system.
tax_city_accounting_code (read only) string QuickBooks tax city code
tax_country_accounting_code (read only) string QuickBooks tax country code
tax_county string(32) County used for tax calculation purposes (only in the United States)
tax_county_accounting_code (read only) string QuickBooks tax county code
tax_gift_charge (read only) boolean True if gift charge is taxed
tax_postal_code_accounting_code (read only) string QuickBooks tax postal code code
tax_rate number Tax rate, this is meaningless for updating an order. For inserting a new order, if you need to override internal tax calculations, use the arbitrary fields.
tax_rate_city (read only) number Tax rate at the city level
tax_rate_country (read only) number Tax rate at the country level
tax_rate_county (read only) number Tax rate at the county level
tax_rate_postal_code (read only) number Tax rate at the postal code level
tax_rate_state (read only) number Tax rate at the state level
tax_shipping (read only) boolean True if shipping is taxed
tax_state_accounting_code (read only) string QuickBooks tax state code

Property

Attributes
Name Data Type Description
name string
value string

ResponseMetadata

Attributes
Name Data Type Description
payload_name string Payload name
result_set ResultSet Result set

ResultSet

Attributes
Name Data Type Description
count integer (int32) Number of results in this set
limit integer (int32) Maximum number of results that can be returned in a set
more boolean True if there are more results to query
next_offset integer (int32) The next offset that you should query to retrieve more results
offset integer (int32) Offset of this result set (zero based)
total_records integer (int32) The total number of records in the result set. May be null if the number is not known and the client should continue iterating as long as more is true.

Weight

Attributes
Name Data Type Description
uom string Unit of measure
Allowed Values
  • KG
  • LB
  • OZ
value number Weight

400
Status Code 400: bad request input such as invalid json

Headers
Name Data Type Description
UC-REST-ERROR string Contains human readable error message
Response
Name Data Type
body ErrorResponse

401
Status Code 401: invalid credentials supplied

Headers
Name Data Type Description
UC-REST-ERROR string Contains human readable error message
Response
Name Data Type
body ErrorResponse

410
Status Code 410: Your authorized application has been disabled by UltraCart

Headers
Name Data Type Description
UC-REST-ERROR string Contains human readable error message
Response
Name Data Type
body ErrorResponse

429
Status Code 429: you have exceeded the allowed API call rate limit for your application.

Headers
Name Data Type Description
UC-REST-ERROR string Contains human readable error message
Response
Name Data Type
body ErrorResponse

500
Status Code 500: any server side error. the body will contain a generic server error message

Headers
Name Data Type Description
UC-REST-ERROR string Contains human readable error message
Response
Name Data Type
body ErrorResponse