BrowseProductOffer
Reusable BrowseProductOffer schema.
Type: object
Fields
| Field | Type | Constraints | Meaning | Example |
|---|---|---|---|---|
lanerequired | string | allowed values: native, handoff | Which lane this offer comes from (#1634, ADR-0068): `native` is a marketplace Seller’s Listing, `handoff` is a Handoff Store’s synced single. Read this first - it says which identity fields carry a value and whether Snapcaster stands behind the sale at all. | native (generated) |
productIdrequired | integer | None | Product Id supplied to or returned by this operation. | 0 (generated) |
sellerIdrequired | integer or null | None | Cart-line key (with `skuId`); identifies the offering Seller. `null` on a `handoff` offer: a Handoff Store has no seller record and never gets a synthetic one. | 0 (generated) |
storeSlugrequired | string or null | None | The Handoff Store’s slug - its stable identity across the cart, the quote and the permalink. `null` on a `native` offer. | string (generated) |
variantIdrequired | integer or null | None | The Shopify variant this handoff offer is for; with `storeSlug` it is the handoff cart-line key. `null` on a `native` offer. | 0 (generated) |
skuIdrequired | integer | None | The canonical TCGplayer sku id. With `sellerId` it is the NATIVE cart-line key; a `handoff` offer has no `sellerId` and is carted by `storeSlug` + `variantId` instead. | 0 (generated) |
sellerNamerequired | string or null | None | Display name of whoever is offering the card - the Seller’s store name, or the Handoff Store’s name. Not a handle/slug/seller_code. | string (generated) |
conditionrequired | string or null | None | The normalized condition assigned to the card. | string (generated) |
languagerequired | string or null | None | The language of the card printing. | string (generated) |
finishrequired | string or null | None | The physical finish or foil treatment of the card. | string (generated) |
isSealedrequired | boolean | None | True when the canonical SKU condition is `Unopened`; matches the Product grid classification. | true (generated) |
pricerequired | integer | None | Offer price in integer minor units (cents). | 0 (generated) |
availablerequired | integer | None | Available stock: on-hand minus committed units. | 0 (generated) |
checkoutModerequired | string or null | allowed values: express, manual, null | The store's buyer-facing checkout mode (ADR-0025): `express` (native — transacts on Snapcaster) or `manual` (handoff — the Buyer finishes on the Seller's own checkout). `null` only for a legacy doc indexed before the field existed. | express (generated) |
salesCountrequired | integer or null | None | The store's live number of sales (paid-order count), computed live per request — not indexed. A number for an `express` (native) store (`0` for a genuinely-new one); `null` for a `manual` (handoff) store, which mints no orders, so the client renders nothing. | 0 (generated) |
sellerCoderequired | string or null | None | The store’s PUBLIC handle — the Seller-page identity to link this offer to (`/marketplace/sellers/{sellerCode}`). Resolved live from the database, not the search projection; `null` when the store has no directory row (the offer is still served). | string (generated) |
reviewScorerequired | object | None | A store’s live Review score and the count it is drawn from, always together so a low-sample score reads as low-sample. Computed per request and never indexed. A store with no reviews carries `{ score: null, count: 0 }` — never a 0.0 — and a `manual` (handoff) store, unreviewable in v1, reads the same way. Shared by the Seller page and the Product-page offers. | {
"score": 0,
"count": 0
} (generated) |
reviewScore.scorerequired | number or null | None | Mean of current non-hidden ratings, rounded to 2 decimals. `null` — NOT 0 — when the store has no reviews yet, so a new store is never shown as a 0.0-rated one. | 0 (generated) |
reviewScore.countrequired | integer | None | How many current non-hidden Reviews the mean is drawn from. | 0 (generated) |
poBoxDeliveryrequired | object or null | None | The store’s effective PO Box delivery value. `null` on a `handoff` offer: Snapcaster arranges no shipment on that lane, so it makes no claim either way. | {
"status": "available"
} (generated) |
poBoxDelivery.statusrequired | string | allowed values: available, seller_declines, platform_suspended | `available`: the store delivers to PO Boxes. `seller_declines`: the store does not. `platform_suspended`: PO Box delivery is suspended platform-wide (e.g. a Canada Post strike) and outranks the store’s own setting. | available (generated) |
disclosuresrequired | object or null | None | Provenance, grading, and authenticity statements shown to the buyer. | {
"imageSource": "catalog",
"conditionSource": "seller_declared",
"authenticitySource": "seller_attestation",
"snapcasterInspected": false,
"snapcasterGraded": false,
"snapcasterAuthenticated": false,
"gradingStandard": "snapcaster-magic-v1",
"declaredGrade": "string",
"buyerProtection": "magic-grade-and-authenticity"
} (generated) |
disclosures.imageSourcerequired | string | allowed values: catalog | Image Source for the surrounding disclosures record. | catalog (generated) |
disclosures.conditionSourcerequired | string | allowed values: seller_declared | Condition Source for the surrounding disclosures record. | seller_declared (generated) |
disclosures.authenticitySourcerequired | string | allowed values: seller_attestation | Authenticity Source for the surrounding disclosures record. | seller_attestation (generated) |
disclosures.snapcasterInspectedrequired | boolean | allowed values: false | Snapcaster Inspected for the surrounding disclosures record. | false (generated) |
disclosures.snapcasterGradedrequired | boolean | allowed values: false | Snapcaster Graded for the surrounding disclosures record. | false (generated) |
disclosures.snapcasterAuthenticatedrequired | boolean | allowed values: false | Snapcaster Authenticated for the surrounding disclosures record. | false (generated) |
disclosures.gradingStandardrequired | string | allowed values: snapcaster-magic-v1, seller-declared-no-specialist-promise | Grading Standard for the surrounding disclosures record. | snapcaster-magic-v1 (generated) |
disclosures.declaredGraderequired | string or null | None | Declared Grade for the surrounding disclosures record. | string (generated) |
disclosures.buyerProtectionrequired | string | allowed values: magic-grade-and-authenticity, genuine-and-as-described | Buyer Protection for the surrounding disclosures record. | magic-grade-and-authenticity (generated) |
fulfillmentObligationrequired | object or null | None | Fulfillment Obligation supplied to or returned by this operation. | {
"sku": "exact",
"printing": "exact",
"language": "exact",
"finish": "exact",
"condition": "declared-or-better"
} (generated) |
fulfillmentObligation.skurequired | string | allowed values: exact | The stock-keeping identity for the exact card offering. | exact (generated) |
fulfillmentObligation.printingrequired | string | allowed values: exact | The exact card printing the Seller is obligated to supply. | exact (generated) |
fulfillmentObligation.languagerequired | string | allowed values: exact | The language of the card printing. | exact (generated) |
fulfillmentObligation.finishrequired | string | allowed values: exact | The physical finish or foil treatment of the card. | exact (generated) |
fulfillmentObligation.conditionrequired | string | allowed values: declared-or-better | The normalized condition assigned to the card. | declared-or-better (generated) |
Examples
{ "lane": "native", "productId": 0, "sellerId": 0, "storeSlug": "string", "variantId": 0, "skuId": 0, "sellerName": "string", "condition": "string", "language": "string", "finish": "string", "isSealed": true, "price": 0, "available": 0, "checkoutMode": "express", "salesCount": 0, "sellerCode": "string", "reviewScore": { "score": 0, "count": 0 }, "poBoxDelivery": { "status": "available" }, "disclosures": { "imageSource": "catalog", "conditionSource": "seller_declared", "authenticitySource": "seller_attestation", "snapcasterInspected": false, "snapcasterGraded": false, "snapcasterAuthenticated": false, "gradingStandard": "snapcaster-magic-v1", "declaredGrade": "string", "buyerProtection": "magic-grade-and-authenticity" }, "fulfillmentObligation": { "sku": "exact", "printing": "exact", "language": "exact", "finish": "exact", "condition": "declared-or-better" }}