> For the complete documentation index, see [llms.txt](https://docs.liquidcommerce.cloud/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.liquidcommerce.cloud/types/checkout.md).

# Checkout

A full reference to a checkout type for the Liquid Commerce Prepare API.

### CheckoutType

<table><thead><tr><th width="326">Attribute</th><th>Description</th></tr></thead><tbody><tr><td><strong>token: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Unique identifier for the checkout session</td></tr><tr><td><strong>cartId: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Associated cart identifier</td></tr><tr><td><strong>customer</strong>: <a href="#customer"><mark style="color:blue;"><strong>Customer</strong></mark></a></td><td>Customer information </td></tr><tr><td><strong>hasAgeVerify: </strong><mark style="color:blue;"><strong>boolean</strong></mark></td><td>Should the checkout verify age</td></tr><tr><td><strong>hasSubstitutionPolicy: </strong><mark style="color:blue;"><strong>boolean</strong></mark></td><td>Should the checkout allow for substitutions</td></tr><tr><td><strong>isGift: </strong><mark style="color:blue;"><strong>boolean</strong></mark></td><td>When the order is set as gift (isGift is set to true), the system adds gift messaging, special packaging, and gift receipts with optional sender anonymity.</td></tr><tr><td><strong>createdAt: </strong><mark style="color:blue;"><strong>dateString</strong></mark></td><td>Checkout date of creation</td></tr><tr><td><strong>updatedAt: </strong><mark style="color:blue;"><strong>dateString</strong></mark></td><td>Checkout last updated at date</td></tr><tr><td><strong>isPresaleLocked: </strong><mark style="color:blue;"><strong>boolean</strong></mark></td><td>Indicates if the checkout is locked to a single presale item</td></tr><tr><td><strong>presaleExpiresAt: </strong><mark style="color:blue;"><strong>Date | null</strong></mark></td><td></td></tr><tr><td><strong>billingSameAsShipping: </strong><mark style="color:blue;"><strong>boolean</strong></mark></td><td>Checkout billing address same as shipping address</td></tr><tr><td><strong>acceptedAccountCreation: </strong><mark style="color:blue;"><strong>boolean</strong></mark></td><td>Whether customer accepted account creation</td></tr><tr><td><strong>giftOptions:</strong> <a href="#giftoptions"><mark style="color:blue;"><strong>GiftOptions</strong></mark></a></td><td>Checkout gift options</td></tr><tr><td><strong>marketingPreferences:</strong> <a href="#marketingpreferences"><mark style="color:blue;"><strong>MarketingPreferences</strong></mark></a></td><td>Checkout marketing opt-ins</td></tr><tr><td><strong>shippingAddress:</strong>  <a href="/types/loc.md#address"><mark style="color:blue;"><strong>Address</strong></mark></a></td><td>Checkout shipping address info, (<strong>this is address is propagated from the address set in the cart, if you need to update it you must update the cart. Address changes might produce price changes</strong>)</td></tr><tr><td><strong>billingAddress:</strong> <a href="#billingaddress"><mark style="color:blue;"><strong>BillingAddress</strong></mark></a> <mark style="color:blue;"><strong>|</strong></mark> <a href="#checkout-billingaddress"><mark style="color:blue;"><strong>Checkout BillingAddress</strong></mark></a></td><td>Checkout billing address info. <a href="#billingaddress"><mark style="color:blue;"><strong>BillingAddress</strong></mark></a>   information supporting both new and legacy formats. Recommended to use <a href="#checkout-billingaddress"><mark style="color:blue;"><strong>Checkout BillingAddress</strong></mark></a> for new implementations</td></tr><tr><td><strong>amounts:</strong> <a href="#checkoutamounts"><mark style="color:blue;"><strong>CheckoutAmounts</strong></mark></a></td><td>Checkout total amounts info</td></tr><tr><td><strong>items: </strong><mark style="color:purple;"><strong>Array&#x3C;</strong></mark><a href="#checkoutitem"><mark style="color:blue;"><strong>CheckoutItem</strong></mark></a><mark style="color:purple;"><strong>></strong></mark></td><td>All checkout items</td></tr><tr><td><strong>retailers: </strong><mark style="color:purple;"><strong>Array&#x3C;</strong></mark><a href="#checkoutretailer"><mark style="color:blue;"><strong>CheckoutRetailer</strong></mark></a><mark style="color:purple;"><strong>></strong></mark></td><td>All checkout retailers</td></tr><tr><td><strong>payment</strong>: <mark style="color:blue;"><strong>string</strong></mark> <mark style="color:orange;"><strong>[optional]</strong></mark></td><td>Payment method identifier</td></tr><tr><td><strong>giftCards</strong>:<mark style="color:purple;"><strong>Array&#x3C;</strong></mark><a href="#checkoutgiftcard"><mark style="color:blue;"><strong>CheckoutGiftCard</strong></mark></a><mark style="color:purple;"><strong>></strong></mark></td><td>Gift card codes to apply as payment methods</td></tr><tr><td><strong>events</strong>:<mark style="color:purple;"><strong>Array&#x3C;</strong></mark><a href="#checkoutevents"><mark style="color:blue;"><strong>CheckoutEvents</strong></mark></a><mark style="color:purple;"><strong>></strong></mark></td><td>Events related to the checkout process</td></tr><tr><td><strong>promoCode</strong>: <a href="#checkoutpromocode"><mark style="color:blue;"><strong>CheckoutPromoCode</strong></mark></a></td><td>Promotional code infos to apply a discount to the checkout</td></tr><tr><td><strong>isInternationalAllowed: </strong><mark style="color:blue;"><strong>boolean</strong></mark></td><td>Whether the checkout supports international billing addresses and phone numbers. </td></tr></tbody></table>

### Customer

<table><thead><tr><th width="306">Attribute</th><th>Description</th></tr></thead><tbody><tr><td><strong>id: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Customer's identifier</td></tr><tr><td><strong>firstName: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Customer's first name</td></tr><tr><td><strong>lastName: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Customer's last name</td></tr><tr><td><strong>email: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Customer's email</td></tr><tr><td><strong>company</strong>:<mark style="color:blue;"><strong>string</strong></mark></td><td>Customer's company</td></tr><tr><td><strong>phone: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Customer's phone</td></tr><tr><td><strong>birthDate: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Customer's birthDate</td></tr><tr><td><strong>profileImage: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Customer's profile image</td></tr><tr><td><strong>hasAgeVerify: </strong><mark style="color:blue;"><strong>boolean</strong></mark> <mark style="color:orange;"><strong>(moved to</strong></mark> <a href="#checkouttype"><mark style="color:orange;"><strong>CheckoutType</strong></mark></a> <mark style="color:orange;"><strong>level)</strong></mark></td><td>Should the checkout verify age</td></tr><tr><td><strong>createdAt: </strong><mark style="color:blue;"><strong>Date</strong></mark></td><td>Customer's creation time</td></tr><tr><td><strong>updatedAt: </strong><mark style="color:blue;"><strong>Date</strong></mark></td><td>Customer's profile updated time</td></tr></tbody></table>

### GiftOptions

<table><thead><tr><th width="290">Attribute</th><th>Description</th></tr></thead><tbody><tr><td><strong>message: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Checkout gift order message, <strong>max length: 500 characters</strong></td></tr><tr><td><strong>recipient:</strong> <a href="#giftrecipient"><mark style="color:blue;"><strong>GiftRecipient</strong></mark></a></td><td>Checkout gift order recipient</td></tr></tbody></table>

### GiftRecipient

<table><thead><tr><th width="290">Attribute</th><th>Description</th></tr></thead><tbody><tr><td><strong>name: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Checkout gift order recipient name</td></tr><tr><td><strong>email: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Checkout gift order recipient email</td></tr><tr><td><strong>phone: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Checkout gift order recipient phone</td></tr></tbody></table>

### MarketingPreferences

<table><thead><tr><th width="290">Attribute</th><th>Description</th></tr></thead><tbody><tr><td><strong>canEmail: </strong><mark style="color:blue;"><strong>boolean</strong></mark></td><td>Checkout marketing opt-in for email</td></tr><tr><td><strong>canSms: </strong><mark style="color:blue;"><strong>boolean</strong></mark></td><td>Checkout marketing opt-in for sms</td></tr></tbody></table>

### DeliveryTip

<table><thead><tr><th width="290">Attribute</th><th>Description</th></tr></thead><tbody><tr><td><strong>fulfillmentId: </strong><mark style="color:blue;"><strong>boolean</strong></mark></td><td>Identifier of fulfillment</td></tr><tr><td><strong>tip: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>The value of the tip</td></tr></tbody></table>

### CheckoutGiftCard

<table><thead><tr><th width="290">Attribute</th><th>Description</th></tr></thead><tbody><tr><td><strong>code: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>The unique code of the gift card used for identification</td></tr><tr><td><strong>applied: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>The amount deducted from the gift card during the current transaction</td></tr><tr><td><strong>balance: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>The remaining balance on the gift card after the applied amount is deducted</td></tr></tbody></table>

### CheckoutEvents

<table><thead><tr><th width="290">Attribute</th><th>Description</th></tr></thead><tbody><tr><td><strong>type: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>The type of the checkout event</td></tr><tr><td><strong>message: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>A message providing additional context or details about the event</td></tr><tr><td><strong>items: </strong><mark style="color:purple;"><strong>Array&#x3C;Partial&#x3C;</strong></mark><a href="#checkoutitem"><mark style="color:blue;"><strong>CheckoutItem</strong></mark></a><mark style="color:purple;"><strong>>></strong></mark><strong> </strong><mark style="color:orange;"><strong>[optional]</strong></mark></td><td>Array of products details affecting the event</td></tr></tbody></table>

### BillingAddress

<table><thead><tr><th width="236">Attribute</th><th>Description</th></tr></thead><tbody><tr><td><strong>firstName: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Billing address's recipient first name</td></tr><tr><td><strong>lastName: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Billing address's recipient last name</td></tr><tr><td><strong>email: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Billing address's recipient email</td></tr><tr><td><strong>phone: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Billing address's recipient phone</td></tr><tr><td><strong>one: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Billing address street address</td></tr><tr><td><strong>two: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Billing address apt, suite, floor, etc</td></tr><tr><td><strong>city: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Billing address city</td></tr><tr><td><strong>state: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Billing address state, 2 letter code</td></tr><tr><td><strong>zip: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Billing address zip code</td></tr><tr><td><strong>country: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Billing address country</td></tr></tbody></table>

### Checkout BillingAddress

<table><thead><tr><th width="236">Attribute</th><th>Description</th></tr></thead><tbody><tr><td><strong>id: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Billing address's recipient identifier</td></tr><tr><td><strong>firstName: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Billing address's recipient first name</td></tr><tr><td><strong>lastName: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Billing address's recipient last name</td></tr><tr><td><strong>email: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Billing address's recipient email</td></tr><tr><td><strong>company</strong>: <mark style="color:blue;"><strong>string</strong></mark></td><td>Billing address's recipient company</td></tr><tr><td><strong>phone: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Billing address's recipient phone</td></tr><tr><td><strong>one: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Billing address street address</td></tr><tr><td><strong>two: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Billing address apt, suite, floor, etc</td></tr><tr><td><strong>city: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Billing address city</td></tr><tr><td><strong>state: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Billing address state, 2 letter code</td></tr><tr><td><strong>zip: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Billing address zip code</td></tr><tr><td><strong>country</strong>: <mark style="color:blue;"><strong>string</strong></mark></td><td>Billing address country</td></tr></tbody></table>

### CheckoutAmounts

<table><thead><tr><th width="309">Attribute</th><th>Description</th></tr></thead><tbody><tr><td><strong>subtotal: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total subtotal</td></tr><tr><td><strong>engraving: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total engraving</td></tr><tr><td><strong>service</strong>: <mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total service</td></tr><tr><td><strong>shipping: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total shipping</td></tr><tr><td><strong>delivery: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total delivery</td></tr><tr><td><strong>platform: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total platform</td></tr><tr><td><strong>discounts: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total discounts</td></tr><tr><td><strong>giftCards: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total giftCards</td></tr><tr><td><strong>tax: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total tax</td></tr><tr><td><strong>tip: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total tip</td></tr><tr><td><strong>total: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total</td></tr><tr><td><strong>details:</strong> <a href="#amountsdetails"><mark style="color:blue;"><strong>AmountsDetails</strong></mark></a></td><td>Total amounts details, tax and discount breakdown</td></tr></tbody></table>

### **AmountsDetails**

<table><thead><tr><th width="342">Attribute</th><th>Description</th></tr></thead><tbody><tr><td><strong>taxes:</strong> <a href="#amountsdetailstaxes"><mark style="color:blue;"><strong>AmountDetailsTaxes</strong></mark></a></td><td>Amounts total taxes breakdown</td></tr><tr><td><strong>discounts:</strong> <a href="#amountsdetailsdiscounts"><mark style="color:blue;"><strong>AmountDetailsDiscounts</strong></mark></a></td><td>Amounts total discounts breakdown</td></tr></tbody></table>

### **AmountsDetailsTaxes**

<table><thead><tr><th width="309">Attribute</th><th>Description</th></tr></thead><tbody><tr><td><strong>bag: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total bag tax fee, ex: Checkout bag fees are required for certain states</td></tr><tr><td><strong>bottleDeposits: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total bottle deposit tax fee, ex: bottle deposit fees  are required for certain states</td></tr><tr><td><strong>retailDelivery: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total retail delivery tax fee, only required for the state of Colorado (<strong>CO</strong>)</td></tr><tr><td><strong>delivery: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total delivery tax fee, for on demand delivery only</td></tr><tr><td><strong>shipping: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total shipping tax fee, for shipping based order only</td></tr><tr><td><strong>products: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total product sales tax fee</td></tr></tbody></table>

### **AmountsDetailsDiscounts**

<table><thead><tr><th width="309">Attribute</th><th>Description</th></tr></thead><tbody><tr><td><strong>engraving:</strong> <mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total engraving fee discounts</td></tr><tr><td><strong>delivery: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total delivery fee discounts, for on demand delivery only</td></tr><tr><td><strong>shipping: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total shipping fee discounts, for shipping based order only</td></tr><tr><td><strong>products: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total product discounts</td></tr><tr><td><strong>service: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total service discounts</td></tr></tbody></table>

### CheckoutItem

<table><thead><tr><th width="362">Attribute</th><th>Description</th></tr></thead><tbody><tr><td><strong>variantId: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Unique retailer item ID for the checkout item</td></tr><tr><td><strong>retailerId: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Item's retailer id</td></tr><tr><td><strong>liquidId</strong>: <mark style="color:blue;"><strong>string</strong></mark></td><td>Internal product identifier</td></tr><tr><td><strong>salsifyPid</strong>: <mark style="color:blue;"><strong>string</strong></mark></td><td>Salsify product identifier</td></tr><tr><td><strong>salsifyGrouping: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Salsify grouping identifier</td></tr><tr><td><strong>uom</strong>: <mark style="color:blue;"><strong>string</strong></mark></td><td>Unit of measure</td></tr><tr><td><strong>mainImage: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Main product image URL</td></tr><tr><td><strong>unitTax</strong>: <mark style="color:blue;"><strong>number</strong></mark></td><td>Tax per unit</td></tr><tr><td><strong>partNumber: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Product part number</td></tr><tr><td><strong>fulfillmentId: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Item's fulfillment id</td></tr><tr><td><strong>cartItemId: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Unique cart item ID</td></tr><tr><td><strong>pack: </strong><mark style="color:blue;"><strong>boolean</strong></mark></td><td>If the product is a pack, then <strong>true</strong></td></tr><tr><td><strong>packDesc: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Product pack description</td></tr><tr><td><strong>container: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Product container, ex: Bottle</td></tr><tr><td><strong>containerType: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Product container type, ex: Glass</td></tr><tr><td><strong>customerPlacement:</strong> <a href="/types/cart.md#customerplacement"><mark style="color:blue;"><strong>CustomerPlacement</strong></mark></a></td><td>Indicates fulfillment type</td></tr><tr><td><strong>name: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Product name</td></tr><tr><td><strong>brand: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Product brand</td></tr><tr><td><strong>upc: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Product upc</td></tr><tr><td><strong>abv: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Product's alcohol by volume</td></tr><tr><td><strong>proof: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Product's alcohol proof</td></tr><tr><td><strong>volume: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Product's volume</td></tr><tr><td><strong>size: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Product size</td></tr><tr><td><strong>catPath: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Product category path based on the <a href="https://github.com/liquidcommerce/cloud-sdk/blob/beta/src/enums/taxonomy.ts"><mark style="color:blue;"><strong>Taxonomy</strong></mark></a></td></tr><tr><td><strong>quantity: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Item's quantity</td></tr><tr><td><strong>unitPrice: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Individual item price</td></tr><tr><td><strong>price: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Total item price according to the quantity added</td></tr><tr><td><strong>bottleDeposits: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Total item's bottle deposit tax fee</td></tr><tr><td><strong>tax: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Total item's sales tax</td></tr><tr><td><strong>attributes:</strong> <a href="#itemattributes"><mark style="color:blue;"><strong>ItemAttributes</strong></mark></a></td><td>Item configuration attributes</td></tr></tbody></table>

### ItemAttributes

<table><thead><tr><th width="286">Attribute</th><th>Description</th></tr></thead><tbody><tr><td><strong>giftCard:</strong> <a href="#itemgiftcard"><mark style="color:blue;"><strong>ItemGiftCard</strong></mark></a></td><td>item giftcard configurations</td></tr><tr><td><strong>engraving:</strong> <a href="#itemengraving"><mark style="color:blue;"><strong>ItemEngraving</strong></mark></a></td><td>item engraving configurations</td></tr><tr><td><strong>presale:</strong> <a href="#itemengraving"><mark style="color:blue;"><strong>ItemP</strong></mark></a><mark style="color:blue;"><strong>resale</strong></mark></td><td>item presale configurations</td></tr></tbody></table>

### ItemGiftCard

<table><thead><tr><th width="292">Attribute</th><th>Description</th></tr></thead><tbody><tr><td><strong>sender:</strong> <mark style="color:blue;"><strong>string</strong></mark></td><td>name of the gift card sender</td></tr><tr><td><strong>message: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>message from the gift card sender</td></tr><tr><td><strong>recipients: </strong><mark style="color:blue;"><strong>string[]</strong></mark></td><td>recipients to receive the gift card</td></tr><tr><td><strong>sendDate: </strong><mark style="color:blue;"><strong>date</strong></mark></td><td>date in which to send the gift card</td></tr></tbody></table>

### ItemEngraving

<table><thead><tr><th width="293">Attribute</th><th>Description</th></tr></thead><tbody><tr><td><strong>isEngravable: </strong><mark style="color:blue;"><strong>boolean</strong></mark></td><td>true when the item allows engraving</td></tr><tr><td><strong>hasEngraving: </strong><mark style="color:blue;"><strong>boolean</strong></mark></td><td>true when the item is engraved</td></tr><tr><td><strong>maxCharsPerLine: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>maximum of characters per engraving line</td></tr><tr><td><strong>maxLines: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>max of engraving lines</td></tr><tr><td><strong>location: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>location of the engraving</td></tr><tr><td><strong>fee:</strong> <mark style="color:blue;"><strong>number</strong></mark></td><td>fee of the engraving</td></tr><tr><td><strong>lines: </strong><mark style="color:blue;"><strong>string[]</strong></mark></td><td><p>engraving message lines, ex: </p><pre class="language-json"><code class="lang-json">"lines": [
  "Engraving line 1",
  "Engraving line 2"
]
</code></pre></td></tr></tbody></table>

### ItemPresale

<table><thead><tr><th width="292">Attribute</th><th>Description</th></tr></thead><tbody><tr><td><strong>canPurchaseOn:</strong> <mark style="color:blue;"><strong>Date | null</strong></mark></td><td>the date when the product can be purchased</td></tr><tr><td><strong>estimatedShipBy: </strong><mark style="color:blue;"><strong>Date | null</strong></mark></td><td>the date when the product is expected to ship</td></tr><tr><td><strong>isActive: </strong><mark style="color:blue;"><strong>boolean</strong></mark></td><td>whether the presale is currently active</td></tr><tr><td><strong>language: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>the language associated with the product presale</td></tr></tbody></table>

### **CheckoutRetailer**

Checkout retailer includes accumulated totals using all the same properties from the [<mark style="color:blue;">**CheckoutAmounts**</mark>](#checkoutamounts) type for all their available fulfillments. **Below are all the values additional to the amounts values.**

<table><thead><tr><th width="429">Attribute</th><th>Description</th></tr></thead><tbody><tr><td><strong>id:</strong> <mark style="color:blue;"><strong>string</strong></mark></td><td>Retailers identifier</td></tr><tr><td><strong>name: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Retailers name</td></tr><tr><td><strong>subtotal</strong>: <mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total subtotal</td></tr><tr><td><strong>engraving</strong>: <mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total engraving</td></tr><tr><td><strong>service: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total service</td></tr><tr><td><strong>shipping: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total shipping</td></tr><tr><td><strong>delivery</strong>: <mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total delivery</td></tr><tr><td><strong>discounts</strong>: <mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total discounts</td></tr><tr><td><strong>platform : </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total platform</td></tr><tr><td><strong>giftCards</strong>: <mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total gifts card</td></tr><tr><td><strong>tax</strong>: <mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total tax</td></tr><tr><td><strong>tip</strong>: <mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total tip</td></tr><tr><td><strong>total</strong>: <mark style="color:blue;"><strong>number</strong></mark></td><td>Amounts total</td></tr><tr><td><strong>details:</strong> <a href="#amountsdetails"><mark style="color:blue;"><strong>AmountsDetails</strong></mark></a></td><td>Total amounts details, tax and discount breakdown</td></tr><tr><td><strong>address:</strong> <a href="/types/loc.md#address"><mark style="color:blue;"><strong>Address</strong></mark></a></td><td>Retailers address</td></tr><tr><td><strong>fulfillments: </strong><mark style="color:purple;"><strong>Array&#x3C;</strong></mark><a href="#checkoutretailerfulfillments"><mark style="color:blue;"><strong>CheckoutRetailerFulfillments</strong></mark></a><mark style="color:purple;"><strong>></strong></mark></td><td>Retailers fulfillment methods</td></tr></tbody></table>

### **CheckoutRetailerFulfillments**

Checkout retailer fulfillments includes accumulated totals using all the same properties from the [<mark style="color:blue;">**CheckoutAmounts**</mark>](#checkoutamounts) type for the fulfillments. **Below are all the values additional to the amounts values.**

<table><thead><tr><th width="411">Attribute</th><th>Description</th></tr></thead><tbody><tr><td><strong>id:</strong> <mark style="color:blue;"><strong>string</strong></mark></td><td>Fulfillment identifier</td></tr><tr><td><strong>scheduledFor: </strong><mark style="color:blue;"><strong>string | Date</strong></mark></td><td>If the fulfillment method is <code>type: onDemand</code> the scheduled date and time in an ISO date string</td></tr><tr><td><strong>deliveryInstructions: </strong><mark style="color:blue;"><strong>string</strong></mark> </td><td>Delivery instructions </td></tr><tr><td><strong>type: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>Fulfillment type, <code>"onDemand" | "shipping"</code></td></tr><tr><td><strong>expectation:</strong> <a href="#checkoutfulfillmentexpectation"><mark style="color:blue;"><strong>CheckoutFulfillmentExpectation</strong></mark></a></td><td>Fulfillment expectation configurations</td></tr><tr><td><strong>items: </strong><mark style="color:blue;"><strong>string[]</strong></mark></td><td>Fulfillment item ids</td></tr><tr><td><strong>doesAllowPromos</strong>: <mark style="color:blue;"><strong>boolean</strong></mark></td><td>indicates whether the retailer per fulfillment level support promo codes for cart &#x26; checkout</td></tr><tr><td><strong>doesAllowGiftCards</strong>: <mark style="color:blue;"><strong>boolean</strong></mark></td><td>indicates whether the retailer per fulfillment level support gift cards for  checkout</td></tr></tbody></table>

### **CheckoutFulfillmentExpectation**

<table><thead><tr><th width="288">Attribute</th><th>Context</th></tr></thead><tbody><tr><td><strong>detail: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>detailed expectation of fulfillment, <em>ex: Ships in 3 days</em></td></tr><tr><td><strong>short: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>short expectation of fulfillment, <em>ex: 3 days</em></td></tr></tbody></table>

### **DeliveryInstruction**

<table><thead><tr><th width="288">Attribute</th><th>Context</th></tr></thead><tbody><tr><td><strong>fulfillmentId: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>unique identifier for the delivery method</td></tr><tr><td><strong>instructions: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>delivery guidelines for the selected method, <strong>max length: 250 characters</strong></td></tr></tbody></table>

### Sample `checkout`

### **CheckoutPromoCode**

<table><thead><tr><th width="343">Attribute</th><th>Description</th></tr></thead><tbody><tr><td><strong>value: </strong><mark style="color:blue;"><strong>string</strong></mark></td><td>The promotional code value</td></tr><tr><td><strong>discount: </strong><mark style="color:blue;"><strong>number</strong></mark></td><td>The discount promo code number</td></tr><tr><td><strong>freeDelivery: </strong><mark style="color:blue;"><strong>boolean</strong></mark></td><td>Whether promo provides free delivery</td></tr><tr><td><strong>freeServiceFee: </strong><mark style="color:blue;"><strong>boolean</strong></mark></td><td>Whether promo waives service fees</td></tr><tr><td><strong>freeShipping: </strong><mark style="color:blue;"><strong>boolean</strong></mark></td><td>Whether promo provides free shipping</td></tr></tbody></table>

### Sample `checkout`

<details>

<summary>Checkout Object</summary>

```json
{
    "cartId": "cartId_123abc123abc",
    "hasSubstitutionPolicy": true,
    "isGift": true,
    "customer": {
        "id": "customerId_123abc123abc",
        "firstName": "Jon",
        "lastName": "Doe",
        "email": "john@doe.com",
        "company": "ReserveBar",
        "phone": "(601) 952-1325",
        "birthDate": "2003-11-12"
    },
    "billingSameAsShipping": false,
    "shippingAddressTwo": "Apartment 4",
    "acceptedAccountCreation": true,
    "marketingPreferences": {
        "canEmail": true,
        "canSms": true
    },
    "billingAddress": {
        "firstName": "Jon",
        "lastName": "Doe",
        "email": "test@example.us",
        "phone": "(601) 952-1311",
        "company": "ReserveBar",
        "one": "1600 Amphitheatre Parkway",
        "two": "Apartment 1",
        "city": "New york",
        "state": "FL",
        "zip": "10016"
    },
    "giftOptions": {
        "message": "Cheers!",
        "recipient": {
            "name": "User",
            "phone": "(601) 952-1325",
            "email": "user@user.com"
        }
    },
    "hasAgeVerify": false
}
```

</details>
