Cart API
New Order
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"}} |
post/v1/cart/orders/cartrover
Request
- Base URLhttp://{{base_url}}
- AuthHTTP basic
- TypeScriptA function with typed inputs. Its response is checked against the schema.
Headers
Content-Typestring
Request body */*
string required
Example request
"\"{\\n \\\"cust_ref\\\" : \\\"TEST02\\\",\\n \\\"ship_company\\\" : \\\"Will Town\\\",\\n \\\"ship_address_1\\\" : \\\"351 Hitchcock Way\\\",\\n \\\"ship_address_2\\\" : \\\"Suite B140\\\",\\n \\\"ship_city\\\" : \\\"Santa Barbara\\\",\\n \\\"ship_state\\\" : \\\"CA\\\",\\n \\\"ship_zip\\\" : \\\"93105\\\",\\n \\\"ship_country\\\" : \\\"USA\\\",\\n \\\"ship_is_billing\\\" : true,\\n \\\"items\\\" : \\n [\\n {\\n \\\"item\\\" : \\\"C100\\\",\\n \\\"quantity\\\" : 2\\n },\\n {\\n \\\"item\\\" : \\\"C300\\\",\\n \\\"quantity\\\" : 1\\n }\\n ]\\n}\""Response
OK
object required
Changes
No recorded changes to this operation across all 1 revision of this API.