MenuClose

Shipping Rules - API Reference

Select API:

Shipping Rules

The courier or freight fee rules available for checkout. Each order can only have rule applied

End Point URL

https://api.cms-tool.net/webapps/api/shipping

API Parameters and Filters

Name Description Example Optional Data type
Shipping Destination

Get all shipping options for the destination

shippingdest = "Auckland"

Yes string
Shipping courier

Get all shipping options by the courier provided

ship_courier = "GoSweetSpot" Yes string
Shipping domestic

Get all shipping options based on Domestic

isDomestic = 1 or isDomestic = 0

Yes int

Data Dictionary

Key Definition Type Format
shippingcalc
Shipping Rule ID
Unique ID, system ID. Do not set or change this value.
Integer (Unique ID)
cid
Website ID
System ID. Do not set or change this value.
int
Max Len: 11
ship_category_ifall
If all products are in the category
Refer to the category ID list, this freight option is only valid if all items in the cart belong in this category.
int
Max Len: 11
ship_category_ifany
If any product is in category
Refer to the category ID list. This freight option is valid if any category item exists in the cart.
int
Max Len: 11
ship_category_notifall
Not if all products are in the category
Refer to the category ID list. This freight option is not valid if all items in the cart belong in this category.
int
Max Len: 11
ship_category_notifany
If no product is in category
Refer to the category ID list. This freight option is not valid if this category exists in the cart.
int
Max Len: 11
ship_category_notifany2
If no product is in category (additional)
Refer to the category ID list. This freight option is not valid if this category exists in the cart.
int
Max Len: 11
ship_exclude_mapid
Exclude Country/Region
An ID representing the country, state, region or continent where this freight option is not valid. Refer to the region metadata provided.
int
Max Len: 11
shipfiltercountry
Country/Region Filter
An ID representing the country, state, region or continent where this freight option is applicable. Refer to the region metadata provided.
int
Max Len: 11
ship_valid_for_groupid
Member Group Filter
ID from the customer group reference data. This freight option only valid for the specified customer group, and will not be visible to other customers.
int
Max Len: 11
ship_valid_for_max_member_level
Hide From Wholesale
Members of this level and above are denied using the discount. Only use member level ID from reference data.
int
Max Len: 11
ship_address_format
Checkout Address Format
Defines the checkout address format schema enforced by the system. This field is system-controlled and must not be generated, modified, or inferred by the LLM.
int
Max Len: 11
ship_branch_address
Invoicing Address
Address for invoicing the business or branch that is sending the freight.
text
ship_branch_email
Invoicing Email
Email address for invoicing the business or branch that is sending the freight.
text
ship_branch_name
Invoicing Branch/Business Name
Name of the business or branch that is sending the freight.
text
ship_branch_phone
Invoicing Phone
The contact phone number associated with the sender of freighted goods.
text
ship_branch_tax_number
Invoicing Tax number
Tax number or code associated with the sender of freighted goods.
text
ship_categories_json
Custom rates by product category
Custom rates per product category, provided as a nested JSON array. This field is system-defined and must not be generated or modified by the LLM.
json
shipcompulsoryfields
Add Compulsory Field(s)
Specifies which checkout fields are compulsory for this freight option. Supported values: • "Phone" – makes the phone field compulsory at checkout An empty value ("") indicates that no checkout fields are compulsory.
text
ship_config_json
ship config json
This field is reserved for internal or advanced configurations and does not participate in freight rule inference, validation, or pricing logic.
text
ship_courier
Courier API
Name of an advanced API-powered courier integration for live pricing.
text
ship_courier_on
When to Trigger Courier
Specifies the event that triggers courier notification. Possible values are {payment, order}. This field controls courier timing independently of notification email settings.
text
ship_currency
Currency Filter
Specifies the currency that this freight option applies to. This field does not perform currency conversion and does not affect pricing logic.
char
Max Len: 3
ship_exclude_rural_codes
Rural/PO Exclusions
Enum code defining which address types are excluded from this freight option. Leave as null when the freight option is valid for all address types. Valid values: nzrural – Exclude NZ rural addresses pobox – Exclude PO Boxes nzruralpobox – Exclude NZ rural addresses and PO Boxes nzurban – Exclude NZ urban addresses nzurbanpobox – Exclude NZ urban addresses and PO Boxes This field is exclusion-only and must not be interpreted as an inclusion rule.
text
ship_exclude_sale_items_from_free_freight
Excluding sale items
False by default. Set to True if discounted products should be excluded from the minimum order total defined in **ship_freeShippingOver**.
bool
Max Len: 1
true/false
ship_freeshippingover
Free/Discounted if order total over
If the value of the shopping cart reaches this total value for products purchased, excluding GST, then the shipping will be free.
decimal
Precision: 12.3
ship_free_surcharge
Free/Discounted Surcharge
If free shipping is established by the rule for **ship_freeShippingOver**, then apply this flat rate price and ignore other pricing rules.
decimal
Precision: 10.3
ship_hide_delivery
Pickup / Delivery
If specified as a collect, pickup, or digital delivery option, the customer is not required to enter a delivery address at checkout.
bool
Max Len: 1
true/false
shipnotifyoncallback
Notify Delivery Depot (On Paid):
Email address that receives a payment confirmation notification. This field specifies the recipient only and does not control workflow timing.
text
ship_notify_on_order
Notify Delivery Depot (On Order)
Email address that receives an order placement notification. This field specifies the recipient only and does not control order processing or courier timing.
text
ship_order_notes
Special Notes On Order/Invoice Footer
Free-text notes displayed on the order or invoice to describe delivery conditions or special handling requirements. This field is informational only and does not affect freight logic or validation.
text
ship_page_filter
Page/Cart Scope
Defines the page context in which this freight option is available. Valid values: • 1 – All pages (freight option is available site-wide) • 661496 – This page only (freight option is limited to the current page)
int
Max Len: 11
shippingbase
Base Fee per Order
A base shipping fee per order. Other fees may be added, or this may be a simple fee for the whole order.
decimal
Precision: 10.3
shippingdest
Freight Option Name
A short, human-readable name for the freight option. If not specified by the user, a default label may be generated based on geography. This field is descriptive only and must not be used to infer, create, or modify any freight rules, filters, exclusions, or pricing logic.
text
shippinggram1
Weight tier 1
This value specifies a weight band, in unit of grams. This is the lowest weight band. The price will be specified in field shippinggram1price. eg 1000 for 1kg.
int
Max Len: 11
shippinggram1price
Weight tier 2 price
The price for the weight band specified by shippinggram1. eg 10 meaning the cost is 10 per the weight band shippinggram1.
decimal
Precision: 10.3
shippinggram2
Weight tier 2
This value specifies a weight band, in unit of grams. This is the 2nd weight band. The price will be specified in field shippinggram2price. eg 1000 for 1kg.
int
Max Len: 11
shippinggram2price
Weight tier 2 price
The price for the 2nd weight band specified by shippinggram2. eg 10 meaning the cost is 10 per the weight band shippinggram2.
decimal
Precision: 10.3
shippinggram3
Weight tier 3
This value specifies a weight band, in unit of grams. This is the 3rd weight band. The price will be specified in field shippinggram3price. eg 1000 for 1kg.
int
Max Len: 11
shippinggram3price
Weight tier 3 price
The price for the 3rd weight band specified by shippinggram3. eg 10 meaning the cost is 10 per the weight band shippinggram3.
decimal
Precision: 10.3
shippinggram4
Weight tier 4
This value specifies a weight band, in unit of grams. This is the 4th weight band. The price will be specified in field shippinggram4price. eg 1000 for 1kg.
int
Max Len: 11
shippinggram4price
Weight tier 4 price
The price for the 4th weight band specified by shippinggram4. eg 10 meaning the cost is 10 per the weight band shippinggram4.
decimal
Precision: 10.3
shippinggram5
Weight tier 5
This value specifies a weight band, in unit of grams. This is the Highest weight band. The price will be specified in field shippinggram5price. eg 1000 for 1kg.
int
Max Len: 11
shippinggram5price
Weight tier 5 price
The price for the Highest weight band specified by shippinggram5. eg 10 meaning the cost is 10 per the weight band shippinggram5.
decimal
Precision: 10.3
shippingkgmax
Valid For Weight Range (Min)
The maximum weight an order can be to be able to use this shipping option. eg Couriers reject boxes that cannot be lifted by 1 person.
decimal
Precision: 10.3
shippingkgmin
Valid For Weight Range (Max)
The minimum weight an order must be to be able to use this shipping option. eg when a truck might be needed for large items.
decimal
Precision: 10.3
shippingmax
Maximum Fee Per Order
The maximum fee that will be charged. If other fees add up to more than this number, then this number will be used only. Or 0 if not required.
decimal
Precision: 12.3
shippingmin
Minimum Fee Per Order
The minimum fee that will be charged, if other fees do not reach this number. Or 0 if not required.
decimal
Precision: 10.3
shippingpercent
Percentage of order value
Shipping fee will be calculated as a percentage of the total order value (e.g. shipping is 50 percent of the total order value).
decimal
Precision: 4.2
shippingpergram
Weight teir excess band
The cost per weight band specified by **shippingpergramband**. eg $5 per 1000 grams.
decimal
Precision: 10.3
shippingpergramband
Weight teir excess band price
Repeating weight band. Unit in grams. If the weight of the order exceeds the specified weight bands, then this repeating weight band will cover the excess weight. eg every 1000 grams will cost $5.
int
Max Len: 11
shippingperunit
Per Unit Fee
Charge a fee for every unit purchased.
decimal
Precision: 10.3
ship_postcode_exclusions
Post Code Exclusions
Specified postcodes to exclude from the order, needs to be comma-separated for multiple values, Used when a particular suburb might be difficult to get to, such as an island. eg 1001,1002,1003 etc.
text
ship_postcode_filter
Post Code Filter
Specified postcodes to be included in order, needs to be comma-separated for multiple values. This shipping option is only available for these postcodes, and might be used for restaurant delivery to local suburbs. eg 1001,1002,1003 etc.
text
ship_pricesel
Local tax applicable?
Indicates whether this freight rule is treated as domestic or international for tax calculation purposes.
int
Max Len: 11
ship_priority
Ship Priority
Controls the display order of this freight option in selection lists. This field does not affect eligibility, filtering, or pricing logic.
int
Max Len: 11
ship_rural_surcharge
Rural Delivery Surcharge
An additional fee if the system identifies the delivery address is rural delivery.
decimal
Precision: 10.3
ship_salestax_fee
Export Fixed Tax/Tariff Fee
Only if specified, where an international country has a minimum or flat rate tax or tariff added.
decimal
Precision: 10.2
ship_salestax_name
Export Tax/Tariff Wording
Duties tax word input the correct duties terminology according to where the freight is being shipped to, eg Sales tax or Tariff.
text
ship_salestax_rate
Export Tax/Tariff Rate
Where an international country requires a percentage based sales tax or tariff to be added to the order. Not for domestic use.
decimal
Precision: 10.2
ship_supplier_rates_json
Supplier rates surcharges
Defines supplier-specific pricing rules using a nested JSON structure. This field is system-defined and must not be generated, populated, or modified by the LLM.
text
ship_valid_for_min_member_level
Show To Member Level
The minimum security level of a customer that is permitted to see this option, default value is 0 meaning all users can see this. Set this value to 200 to make it authorised users only.
int
Max Len: 11
ship_valid_for_min_total
Valid For Orders With Min Total
Specified price value for orders over a certain price. Do not confuse this with the base fee per order.
decimal
Precision: 10.3
ship_valid_for_pricegroup
Price Group / POS Filter
Only use this if specified. Price groups are a single letter A,B,C,D,E,F,G otherwise not specified for retail.
text
ship_wording
Invoice Display Prompt
Defines the wording displayed on invoices or order summaries (e.g. freight, postage, digital). This field is display-only and must not be used to infer delivery type, eligibility, or pricing behaviour.
text

