{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"6078c445-8180-4d8e-8a05-fd5b9e5dbb6c","name":"CartRover API","description":"CartRover is now **Extensiv Integration Manager**\n\nCartRover is a platform that effortlessly connects your sales channels (carts & marketplaces) with your back-end OMS or WMS system. Integrate with CartRover once and leverage our library of ecommerce integations. [Learn More](https://www.extensiv.com/extensiv-integration-manager?redirect=cartrover).\n\nThe CartRover Orders API is a RESTful service that performs all data communication in JSON format. The order of the fields you submit is not important and the order of fields returned is not guaranteed.\n\nThere are four different levels of API access: Cart, Merchant, Warehouse, Master. Each provides access to different endpoints listed in their sections below.\n\nAll API levels have separate access credentials but use the same authorization procedure and data formats for sending and receiving.\n\nTo monitor the API status and uptime, [subscribe to our status page](https://status.extensiv.com/).\n\nBase URL: `https://api.cartrover.com`\n\n# Getting Help\n\nFor general CartRover support and information [view our knowledgebase](https://extensiv.helpjuice.com/en_US/integration-manager) where you can learn about CartRover and open support tickets.\n\nWhen requesting API support please include your API User and the `X-CartRover-Process-ID` response header value for any specific requests you have made. We recommend you log this response header for every API request you make so that you have it for reference if you ever need to go back and ask about a specific call. Without this value we won't be able to help as much.\n\nCheck out the official sample [CartRover PHP Client](https://github.com/CartRover/cartrover-php). Just include it directly in your project.\n\nAdditional unofficial CartRover Libraries:\n\n- [Ruby Client](https://github.com/zgworley/cartrover-ruby-client)\n    \n- [Ruby Client](https://github.com/narch/extensiv_ruby) - Cart level only\n    \n\n# Authentication\n\n[How To Get CartRover API Keys](https://help.extensiv.com/en_US/1620385-how-to-get-extensiv-integration-manager-api-keys)\n\nRemember to keep your keys secret and secure. You can cycle your API keys in CartRover when viewing them, which will immediately invalidate the previous keys.\n\n## Basic Auth\n\nPass your API User and Key using the [Basic Access Authentication](https://en.wikipedia.org/wiki/Basic_access_authentication) standard.\n\n1. Concatenate the API user and key and place a colon in between: `api_user:api_key`\n    \n2. Base 64 encode this string\n    \n3. Pass it as a header in the following format: `Authorization: Basic BASE64ENCODEDSTRING`\n    \n\n# Errors\n\nAll endpoints will return errors in the following format.\n\n| Field | Data Type | Description |\n| --- | --- | --- |\n| success_code | boolean | Always FALSE for an error |\n| error_code | ENUM | Invalid - Invalid/Missing data submitted  <br>Failure - Hard error like: Duplicate order  <br>RateLimit - Over API Limit |\n| message | String | Specific Error Message |\n\n# Rate Limit\n\nThe CartRover API uses a [Leaky Bucket](https://en.wikipedia.org/wiki/Leaky_bucket) algorithm to manage API access. The bucket size is 100 calls, and they refill at rate of 1 call every 0.6 seconds. Currently the New Order API endpoint is NOT rate limited. If we see abuse of the API, all endpoints will be rate limited.\n\nAll endpoints that are rate limited will return the following header with each request. It contains the remaining number of API calls you can currently burst to:\n\n> X-CartRover-Api-Minute-Hits-Remaining \n  \n\nIf you go over your rate limit, the API will return a standard error with the following code and message:\n\n``` json\n{\n    \"success_code\": false,\n    \"error_code\": \"RateLimit\",\n    \"message\": \"Over API Limit. Please slow down requests.\"\n}\n\n ```\n\n# Timestamps\n\nTimestamp fields should be submitted to the API in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format in order to specify the timezone.\n\nTimestamp fields returned by the API will be formatted in ISO 8601 and always be in the UTC timezone.\n\n> 2018-08-27T02:24:58+00:00 \n  \n\nIf you are passing a timestamp as a GET parameter, **YOU MUST** percent encode the plus symbol (`+`) as `% 2 B` (without spaces)\n\n# Order Charge Field Definitions\n\nThe definitions below are how CartRover uses and calculates price fields. If you do not follow this standard, CartRover cannot guarantee the price information the warehouse receives will be correct.\n\n## Order Header Fields\n\n**sub_total:** Sum of Order Line extended_amount fields.\n\n- Does not include sales_tax, order_discount, or shipping_handling\n    \n- If loading orders, you may need to add the order_discount to the sub_total if the cart has one and doesn't include it in the sub_total.\n    \n\n**order_discount:** Total post-tax discount on order as a positive number.\n\n- Overall order level post-tax discount passed from cart + (Sum of addl_discount from Order Lines)\n    \n\n**sales_tax:** Total tax on order\n\n- If tax is set on Order Line this must match the sum of all order line tax fields. Most interfaces don't set tax on the order line.\n    \n\n**shipping_handling:** Total shipping charge for the order passed from cart. No relation to the order line shipping_surcharge field.\n\n**grand_total:** sub_total + sales_tax + shipping_handling - order_discount\n\n**balance:** Not used right now. Set to 0 or leave off completely.\n\n## Order Line Fields\n\n**quantity:** Number/Quantity of this product ordered.\n\n**price:** Cost of a single item. Does not include taxes, discounts, or shipping charges.\n\n**discount:** Pre-tax Discount amounts to be applied to EACH single item as a positive number.\n\n**addl_discount:** Post-tax Discount amount to be applied to the total item line as a positive number.\n\n**tax:** Taxes applied to the total quantity of the total items in this line.\n\n**shipping_surcharge:** Extra shipping charges that were added because of the total items in this line.\n\n**extended_amount:** (price - discount) \\* quantity\n\n- Does not take addl_discount or tax into account","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":true,"owner":"38801492","team":517883,"collectionId":"6078c445-8180-4d8e-8a05-fd5b9e5dbb6c","publishedId":"2sB34oDHpn","public":true,"publicUrl":"https://developers.cartrover.com","privateUrl":"https://go.postman.co/documentation/38801492-6078c445-8180-4d8e-8a05-fd5b9e5dbb6c","customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"},"documentationLayout":"classic-double-column","customisation":{"metaTags":[{"name":"description","value":"Extensiv Integration Manager API Docs"},{"name":"title","value":"Extensiv Integration Manager API Docs"}],"appearance":{"default":"light","themes":[{"name":"dark","logo":null,"colors":{"top-bar":"212121","right-sidebar":"303030","highlight":"FF6C37"}},{"name":"light","logo":null,"colors":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"}}]}},"version":"8.10.1","publishDate":"2025-07-28T18:12:07.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{"title":"Extensiv Integration Manager API Docs","description":"Extensiv Integration Manager API Docs"},"logos":{"logoLight":null,"logoDark":null}},"statusCode":200},"environments":[{"name":"Documentation","id":"28cf2cef-f95a-4119-93c7-2778031951f9","owner":"38801492","values":[{"key":"BASE_URL","value":"https://api.cartrover.com","enabled":true},{"key":"api_user","value":"SaMpLeApIuSeR","enabled":true},{"key":"api_key","value":"SaMpLeApIKeY","enabled":true,"type":"default"},{"key":"ORDER_SOURCE","value":"{ORDER_SOURCE}","enabled":true,"type":"default"},{"key":"CUST_REF","value":"{CUST_REF}","enabled":true,"type":"default"},{"key":"SKU","value":"{SKU}","enabled":true,"type":"default"},{"key":"STATUS","value":"{STATUS}","enabled":true,"type":"default"},{"key":"WAREHOUSE_PK","value":"{WAREHOUSE_PK}","enabled":true,"type":"default"}],"published":true}],"user":{"authenticated":false,"permissions":{"publish":false}},"run":{"button":{"js":"https://run.pstmn.io/button.js","css":"https://run.pstmn.io/button.css"}},"web":"https://www.getpostman.com/","team":{"logo":"https://res.cloudinary.com/postman/image/upload/t_team_logo_pubdoc/v1/team/6b289d2a06c73ac0acf494c07ac7e38ef9d2a6392d72c3c8c70caef90046a48e","favicon":"https://res.cloudinary.com/postman/image/upload/v1669965994/team/vpbljtrlomrxbda0t3zx.ico"},"isEnvFetchError":false,"languages":"[{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"HttpClient\"},{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"RestSharp\"},{\"key\":\"curl\",\"label\":\"cURL\",\"variant\":\"cURL\"},{\"key\":\"dart\",\"label\":\"Dart\",\"variant\":\"http\"},{\"key\":\"go\",\"label\":\"Go\",\"variant\":\"Native\"},{\"key\":\"http\",\"label\":\"HTTP\",\"variant\":\"HTTP\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"OkHttp\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"Unirest\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"Fetch\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"jQuery\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"XHR\"},{\"key\":\"c\",\"label\":\"C\",\"variant\":\"libcurl\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Axios\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Native\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Request\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Unirest\"},{\"key\":\"objective-c\",\"label\":\"Objective-C\",\"variant\":\"NSURLSession\"},{\"key\":\"ocaml\",\"label\":\"OCaml\",\"variant\":\"Cohttp\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"cURL\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"Guzzle\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"HTTP_Request2\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"pecl_http\"},{\"key\":\"powershell\",\"label\":\"PowerShell\",\"variant\":\"RestMethod\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"http.client\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"Requests\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"httr\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"RCurl\"},{\"key\":\"ruby\",\"label\":\"Ruby\",\"variant\":\"Net::HTTP\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"Httpie\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"wget\"},{\"key\":\"swift\",\"label\":\"Swift\",\"variant\":\"URLSession\"}]","languageSettings":[{"key":"csharp","label":"C#","variant":"HttpClient"},{"key":"csharp","label":"C#","variant":"RestSharp"},{"key":"curl","label":"cURL","variant":"cURL"},{"key":"dart","label":"Dart","variant":"http"},{"key":"go","label":"Go","variant":"Native"},{"key":"http","label":"HTTP","variant":"HTTP"},{"key":"java","label":"Java","variant":"OkHttp"},{"key":"java","label":"Java","variant":"Unirest"},{"key":"javascript","label":"JavaScript","variant":"Fetch"},{"key":"javascript","label":"JavaScript","variant":"jQuery"},{"key":"javascript","label":"JavaScript","variant":"XHR"},{"key":"c","label":"C","variant":"libcurl"},{"key":"nodejs","label":"NodeJs","variant":"Axios"},{"key":"nodejs","label":"NodeJs","variant":"Native"},{"key":"nodejs","label":"NodeJs","variant":"Request"},{"key":"nodejs","label":"NodeJs","variant":"Unirest"},{"key":"objective-c","label":"Objective-C","variant":"NSURLSession"},{"key":"ocaml","label":"OCaml","variant":"Cohttp"},{"key":"php","label":"PHP","variant":"cURL"},{"key":"php","label":"PHP","variant":"Guzzle"},{"key":"php","label":"PHP","variant":"HTTP_Request2"},{"key":"php","label":"PHP","variant":"pecl_http"},{"key":"powershell","label":"PowerShell","variant":"RestMethod"},{"key":"python","label":"Python","variant":"http.client"},{"key":"python","label":"Python","variant":"Requests"},{"key":"r","label":"R","variant":"httr"},{"key":"r","label":"R","variant":"RCurl"},{"key":"ruby","label":"Ruby","variant":"Net::HTTP"},{"key":"shell","label":"Shell","variant":"Httpie"},{"key":"shell","label":"Shell","variant":"wget"},{"key":"swift","label":"Swift","variant":"URLSession"}],"languageOptions":[{"label":"C# - HttpClient","value":"csharp - HttpClient - C#"},{"label":"C# - RestSharp","value":"csharp - RestSharp - C#"},{"label":"cURL - cURL","value":"curl - cURL - cURL"},{"label":"Dart - http","value":"dart - http - Dart"},{"label":"Go - Native","value":"go - Native - Go"},{"label":"HTTP - HTTP","value":"http - HTTP - HTTP"},{"label":"Java - OkHttp","value":"java - OkHttp - Java"},{"label":"Java - Unirest","value":"java - Unirest - Java"},{"label":"JavaScript - Fetch","value":"javascript - Fetch - JavaScript"},{"label":"JavaScript - jQuery","value":"javascript - jQuery - JavaScript"},{"label":"JavaScript - XHR","value":"javascript - XHR - JavaScript"},{"label":"C - libcurl","value":"c - libcurl - C"},{"label":"NodeJs - Axios","value":"nodejs - Axios - NodeJs"},{"label":"NodeJs - Native","value":"nodejs - Native - NodeJs"},{"label":"NodeJs - Request","value":"nodejs - Request - NodeJs"},{"label":"NodeJs - Unirest","value":"nodejs - Unirest - NodeJs"},{"label":"Objective-C - NSURLSession","value":"objective-c - NSURLSession - Objective-C"},{"label":"OCaml - Cohttp","value":"ocaml - Cohttp - OCaml"},{"label":"PHP - cURL","value":"php - cURL - PHP"},{"label":"PHP - Guzzle","value":"php - Guzzle - PHP"},{"label":"PHP - HTTP_Request2","value":"php - HTTP_Request2 - PHP"},{"label":"PHP - pecl_http","value":"php - pecl_http - PHP"},{"label":"PowerShell - RestMethod","value":"powershell - RestMethod - PowerShell"},{"label":"Python - http.client","value":"python - http.client - Python"},{"label":"Python - Requests","value":"python - Requests - Python"},{"label":"R - httr","value":"r - httr - R"},{"label":"R - RCurl","value":"r - RCurl - R"},{"label":"Ruby - Net::HTTP","value":"ruby - Net::HTTP - Ruby"},{"label":"Shell - Httpie","value":"shell - Httpie - Shell"},{"label":"Shell - wget","value":"shell - wget - Shell"},{"label":"Swift - URLSession","value":"swift - URLSession - Swift"}],"layoutOptions":[{"value":"classic-single-column","label":"Single Column"},{"value":"classic-double-column","label":"Double Column"}],"versionOptions":[],"environmentOptions":[{"value":"0","label":"No Environment"},{"label":"Documentation","value":"38801492-28cf2cef-f95a-4119-93c7-2778031951f9"}],"canonicalUrl":"https://developers.cartrover.com/view/metadata/2sB34oDHpn"}