> Portal Navigation: > > - Append `.md` to any URL under `https://dev.wix.com/docs/` to get its markdown version. > - Pages are either content pages (article or reference text) or menu pages (a list of links to child pages). > - To get a menu page, truncate any URL to a parent path and append `.md` (e.g. `https://dev.wix.com/docs/sdk.md`, `https://dev.wix.com/docs/sdk/core-modules.md`). > - Top-level index of all portals: https://dev.wix.com/docs/llms.txt > - Full concatenated docs: https://dev.wix.com/docs/llms-full.txt # Method name: createCheckout(_id: string, options: CreateCheckoutOptions) # Method package: wixEcomBackend # Method menu location: wixEcomBackend --> cart --> createCheckout # Method Link: https://dev.wix.com/docs/velo/apis/wix-ecom-backend/cart/create-checkout.md # Method Description: Creates a checkout from a cart. The `createCheckout()` function returns a Promise that resolves to the new checkout's ID when it's created. If a checkout was already created from the specified cart, that checkout will be updated with any new information from the cart. > **Note:** `options.channelType` is a required field. # Method Code Examples: *** Note: do not assume any prop names or enum values other than the ones in the example. ## Create a checkout from a cart ```javascript /************************************** * Backend code - my-backend-file.web.js * *************************************/ import { Permissions, webMethod } from 'wix-web-module'; import { cart } from 'wix-ecom-backend'; export const myCreateCheckoutFunction = webMethod(Permissions.Anyone, async (cartId, options) => { try { const checkoutId = await cart.createCheckout(cartId, options); console.log('Success! Checkout created, checkoutId:', checkoutId); return checkoutId; } catch (error) { console.error(error); // Handle the error } }); /************* * Page code * ************/ import { myCreateCheckoutFunction } from 'backend/my-backend-file.web'; // Sample cartId: const cartId = '96a61a4b-6b61-47d1-a039-0213a8230ccd'; // Sample options object: const options = { // channelType is a required field "channelType": "WEB", "email": "janedoe@example.com", "shippingAddress": { "addressLine1": "235 West 23rd Street", "addressLine2": "3rd floor", "city": "New York", "country": "US", "postalCode": "10011", "streetAddress": { "name": "West 23rd Street", "number": "235" }, "subdivision": "US-NY" } }; myCreateCheckoutFunction(cartId, options) .then((checkoutId) => { console.log('Success! Checkout created, checkoutId:', checkoutId); return checkoutId; }) .catch((error) => { console.error(error); // Handle the error }); /* Promise resolves to: * * {"checkoutId": "a43420aa-986b-456a-a2f7-7ea5c80e9007"} * */ ``` ---