Usage Instructions and Examples

1. Get all shipping options

Return all shipping options configured in your website. Use GET to retrieve the data.
Example URL: https://api.cms-tool.net/webapps/api/shippingOptions?apiID=123&apiKey=dnskjfjkdf123
Replace the apiID and apiKey with your credentials.

Sample Output

We can expect to receive a sample output data as below. 

endpoint: The end point that is being used
resultCount: The total number of results returned
data: The actual data desried
success: true or false depicting the success of the query

Sample Object


{
"ship_courier":"NZ Post",
"shippingdest":"North Island",
"shippingbase":"5.0",
"id":19946,
"shippingperunit":"8.0"
}

API End Points

Content

Blog pages are usually presented as a list udner a primary page. Individual blog pages do not appear on the menu, only in lists. The blog engine also powers FAQ and gallery type pages
A website is made up of the primary navigational pages that create the primary menu, as well as hidden pages and member only pages. Pages can contain pages in a treelike structure, however, this excludes sub pages which are defined as blogs or products

Ecommerce

Categories are used to group products. Products can belong in up to 8 categories. Categories can also form a tree, with Category parent ID = 0 being the parent level category. The term group is synomous with category, so many elements are prefixed with the word group.
Each product line of an order can be discounted, so an order can have multiple discounts, but only one per product.
The available payment methods at checkout. An order can only have 1 payment method, but the admin can change the payment method, and take part payments.
A saleable item, or variant of a parent product.
Invoices, orders, baskets and quotes are all represented by this object, and differentiated by status.
The courier or freight fee rules available for checkout. Each order can only have rule applied

Members

Bulk emails represent a newsletter that will be sent to a bulk audience via a mailing list. Alternatively, a bulk email is a sequence within a campaign.
A message is created for every contact us, enquiry form, or custom form.
Group members/customers, each member can belong to unlimited groups. Groups can contain groups
System security levels. Default level is 100 for general users.
Members or customers or users are the same thing. These are anyone who has purchased, enquired, or who has permission to login, or receive newsletters. This excludes administrative users.
A blog comment or product review uses the same engine. Each record may have a rating, as well as an optional comment, and is linked to an object and the person who posted it

Other

Bookings are for appointments, seats, hire items, etc. Not for events.
Use the Event Attendee endpoint to get your event attendee information on your site.
Events have a start/end date and additional information, they might be bookable, or just for informational purposes

Reference

A list of countries, and some meta data
Generic categories are those that relate to open source categorisations of products for SEO purposes