Skip to main content
Your products live in a Meta catalog. Until now you edited them in Meta Commerce Manager and LazyApp only read them. With Products you change them from LazyApp: one at a time in the console, many at once from a spreadsheet, or in bulk over the API. Every change goes to Meta through its Catalog Batch API. Meta applies changes in the background, usually within a minute, so LazyApp queues each change, sends it, and keeps checking until Meta is done. Rows Meta refuses come back with the reason in plain words.
Catalog is on the Growth and Pro plans. On a smaller plan you can still see and remove products, but not add, edit or upload them. Test mode is never limited. See Plans and limits.
Changing a catalog needs Meta’s catalog_management permission for LazyApp. Meta is still reviewing that request. Until it is approved, Products shows your products and the full flow, marked Waiting for Meta approval, and the API returns 403 with code: meta_approval_pending. Reading products works today.

Before you start

Connect a catalog to your number: WhatsApp numbers → your number → Shop, then paste the catalog ID from Commerce Manager. See Shop settings.

In the console

Open Products.
  • Add product. Enter a name, price and photo. Stock is optional: leave it empty if you don’t count stock, or enter how many can be sold. At 0 the product shows as out of stock. More details holds the product code (SKU), a product page link, brand and condition.
  • Edit. Click a product. Only what you change is sent.
  • Remove. Use the row menu. Orders already placed are not affected.
  • Upload spreadsheet. Download the template, fill it in Excel or Google Sheets, save as CSV and upload it.
Progress shows under Recent changes, with every row that needs fixing.

What LazyApp fills in for you

Meta requires a product page link, brand, condition and description for every new product. A shop owner rarely has all four, so for a new product LazyApp uses: A photo you pick in the console is stored by LazyApp and given to Meta as a private link only Meta knows, because Meta downloads catalog photos more than once.

Spreadsheet format

The first row names the columns. Only sku is required in every row. A row with only sku and a few columns updates just those columns, so a stock update can be two columns wide:
LazyApp checks every row before sending it. A row with a problem, such as a price that is not a number, is skipped and listed with its row number; the other rows still go through. One file can hold up to 20,000 products and 10 MB.

Over the API

Scope: catalog:write The response is 202 with the queued change:

Check the result

Scope: messages:read status moves from queued to processing, then to finished, finished_with_errors or failed. Each entry in errors names the item by its position in items (line, starting at 1) and its sku:
Poll every few seconds while status is queued or processing. Small changes finish within a minute; a 5,000-row change can take several.

Errors

Read products with GET /v1/catalog/products.