---
title: "New Order"
method: POST
path: "/v1/cart/orders/cartrover"
tags: ["Cart API"]
---

# New Order

`POST /v1/cart/orders/cartrover`

## Request

- Base URL: `http://{{base_url}}`
- URL: `http://{{base_url}}/v1/cart/orders/cartrover`
- Auth: HTTP basic
- TypeScript: <https://skmtc.dev/extensiv/apis/integration-manager-api-formerly-cartrover/docs/v1/cart/orders/cartrover/post.ts> (a function with typed inputs; its response is checked against the schema)

This endpoint expects a json object containing a single order with the fields listed below. The bolded headers are for reference and are not sub-objects. All fields are on the top level except for item information

## Note
Your warehouse may not pick up or use all of these fields. Any fields they do not use will be ignored.

## Order Fields

| Field | Data Type | Length | Required? | Description |
|---------|-------------|---------|---------|---------|
| cust_ref | String | 16 | Y | Unique Order Number. Always check the cust_ref field field in the response! There are multiple reasons CartRover may accept the order, but change the cust_ref value. The most common reasons are: 1) The cust_ref sent was over 16 chars in length and had to be shortened. 2) The cust_ref was already used by a different order source for this merchant and has been modified to ensure uniqueness. |
| cust_po_no | String | 45 |  | Optional additional unique order number. Order will reject if value is not unique. This can generally be set to the same value as `cust_ref`, but supports longer order numbers. |
| # Shipping Address # | | | | Not a field |
| ship_company | String |  |  | Required if ship_first_name or ship_last_name not set |
| ship_title | String |  |  |  |
| ship_first_name | String |  |  | Required if ship_company or ship_last_name not set |
| ship_last_name | String |  |  | Required if ship_company or ship_first_name not set |
| ship_address_1 | String |  | Y |  |
| ship_address_2 | String |  |  |  |
| ship_address_3 | String |  |  |  |
| ship_city | String |  | Y |  |
| ship_state | String |  | Y |  |
| ship_zip | String |  | Y |  |
| ship_country | String |  | Y | ISO 2 or 3 character code preferred. If full name is passed, best effort will be made to convert it to an ISO code. |
| ship_phone | String |  |  |  |
| ship_e_mail | String |  |  |  |
| ship_address_type | ENUM |  |  | R - Residential, C - Commercial |
| ship_is_billing | Boolean |  |  | If true, billing address will be set to the same as the shipping address. Any values passed for billing address will be ignored. |
| # Billing Address # | | | | Not a field |
| cust_company |  |  |  | Required if cust_first_name or cust_last_name not set |
| cust_title |  |  |  |  |
| cust_first_name |  |  |  | Required if cust_company or cust_last_name not set |
| cust_last_name |  |  |  | Required if cust_company or cust_first_name not set |
| cust_address_1 |  |  |  |  |
| cust_address_2 |  |  |  |  |
| cust_address_3 |  |  |  |  |
| cust_city |  |  |  |  |
| cust_state |  |  |  |  |
| cust_zip |  |  |  |  |
| cust_country |  |  |  |  |
| cust_phone |  |  |  |  |
| cust_e_mail |  |  |  |  |
| special_services |  |  |  |  |
| customer_id |  |  |  |  |
| order_date | String |  |  | Format: YYYY-MM-DD Defaults to current date if not provided. |
| shipping_instructions |  |  |  |  |
| ship_account_no |  |  |  |  |
| ship_code |  |  |  | Shipping Method to be used by the warehouse |
| ship_code_description |  |  |  |  |
| weight |  |  |  |  |
| gift_message |  |  |  |  |
| gift_wrap | ENUM | Y/N |  |  |
| carrier |  |  |  |  |
| routing_sw | ENUM | Y/N |  | Request warehouses system to perform additional routing if supported |
| # Price Information # | | | | Not a field |
| sub_total |  |  |  |  |
| order_discount |  |  |  |  |
| shipping_handling |  |  |  | The total shipping charge for the order. This has no relation to the order line shipping_surcharge field. |
| tax_exempt_sw |  |  |  |  |
| sales_tax |  |  |  | If tax is set on the order line then this should match the sum of all order line taxes. |
| grand_total |  |  |  |  |
| balance |  |  |  |  |
| currency_code | String | 3 |  | ISO 4217 Currency Code - Most systems will assume a default of the local currency |
|  |  |  |  |  |
| promo_code |  |  |  |  |
| custom_field_1 |  |  |  |  |
| custom_field_2 |  |  |  |  |
| custom_field_3 |  |  |  |  |
| custom_field_4 |  |  |  |  |
| custom_field_5 |  |  |  |  |
| # Payment Information # | | | | Not a field |
| token_sw | ENUM | Y/N |  | Y - means credit_card_no is provided and is already tokenized. If passing Credit Card data, this must by Y. CartRover does not allow untokenized credit cards. |
| pay_type |  |  |  |  |
| credit_card_no |  |  |  | NOTE: CartRover is not PCI Compliant. You may not pass us un-tokenized credit card numbers. |
| cc_last_four |  |  |  |  |
| expiration_date |  |  |  |  |
| cvv |  |  |  |  |
| pre_auth_code |  |  |  |  |
| pre_auth_amt |  |  |  |  |
| pre_auth_id |  |  |  |  |
| gift_card_sw |  |  |  |  |
| check_account_no |  |  |  |  |
| check_type |  |  |  |  |
| check_no |  |  |  |  |
| check_bank_id |  |  |  |  |
| check_cust_bank |  |  |  |  |
| check_cust_id_num |  |  |  |  |
| check_cust_id_state |  |  |  |  |
| check_cust_id_mm |  |  |  |  |
| check_cust_id_dd |  |  |  |  |
| check_cust_id_yy |  |  |  |  |
| check_cust_id_type |  |  |  |  |
| installment_program |  |  |  |  |
| prepaid_order |  |  |  |  |
| black_list |  |  |  |  |
| credit_score |  |  |  |  |
| fraud_score |  |  |  |  |
| ifraud_error_code |  |  |  |  |
| xfraud_error_code |  |  |  |  |
| credit_error_code |  |  |  |  |
|  |  |  |  |  |
| cass_code_ship |  |  |  |  |
| cass_error_ship |  |  |  |  |
| cass_code_cust |  |  |  |  |
| cass_error_cust |  |  |  |  |
| cass_date |  |  |  |  |
| ncoa_code_ship |  |  |  |  |
| ncoa_code_cust |  |  |  |  |
| ncoa_date |  |  |  |  |
| resubmit_date |  |  |  |  |
|  |  |  |  |  |
| media_week |  |  |  |  |
| order_source |  |  |  | Warning: This will override any Order Source value defined in CartRover |
| ani_phone |  |  |  |  |
| vendor_phone |  |  |  |  |
| location |  |  |  |  |
| load_override_sw |  |  |  |  |
| fail_action |  |  |  |  |
| action_dt |  |  |  |  |
| filename |  |  |  |  |
| call_queue |  |  |  |  |
| clerk_disposition |  |  |  |  |
| clerk_disp_dt |  |  |  |  |
| rep_disposition |  |  |  |  |
| rep_disp_dt |  |  |  |  |
| duplicate_sw | ENUM | Y/N |  |  |
| org_file_no |  |  |  |  |
| # Optional Routing Information # | | | | Not a field |
| regional_center |  |  |  |  |
| regional_order_no |  |  |  |  |
| regional_ship_date |  |  |  |  |
| first_attempt |  |  |  |  |
| expected_delivery_date | String |  |  | Format: YYYY-MM-DD  (Can also be submitted as Timestamp) |
| requested_ship_date | String |  |  | Format: YYYY-MM-DD  (Can also be submitted as Timestamp) |
| extra_fields | Array | 30 |  | Key-Value list of Order extra field names and values to post. Max 30. Eg: `{"extra_fields": {"some_custom_name":"Some Custom Value", "another_custom_name":"Some Other Custom Value"}}` |
|  |  |  |  |  |
| items | Array |  | Y | The Items element should contain an array of Items following the format in the Item Fields table below. |

 ## Item Fields
 An array of items should be listed in the order's items field. Below are the fields allowed for each item.

