Agent skills › manifold-greenfield

Download the skill · SKILL.md · over MCP, the prompt manifold-greenfield

Setting Manifold up from nothing

Who this is for: a business with nothing to migrate: no Shopify store, no ERP, maybe a price list in a document or a range in someone's head. You build their records with them. A channel (a Shopify store, the B2B portal when it exists) can be connected later; Manifold works without one, with orders keyed in or taken by the team.

If they have their data in a spreadsheet already, the manifold-from-spreadsheets skill is quicker: use it for the bulk and come back here for the rest.

What the merchant needs ready

  • What they sell: each product, its variants (size, colour …), the SKU codes they want, or permission for you to propose some.
  • Where stock is held, and how much of each SKU is there today, with what each unit cost them.
  • Their price lists: retail, wholesale or per customer, and the currency.
  • Their suppliers and their trade customers.
  • The Manifold connector in this client, connected with "Everything I can do" (manifold-onboarding skill, step 2).

Never

  • Never ask for, read out or type a password, an API key or a card number.
  • Never invent records: no made-up SKUs, prices, costs, quantities, suppliers or emails. Proposing a SKU scheme is fine; using it is their decision.
  • Never decide go-live, billing or who joins the team.
  • Never create in bulk what they have not seen. Show the list, then create.

1. Account, journey, profile

  1. A new business signs up at https://admin.getmanifold.io/signup?source=agent; then connect the connector to that organization.
  2. onboarding_get_status. No journey: onboarding_start with source: "agent".
  3. onboarding_set_profile: business name, country, currency, timezone, sells (retail, wholesale or both), buysFromSuppliers, and channels: ["none"] unless a channel is coming.
  4. The source step: nothing to bring. On their word, onboarding_skip_step with step source and reason start-fresh.

2. Shape the range

Agree the shape before creating anything:

  • One SKU per thing on a shelf. Letters, digits, - and _; Manifold uppercases them. A pattern such as TEE-NAVY-M reads well in a pick list.
  • A product groups variants: one "Trail Tee" with sizes S, M and L is a product with three variant SKUs.
  • A kit (a gift box of three items) is a composite of other SKUs, and holds no stock of its own.
  • Costs and prices are whole cents in the business's currency.

More than about 20 SKUs: build a sheet with them (one row per variant: product, option values, SKU, cost, price, opening quantity per location) and import it with the manifold-import skill, in its order. Fewer: create them one by one, as below.

3. Create, in this order

Each step needs what the one before it made:

  1. Locations: Main exists (inventory_list_locations). inventory_create_location for every other place stock is held: a second warehouse, a shop floor, a 3PL.
  2. Stock items: inventory_create_item per SKU, with its opening quantity at a locationId (Main when omitted). Serial- or batch-tracked SKUs start at 0 and are received. Give each SKU its unit cost with catalog_set_cost, or on the opening stocktake (§4).
  3. Products: catalog_create_product, each variant naming its stocked SKU and its option values ({ "name": "Size", "value": "S" }). A variant is stocked unless its kind says it is a composite.
  4. Catalogs and prices: a Default catalog exists (catalog_list_catalogs). Add one per price list (catalog_create_catalog, in the business's currency), list each product in it (catalog_include_product), then catalog_set_price per SKU. A price for a product the catalog does not list is refused (409 PriceForUnlistedSku). A wholesale list that is a fixed discount off retail can be derived instead (catalog_configure_pricing).
  5. Suppliers and customers:
    • crm_create_company for each company: roles: ["supplier"] for a supplier, customer for a trade customer, the catalogs it buys from (catalogIds), and a reference you mint so a retry does not create it twice;
    • crm_create_person for each person, with their email.
  6. Supplier prices (if they buy from suppliers): purchasing_set_supplier_price, so purchase orders fill in.

Read onboarding_get_status after each group: the locations, products, channels and parties steps turn done from what exists.

4. Settings, then the opening stocktake

  • purchasing_set_settings (only if they raise purchase orders).
  • fulfillment_set_workflow: which of pick, pack, ship and invoice are manual or automatic, and paymentTerms.
  • The accounting basis (cash or accrual) is set by the merchant at Settings › Tax.
  • Opening stocktake:
    • inventory_start_stocktake;
    • inventory_stocktake_sheet (missingCost=true lists SKUs with no cost yet);
    • inventory_record_stocktake_counts with the counts and costs they confirm;
    • inventory_complete_stocktake when they say so.

Their books begin there. A read-only organization cannot complete it: going live does, so record the counts and costs and move on.

Then the manifold-onboarding skill's last steps: books, billing (60 days free on a card at Settings › Billing, theirs to start) and team (Settings › Users, theirs).

5. A channel, later

  • Shopify: when they open a store, the manifold-from-shopify skill connects it. The products already in Manifold are matched by SKU, so keep the SKUs the same in Shopify.
  • Orders in the meantime are keyed in (fulfillment_create_order) against a catalog.

What stays read-only until go-live

The organization starts read-only. Everything above works, because it all stays inside Manifold. What is held is outward:

  • mail to their customers and suppliers;
  • pushes to a store or a ledger;
  • completing the opening stocktake.

Going live is the owner's or an admin's decision, typed in at Settings › General. It needs every stock SKU costed. Ask; never imply it has happened. There is no tool that reads the mode: the badge at the top of the admin shows it.

Done looks like

  • inventory_list_items and catalog_list_products hold the range they described, every SKU with a cost.
  • Each catalog has its prices: catalog_list_catalog_prices.
  • Suppliers and trade customers are in crm_list_companies.
  • onboarding_get_status: every applying step done or skipped on their word, billing started.

When it goes wrong

| What you see | What it means | Next |
|---|---|---|
| 409 SkuConflict | That SKU exists already | Read it with inventory_get_item; use it, or agree another code |
| 409 SkuNotStocked on a product | The variant's SKU is not an inventory item yet | inventory_create_item first, then the product |
| A price refused for currency | The catalog is in another currency | Price it in the catalog's currency, or create a catalog in theirs |
| 409 PriceForUnlistedSku | The product is not listed in that catalog | catalog_include_product, then the price |
| 409 PersonEmailConflict | That email belongs to someone already | crm_list_people; link the existing person instead |
| onboarding_complete refused, StepsOutstanding | A step is neither done nor skipped (often billing or team) | Read onboarding_get_status; send them to the step |