> 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: getCatalogItems(options: Options, context: Context) # Method package: wixEcom # Method menu location: wixEcom --> EcomCatalog --> getCatalogItems # Method Link: https://dev.wix.com/docs/velo/events-service-plugins/e-commerce/service-plugins/ecom-catalog/get-catalog-items.md # Method Description: Retrieves item data from a custom catalog. This function is automatically called by Wix to retrieve the catalog items provided by your custom catalog plugin. This happens when certain actions are performed on the cart and/or checkout. For example, when an item is added to the cart. ### Where to find `getCatalogItems()` When you [add the Catalog service plugin](https://dev.wix.com/docs/develop-websites/articles/code-tutorials/wix-e-commerce-stores/e-commerce-catalog-custom-extension-beta.md#step-1-create-a-new-catalog-custom-extension), a folder is automatically added to your site. Use the `.js` file in the folder to write the code to determine which catalog items to retrieve. For more information on customizing your catalog plugin, see [Velo Tutorial: eCommerce Catalog Service Plugin](https://dev.wix.com/docs/develop-websites/articles/code-tutorials/wix-e-commerce-stores/e-commerce-catalog-custom-extension-beta.md#my-extension-namejs). # Method Code Examples: *** Note: do not assume any prop names or enum values other than the ones in the example. ## Example of received `options` parameter and returned properties for `catalogItems` array ```javascript export const getCatalogItems = async (options) => { // Example options parameter options = { "catalogReferences": [ { "catalogReference": { "catalogItemId": "2", "appId": "7ff4b539-e3bf-4d8e-84d4-2ed180fce336", "options": { "options": { "week": "3" } } }, "quantity": 1 } ], "weightUnit": "LB" } // Example of returned catalogItems array return { "catalogItems": [ { "catalogReference": { "appId": "7ff4b539-e3bf-4d8e-84d4-2ed180fce336", "catalogItemId": "2", "options": { "options": { "week": "3" } } }, "data": { "productName": { "original": "EuroCamper", "translated": "EuroCamper" }, "itemType": { "preset": "PHYSICAL" }, "price": "540", "media": "wix:image://v1/11062b_7fba2fc327a04e1493f1a28213e8cae8~mv2.jpeg/camping-site#originWidth=6924&originHeight=3130", "descriptionLines": [ { "name": { "original": "Beds", "translated": "Beds" }, "lineType": "PLAIN_TEXT", "plainTextValue": { "original": "Type: Double, Quantity: 1\nType: King, Quantity: 1", "translated": "Type: Double, Quantity: 1\nType: King, Quantity: 1" }, "plainText": { "original": "Type: Double, Quantity: 1\nType: King, Quantity: 1", "translated": "Type: Double, Quantity: 1\nType: King, Quantity: 1" } }, { "name": { "original": "Size", "translated": "Size" }, "lineType": "PLAIN_TEXT", "plainTextValue": { "original": "7x3x3", "translated": "7x3x3" }, "plainText": { "original": "7x3x3", "translated": "7x3x3" } }, { "name": { "original": "Description", "translated": "Description" }, "lineType": "PLAIN_TEXT", "plainTextValue": { "original": "Professional Travelers RV for road trips, Enjoy a comfortable mobile home for the best family experience !", "translated": "Professional Travelers RV for road trips, Enjoy a comfortable mobile home for the best family experience !" }, "plainText": { "original": "Professional Travelers RV for road trips, Enjoy a comfortable mobile home for the best family experience !", "translated": "Professional Travelers RV for road trips, Enjoy a comfortable mobile home for the best family experience !" } }, { "name": { "original": "Additional Info", "translated": "Additional Info" }, "lineType": "PLAIN_TEXT", "plainTextValue": { "original": "Deposit fee is 40$ per item\nReturning the item: return shipping is included with your order. All\nyou have to do is re-pack the hardware and it will be picked up by\nthe shipping company at the rental end date. If you cannot be\nreached, late fees will apply.\nCancelation: Orders will receive a full refund when canceled 10\nbusiness days before the rental start date.", "translated": "Deposit fee is 40$ per item\nReturning the item: return shipping is included with your order. All\nyou have to do is re-pack the hardware and it will be picked up by\nthe shipping company at the rental end date. If you cannot be\nreached, late fees will apply.\nCancelation: Orders will receive a full refund when canceled 10\nbusiness days before the rental start date." }, "plainText": { "original": "Deposit fee is 40$ per item\nReturning the item: return shipping is included with your order. All\nyou have to do is re-pack the hardware and it will be picked up by\nthe shipping company at the rental end date. If you cannot be\nreached, late fees will apply.\nCancelation: Orders will receive a full refund when canceled 10\nbusiness days before the rental start date.", "translated": "Deposit fee is 40$ per item\nReturning the item: return shipping is included with your order. All\nyou have to do is re-pack the hardware and it will be picked up by\nthe shipping company at the rental end date. If you cannot be\nreached, late fees will apply.\nCancelation: Orders will receive a full refund when canceled 10\nbusiness days before the rental start date." } }, { "name": { "original": "Week", "translated": "Week" }, "lineType": "PLAIN_TEXT", "plainTextValue": { "original": "3", "translated": "3" }, "plainText": { "original": "3", "translated": "3" } } ], "physicalProperties": { "shippable": true }, "paymentOption": "FULL_PAYMENT_ONLINE", "quantityAvailable": 2 } } ] } }; ``` ---