| Field | Data Type | Length | Required? | Description |
|---------|-------------|---------|---------|---------|
| line_no | Int |  |  | Optional Line Number |
| item | String | 45 | Y | Product SKU - Must match product in warehouse |
| Description | String | 250 |  | Note the capital "D". It's there due to legacy stuff. |
| price | Float |  |  | Up to 4 decimals places |
| quantity | Int |  | Y |  |
| discount | Float |  |  | The discount amount for a single unit or item. Up to 4 decimals places |
| addl_discount | Float |  |  |An additional post-tax discount applied to the line item total. Up to 4 decimals places |
| extended_amount | Float |  |  | 2 decimals places |
| tax | Float |  |  | 2 decimals places |
| shipping_surcharge | Float |  |  | 2 decimals places |
| line_comment | String | 250 |  |  |
| lot_number | String | 45 |  |  |
| line_item_id | String | 14 |  | Optional additional line ID from cart |
| extra_fields | Array | 10 |  | Key-Value list of Line Item extra field names and values to post. Max 10. Eg: `{"extra_fields": {"some_custom_name":"Some Custom Value", "another_custom_name":"Some Other Custom Value"}}` |

## Headers

- `Content-Type` string

## Request body `*/*`

- string

## Response `200`

OK

- object

---

[API](https://skmtc.dev/extensiv/apis/integration-manager-api-formerly-cartrover.md) - [All operations](https://skmtc.dev/extensiv/apis/integration-manager-api-formerly-cartrover/llms.txt) - [OpenAPI document](https://skmtc.dev/extensiv/apis/integration-manager-api-formerly-cartrover/revisions/125e6deac675?raw)
