---
name: checkout-api
description: "Checkout API skill. Use when working with Checkout for api, checkout. Covers 44 endpoints."
version: 1.0.0
generator: lapsh
---

# Checkout API
API version: 1.0

## Auth
ApiKey X-VTEX-API-AppKey in header | ApiKey X-VTEX-API-AppToken in header | ApiKey VtexIdclientAutCookie in header

## Base URL
https://apiexamples.vtexcommercestable.com.br

## Setup
1. Set your API key in the appropriate header
2. GET /api/checkout/pub/orderForm -- verify access
3. POST /api/checkout/pub/orderForms/simulation -- create first simulation

## Endpoints

44 endpoints across 2 groups. See references/api-spec.lap for full details.

### api
| Method | Path | Description |
|--------|------|-------------|
| POST | /api/checkout/pub/orderForms/simulation | Cart simulation |
| GET | /api/checkout/pub/orderForm | Get current or create a new cart |
| GET | /api/checkout/pub/orderForm/{orderFormId} | Get cart information by ID |
| POST | /api/checkout/pub/orderForm/{orderFormId}/items/removeAll | Remove all items from shopping cart |
| POST | /api/checkout/pub/orderForm/{orderFormId}/items/update | Update cart items |
| POST | /api/checkout/pub/orderForm/{orderFormId}/items | Add cart items |
| PATCH | /api/checkout/pub/orderForm/{orderFormId}/items | Handle cart items |
| PUT | /api/checkout/pub/orderForm/{orderFormId}/items/{itemIndex}/price | Change price of an SKU in a cart |
| DELETE | /api/checkout/pub/orderForm/{orderFormId}/items/{itemIndex}/price | Delete manual price of an SKU in a cart |
| PATCH | /api/checkout/pub/orderForm/{orderFormId}/profile | Ignore profile data on checkout |
| GET | /api/checkout/pub/profiles | Get client profile by email |
| POST | /api/checkout/pub/orderForm/{orderFormId}/attachments/clientProfileData | Add client profile |
| POST | /api/checkout/pub/orderForm/{orderFormId}/attachments/shippingData | Add shipping address and select delivery option |
| POST | /api/checkout/pub/orderForm/{orderFormId}/attachments/clientPreferencesData | Add client preferences |
| POST | /api/checkout/pub/orderForm/{orderFormId}/attachments/marketingData | Add marketing data |
| POST | /api/checkout/pub/orderForm/{orderFormId}/attachments/paymentData | Add payment data |
| POST | /api/checkout/pub/orderForm/{orderFormId}/items/{itemIndex}/attachments/{attachmentName} | Add item attachment |
| DELETE | /api/checkout/pub/orderForm/{orderFormId}/items/{itemIndex}/attachments/{attachmentName} | Remove item attachment |
| POST | /api/checkout/pub/orderForm/{orderFormId}/attachments/subscriptionData | Add item subscription attachment |
| DELETE | /api/checkout/pub/orderForm/{orderFormId}/attachments/subscriptionData | Remove item subscription attachment |
| POST | /api/checkout/pub/orderForm/{orderFormId}/attachments/merchantContextData | Add merchant context data |
| POST | /api/checkout/pub/orderForm/{orderFormId}/attachments/invoiceData | Attach invoice data |
| PUT | /api/checkout/pub/orderForm/{orderFormId}/customData/{appId} | Set multiple custom field values |
| PUT | /api/checkout/pub/orderForm/{orderFormId}/customData/{appId}/{appFieldName} | Set single custom field value |
| DELETE | /api/checkout/pub/orderForm/{orderFormId}/customData/{appId}/{appFieldName} | Remove single custom field value |
| PUT | /api/checkout/pub/orderForm/{orderFormId}/customFields | Batch add custom fields |
| PUT | /api/checkout/pub/orderForm/{orderFormId}/customFields/order | Add order custom field |
| PUT | /api/checkout/pub/orderForm/{orderFormId}/customFields/item/{itemId} | Add item custom field |
| DELETE | /api/checkout/pub/orderForm/{orderFormId}/customFields/item/{itemId} | Remove item custom field |
| PUT | /api/checkout/pub/orderForm/{orderFormId}/customFields/address/{addressId} | Add address custom field |
| GET | /api/checkout/pvt/configuration/orderForm | Get order form configuration |
| POST | /api/checkout/pvt/configuration/orderForm | Update order form configuration |
| GET | /api/checkout/pvt/configuration/window-to-change-seller | Get window to change seller |
| POST | /api/checkout/pvt/configuration/window-to-change-seller | Update window to change seller |
| POST | /api/checkout/pub/orderForm/{orderFormId}/messages/clear | Clear order form messages |
| GET | /api/checkout/pub/orderForm/{orderFormId}/installments | Cart installments |
| POST | /api/checkout/pub/orderForm/{orderFormId}/coupons | Add coupons to the cart |
| GET | /api/checkout/pub/pickup-points | List pickup points by location |
| GET | /api/checkout/pub/postal-code/{countryCode}/{postalCode} | Get address by postal code |
| POST | /api/checkout/pub/orderForm/{orderFormId}/transaction | Place order from an existing cart |
| PUT | /api/checkout/pub/orders | Place order |
| POST | /api/checkout/pub/gatewayCallback/{orderGroup} | Process order |
| GET | /api/checkout/pub/regions/{regionId} | Get sellers by region or address |

