# Get Price Quote Get price quote before creating order POST /api/v3/orders/price Content-Type: application/json Response includes: - order_total: Total cost - order_subtotal: Product costs - order_shipping_fee: Shipping cost - order_tax: Tax amount Use cases: - Show pricing to customers before checkout - Compare shipping methods - Calculate profit margins Endpoint: POST /api/v3/orders/price Version: v3.0.0 ## Request fields (application/json): - `order_platform` (string) Platform where the order originates Enum: "", "ebay", "amazon", "shopify", "woocommerce", "etsy", "shopbase", "gearment", "orderdesk", "tiktokshop", "poshmark", "prestashop", "inkgo", "wish", "bigcommerce", "customily" - `billing` (object) Billing information (optional, used for tax calculation and billing address) - `billing.ioss_number` (string) IOSS number for EU tax compliance - `billing.tax_number` (string) Tax identification number - `shipping` (object) Shipping address and method (required: country_code, state_code, method) - `shipping.address` (object) Shipping address information - `shipping.address.method` (string) Shipping method Enum: "standard", "METHOD_STANDARD", "stamp", "METHOD_STAMP", "ground", "METHOD_GROUND", "fastship", "METHOD_FAST_SHIP" - `shipping.address.state_code` (string) State/province code (ISO 3166-2) - `shipping.address.country_code` (string) Country code (ISO 3166-1 alpha-2) - `shipping.label` (object) Pre-purchased shipping label (optional) - `shipping.label.url` (string) URL to pre-purchased shipping label (PDF or image) - `line_items` (array) List of line items to quote (each item requires: variant_id, quantity, print_locations) - `line_items.variant_id` (string) Product variant ID from catalog - `line_items.quantity` (integer) Quantity to order - `line_items.print_locations` (array) Print locations on the product Enum: "front", "PRINT_LOCATION_CODE_FRONT", "back", "PRINT_LOCATION_CODE_BACK", "left_sleeve", "PRINT_LOCATION_CODE_LEFT_SLEEVE", "right_sleeve", "PRINT_LOCATION_CODE_RIGHT_SLEEVE", "pocket", "PRINT_LOCATION_CODE_POCKET", "whole", "PRINT_LOCATION_CODE_WHOLE" - `gift_messages` (array) Optional gift messages (adds fee if present) - `gift_messages.gift_message_id` (string) Unique identifier for the gift message - `gift_messages.content` (string) Gift message text content (max 300 characters) ## Response 200 fields (application/json): - `status` (string) Response status: "success" or "error" - `message` (string) Human-readable message - `data` (object) Price quote breakdown (includes: order_total, order_subtotal, order_shipping_fee, order_tax, currency; all amounts are in USD unless specified otherwise) - `data.order_shipping_fee` (object) Total shipping fee for the order - `data.order_shipping_fee.currency_code` (string) The three-letter currency code defined in ISO 4217. - `data.order_shipping_fee.units` (integer,string) The whole units of the amount. For example if currencyCode is "USD", then 1 unit is one US dollar. - `data.order_shipping_fee.nanos` (integer) Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If units is positive, nanos must be positive or zero. If units is zero, nanos can be positive, zero, or negative. If units is negative, nanos must be negative or zero. For example $-1.75 is represented as units=-1 and nanos=-750,000,000. - `data.order_fee` (object) Additional processing fees - `data.order_tax` (object) Total tax for the order - `data.order_sub_total` (object) Order subtotal (sum of all line items before tax/fees/discount) - `data.order_total` (object) Final order total (subtotal + shipping + tax + fees - discount) - `data.order_discount` (object) Total discount applied to the order - `data.line_items` (array) Price breakdown for each line item - `data.line_items.line_sub_total` (object) Line item subtotal (item_price × quantity, before tax/fees/discount) - `data.line_items.line_tax` (object) Tax for this line item - `data.line_items.line_fee` (object) Additional fees for this line item - `data.line_items.line_discount` (object) Discount applied to this line item - `data.line_items.line_total` (object) Total for this line item (subtotal + tax + fee - discount) - `data.line_items.item_price` (object) Unit price per item - `data.line_items.item_fee` (object) Per-item fee - `data.line_items.item_discount` (object) Per-item discount - `data.line_items.item_quantity` (integer) Quantity of items - `data.line_items.id` (integer,string) Internal line item ID - `data.line_items.unit_base_price` (object) Base price per unit (before fees/discount) - `data.fees` (array) Detailed fee breakdown - `data.fees.order_id` (string) Order ID this fee applies to - `data.fees.line_item_id` (string) Line item ID this fee applies to - `data.fees.fee_code` (string) Fee code/identifier (e.g., "RUSH_FEE", "GIFT_MESSAGE_FEE") - `data.fees.amount` (object) Fee amount - `data.order_gift_message_fee` (object) Gift message fee (if applicable) - `data.order_handle_fee` (object) Order handling fee ## Response 400 fields (application/json): - `code` (string, required) Machine-readable error code Example: "INVALID_ARGUMENT" - `message` (string, required) Human-readable error message Example: "The request parameters are invalid" - `details` (array) Additional error details - `details.field` (string) Field that caused the error - `details.issue` (string) Description of the issue ## Response 401 fields (application/json): - `code` (string, required) Machine-readable error code Example: "INVALID_ARGUMENT" - `message` (string, required) Human-readable error message Example: "The request parameters are invalid" - `details` (array) Additional error details - `details.field` (string) Field that caused the error - `details.issue` (string) Description of the issue ## Response 403 fields (application/json): - `code` (string, required) Machine-readable error code Example: "INVALID_ARGUMENT" - `message` (string, required) Human-readable error message Example: "The request parameters are invalid" - `details` (array) Additional error details - `details.field` (string) Field that caused the error - `details.issue` (string) Description of the issue ## Response 404 fields (application/json): - `code` (string, required) Machine-readable error code Example: "INVALID_ARGUMENT" - `message` (string, required) Human-readable error message Example: "The request parameters are invalid" - `details` (array) Additional error details - `details.field` (string) Field that caused the error - `details.issue` (string) Description of the issue ## Response 500 fields (application/json): - `code` (string, required) Machine-readable error code Example: "INVALID_ARGUMENT" - `message` (string, required) Human-readable error message Example: "The request parameters are invalid" - `details` (array) Additional error details - `details.field` (string) Field that caused the error - `details.issue` (string) Description of the issue