# BuyingMesh merchant data standard

Use this standard when preparing a supplier application or CSV catalog. It is designed for one stable, machine-readable record per purchasable SKU variant. Submit only data owned by the supplier or covered by written authorization. A submission is private until BuyingMesh reviews the supplier, evidence, image rights, price, inventory and lead time.

## Supplier profile

The application must identify the legal entity and a reachable contact. Provide:

- `companyName`: trading or storefront name.
- `legalName`: registered legal entity name.
- `workEmail`, `contactName`, `contactPhone`: operational contact details.
- `supplierType`: `manufacturer`, `trading_company`, or `distributor`.
- `countryRegion`: registered country and region.
- `shippingOrigin`: city/region from which the listed goods ship.
- `category`: primary product category.
- `catalogSize`: approximate number of SKUs.
- `productionCapacity`: monthly capacity, variant count, or peak-season limits.
- `qualificationSummary`: license, quality system, export or other relevant qualification.
- `qualificationEvidenceUrl`: HTTPS link to a document or verification page, when available.
- `fulfillmentProfile`: packing method, dispatch cadence, destinations and tracking capability.
- `dataAuthorizationConfirmed`: must be `true`.
- `imageRightsConfirmed`: must be `true`.

## SKU record

The CSV template uses these field names. Fields marked **required** must be present before the row can be reviewed. A blank optional field is preferable to an invented value.

| Field | Required | Format | Meaning |
| --- | --- | --- | --- |
| `sku` | yes | supplier-stable string | Unique purchasable variant code; never reuse it for a different product. |
| `title` | yes | text | Clear product name in English or the supplier's original language. |
| `category` | yes | text | Most specific product category. |
| `variant` | recommended | text | Style, model, pack or variant identifier. |
| `material` | yes | text | Principal material and treatment. |
| `color` | recommended | text | Color or finish as sold. |
| `dimensions` | yes | text with units | Finished size; include bead diameter, length, width or other relevant measurements. |
| `gtin` | if available | GTIN-8/12/13/14 | Global trade item number; leave blank when the supplier does not have one. |
| `unit_of_measure` | yes | `piece`, `pair`, `set`, `box`, etc. | Unit used for price, MOQ and inventory. |
| `moq` | yes | integer ≥ 100 | Minimum order quantity in `unit_of_measure`; values below 100 are rejected. |
| `price` | yes | non-negative number | Current supplier price for the stated unit and price tier. |
| `price_currency` | yes | ISO 4217 code | For example `CNY`, `USD`, `EUR`. |
| `price_unit` | yes | text | For example `per_piece`, `per_pair`, `per_set`. |
| `price_breaks` | recommended | JSON array | Quantity tiers, e.g. `[{"minQuantity":100,"amount":1.2,"currency":"CNY"}]`. |
| `inventory` | yes unless unknown | integer | Available sellable units. Do not use production capacity or a planning estimate here. |
| `inventory_status` | yes | `confirmed` or `unknown` | Use `unknown` instead of guessing stock. |
| `lead_time_days` | yes | non-negative integer | Business days from confirmed order to dispatch. |
| `shipping_origin` | yes | city/region | Actual dispatch location for this SKU. |
| `qualification_status` | yes | text | Relevant qualification or review state. |
| `qualification_evidence` | recommended | HTTPS URL or reference | Evidence supporting the qualification. |
| `source_ref` | recommended | HTTPS URL or internal reference | Supplier catalog or source record used to verify this row. |
| `image_url` | yes | one or more HTTPS URLs | Product images separated by `\|`; images must be owned or authorized. |
| `image_rights_confirmed` | yes | `true` | Confirms rights to publish each image. |
| `last_confirmed_at` | recommended | ISO 8601 timestamp | When the supplier last confirmed price, stock and lead time. |
| `packaging` | recommended | text | Unit and export packaging details. |
| `customization` | recommended | text | Whether private label, color or size customization is available. |
| `mixed_batch` | recommended | text | Whether mixed styles or colors are allowed in one MOQ. |
| `fulfillment_notes` | optional | text | Fragile handling, inspection, carton or dispatch notes. |

## Jewelry examples

For bracelets include bead diameter, bracelet length, bead count, string or clasp material, finish, color tolerance and whether each piece is handmade. For hair clips include length, width, clip mechanism, base material, plating, grip strength and packaging. Record each sellable size, color or pack as a separate SKU when its price, MOQ or inventory differs.

## Validation and publication

1. Use UTF-8 CSV with one header row and one SKU per row. Do not include formulas, passwords or private keys.
2. Use HTTPS image and evidence URLs. Do not paste marketplace listings unless the supplier has authorized their use.
3. Never use `0` to mean unknown inventory; use `inventory_status=unknown` and leave `inventory` blank. Keep production capacity in the supplier profile or fulfillment notes, never in `inventory`.
4. Price, inventory and lead time are time-sensitive snapshots. BuyingMesh records the confirmation time and may request a refresh.
5. Imported rows enter `pending_review`. They are not public and cannot be quoted until the supplier and SKU are approved and current price, inventory and lead time are confirmed.
6. After approval, agents receive the record as Schema.org-compatible JSON-LD through REST and MCP, including the supplier identity, images, MOQ, price, stock state, lead time, qualifications and freshness timestamp.

- CSV template: https://buyingmesh.com/merchant-template.csv
- Application: https://buyingmesh.com/merchant.html#apply
- Import contract: https://buyingmesh.com/openapi.yaml