### checkout
| Method | Path | Description |
|--------|------|-------------|
| GET | /checkout/changeToAnonymousUser/{orderFormId} | Remove all personal data from shopping cart |

## Common Questions

Match user requests to endpoints in references/api-spec.lap. Key patterns:
- "Create a simulation?" -> POST /api/checkout/pub/orderForms/simulation
- "List all orderForm?" -> GET /api/checkout/pub/orderForm
- "Get orderForm details?" -> GET /api/checkout/pub/orderForm/{orderFormId}
- "Create a removeAll?" -> POST /api/checkout/pub/orderForm/{orderFormId}/items/removeAll
- "Get changeToAnonymousUser details?" -> GET /checkout/changeToAnonymousUser/{orderFormId}
- "Create a update?" -> POST /api/checkout/pub/orderForm/{orderFormId}/items/update
- "Create a item?" -> POST /api/checkout/pub/orderForm/{orderFormId}/items
- "List all profiles?" -> GET /api/checkout/pub/profiles
- "Create a clientProfileData?" -> POST /api/checkout/pub/orderForm/{orderFormId}/attachments/clientProfileData
- "Create a shippingData?" -> POST /api/checkout/pub/orderForm/{orderFormId}/attachments/shippingData
- "Create a clientPreferencesData?" -> POST /api/checkout/pub/orderForm/{orderFormId}/attachments/clientPreferencesData
- "Create a marketingData?" -> POST /api/checkout/pub/orderForm/{orderFormId}/attachments/marketingData
- "Create a paymentData?" -> POST /api/checkout/pub/orderForm/{orderFormId}/attachments/paymentData
- "Delete a attachment?" -> DELETE /api/checkout/pub/orderForm/{orderFormId}/items/{itemIndex}/attachments/{attachmentName}
- "Create a subscriptionData?" -> POST /api/checkout/pub/orderForm/{orderFormId}/attachments/subscriptionData
- "Create a merchantContextData?" -> POST /api/checkout/pub/orderForm/{orderFormId}/attachments/merchantContextData
- "Create a invoiceData?" -> POST /api/checkout/pub/orderForm/{orderFormId}/attachments/invoiceData
- "Update a customData?" -> PUT /api/checkout/pub/orderForm/{orderFormId}/customData/{appId}
- "Update a customData?" -> PUT /api/checkout/pub/orderForm/{orderFormId}/customData/{appId}/{appFieldName}
- "Delete a customData?" -> DELETE /api/checkout/pub/orderForm/{orderFormId}/customData/{appId}/{appFieldName}
- "Update a item?" -> PUT /api/checkout/pub/orderForm/{orderFormId}/customFields/item/{itemId}
- "Delete a item?" -> DELETE /api/checkout/pub/orderForm/{orderFormId}/customFields/item/{itemId}
- "Update a address?" -> PUT /api/checkout/pub/orderForm/{orderFormId}/customFields/address/{addressId}
- "List all orderForm?" -> GET /api/checkout/pvt/configuration/orderForm
- "Create a orderForm?" -> POST /api/checkout/pvt/configuration/orderForm
- "List all window-to-change-seller?" -> GET /api/checkout/pvt/configuration/window-to-change-seller
- "Create a window-to-change-seller?" -> POST /api/checkout/pvt/configuration/window-to-change-seller
- "Create a clear?" -> POST /api/checkout/pub/orderForm/{orderFormId}/messages/clear
- "List all installments?" -> GET /api/checkout/pub/orderForm/{orderFormId}/installments
- "Create a coupon?" -> POST /api/checkout/pub/orderForm/{orderFormId}/coupons
- "List all pickup-points?" -> GET /api/checkout/pub/pickup-points
- "Get postal-code details?" -> GET /api/checkout/pub/postal-code/{countryCode}/{postalCode}
- "Create a transaction?" -> POST /api/checkout/pub/orderForm/{orderFormId}/transaction
- "Get region details?" -> GET /api/checkout/pub/regions/{regionId}
- "How to authenticate?" -> See Auth section

## Response Tips
- Check response schemas in references/api-spec.lap for field details
- Create/update endpoints typically return the created/updated object

## CLI

```bash
# Update this spec to the latest version
npx @lap-platform/lapsh get checkout-api -o references/api-spec.lap

# Search for related APIs
npx @lap-platform/lapsh search checkout-api
```

## References
- Full spec: See references/api-spec.lap for complete endpoint details, parameter tables, and response schemas

> Generated from the official API spec by [LAP](https://lap.sh)
