POST
/
carts
/
estimate
curl --request POST \
  --url https://sandbox-api.violet.io/v1/carts/estimate \
  --header 'Content-Type: application/json' \
  --data '{
  "base_currency": "USD",
  "skus": [
    {
      "quantity": 2,
      "sku_id": 123
    }
  ],
  "shipping_address": {
    "city": "Seattle",
    "state": "WA",
    "postal_code": "<string>",
    "country": "US",
    "address_1": "<string>",
    "address_2": "<string>"
  }
}'
{
  "estimated_carts": [
    {
      "merchant_id": 123,
      "platform": "OTHER",
      "base_currency": "USD",
      "sub_total": 1,
      "shipping_total": 1,
      "discount_total": 1,
      "total": 1,
      "skus": [
        {
          "quantity": 2,
          "sku_id": 123,
          "name": "<string>",
          "price": 123,
          "merchant_id": 123,
          "external_id": "<string>",
          "available": true,
          "requires_shipping": true,
          "product_type": "PHYSICAL",
          "line_price": 123
        }
      ],
      "available_shipping_methods": [
        {
          "label": "<string>",
          "carrier": "OTHER",
          "raw_carrier": "<string>",
          "price": 123,
          "shipping_method_id": "<string>"
        }
      ],
      "has_shipping_methods": true,
      "external_error_messages": [
        "<string>"
      ]
    }
  ]
}

Estimate cart is in beta

Using the Estimate Cart endpoint you can discover the estimated totals and available shipping methods for any combination of Sku’s and a shipping address. This feature can be useful for debugging failed carts where one or more Sku’s may have been unavailable in a certain region or no shipping methods were returned for an address.

Cart estimation is not a part of the checkout process and is instead best used as a method for anticipating the behavior of a cart or debugging a failed cart.

When using Estimate Cart you do not need to manage the lifecycle of a cart. Violet will handle the creation, modification, and deletion of any external carts that may need to be created while estimating a cart.

When the Estimate Cart process fails in the external commerce platform, Violet will attempt to parse and surface all error messages from the external system so that you are able to fully understand why the estimation failed. The most common reasons for failure will be Sku unavailability and incorrectly formatted shipping addresses.

Headers

X-Violet-Token
string
X-Violet-App-Secret
string
X-Violet-App-Id
integer

Body

application/json
base_currency
enum<string>
default: USD

The base currency the cart should be calculated in.

Available options:
USD,
AED,
AFN,
ALL,
AMD,
ANG,
AOA,
ARS,
AUD,
AWG,
AZN,
BAM,
BBD,
BDT,
BGN,
BIF,
BMD,
BND,
BOB,
BRL,
BSD,
BWP,
BZD,
CAD,
CDF,
CHF,
CLP,
CNY,
COP,
CRC,
CVE,
CZK,
DJF,
DKK,
DOP,
DZD,
EGP,
ETB,
EUR,
FJD,
FKP,
GBP,
GEL,
GIP,
GMD,
GNF,
GTQ,
GYD,
HKD,
HNL,
HRK,
HTG,
HUF,
IDR,
ILS,
INR,
ISK,
JMD,
JPY,
KES,
KGS,
KHR,
KMF,
KRW,
KYD,
KZT,
LAK,
LBP,
LKR,
LRD,
LSL,
MAD,
MDL,
MGA,
MKD,
MMK,
MNT,
MOP,
MRO,
MUR,
MVR,
MWK,
MXN,
MYR,
MZN,
NAD,
NGN,
NIO,
NOK,
NPR,
NZD,
PAB,
PEN,
PGK,
PHP,
PKR,
PLN,
PYG,
QAR,
RON,
RSD,
RUB,
RWF,
SAR,
SBD,
SCR,
SEK,
SGD,
SHP,
SLL,
SOS,
SRD,
STD,
SVC,
SZL,
THB,
TJS,
TOP,
TRY,
TTD,
TWD,
TZS,
UAH,
UGX,
UYU,
UZS,
VND,
VUV,
WST,
XAF,
XCD,
XOF,
XPF,
YER,
ZAR,
ZMW,
BTN
skus
object[]
required

A list of one or more Violet Sku's. Sku's from the same merchant will be grouped and calculated together.

shipping_address
object
required

The address the cart would be shipped to.

Response

default - application/json
estimated_carts
object[]

The discount total of the cart in cents.