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.
function createCheckout(
_id: string,
options: CreateCheckoutOptions,
): Promise<CreateCheckoutResponse>;
Cart ID.
Checkout creation options.
/**************************************
* 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"}
*
*/
This method doesn’t return any custom errors, but may return standard errors. Learn more about standard Wix errors.