Best Buy Canada Integration – Feature & Process Guide
Best Buy Canada is one of the Mirakl-based marketplaces connected to Pentagon Connect. It runs on standard Mirakl mechanics — product imports, offer/price/stock imports, order polling, and refund/cancellation requests — the same pattern shared with other Mirakl-powered marketplaces we connect to.
What's specific to this integration is the Canadian storefront: CAD currency, GST/QST/HST tax handling instead of a single VAT line, Canadian shipping zones and carriers, and a couple of Best Buy-specific data quirks (very long attribute names, a two-condition mapping for New/Vintage items). Best Buy US is a separate integration and isn't assumed to behave identically.
Quick Reference
Product Management
| Capability | Supported | Notes |
|---|---|---|
| Create new products | Yes | Products are sent first, then an offer is created against them |
| Update product content (title, description, images, attributes) | Yes | Reuses the same import flow as creation |
| Update price | Yes | Dedicated price-only update |
| Update stock/quantity | Yes | Dedicated stock-only update; also reactivates a previously deactivated listing |
| Lock price from being overwritten | Yes | Per-product "Protect Price" flag |
| Lock stock from being overwritten | Yes | Per-product "Protect Quantity" flag |
| Pause/deactivate a listing | Partial | A "Closed" flag stops all further creation/updates being sent; a dedicated delete flow exists on Best Buy's side but wasn't part of this documentation scope |
| Product variants (size/colour groups) | Yes | Each variant is its own product record, linked by a shared variant group code |
| Multiple product images | Yes | 1 required main image + up to 5 additional images |
| Product condition other than "New" | Partial | "Vintage" is also supported, but the source material is inconsistent on its exact code — see Known Limitations |
Pricing & Stock
| Capability | Supported | Notes |
|---|---|---|
| RRP / strike-through pricing | Yes | Shown as a discount when RRP is set and higher than price |
| Automatic discount date window | Yes | Defaults to "now" through "now + 2 years" if no dates are set |
| CAD currency | Yes | All offers are priced and sent in CAD |
| Canadian tax handling (GST/QST/HST) | Yes | Tracked as Sales Tax, Marketplace VAT and Internal VAT separately, at both order and line level |
| Canadian shipping-zone pricing | Yes | Zone codes such as BC Local, QC Local drive shipping fields on the offer |
Orders & Fulfilment
| Capability | Supported | Notes |
|---|---|---|
| Automatic order import | Yes | New orders and status changes are pulled in continuously |
| Order phone number captured | Yes | Both billing and shipping contact |
| Customer email captured | Yes | Marketplace-anonymised notification address |
| Billing & shipping address captured | Yes | Full address, including company name where given |
| Ship orders (tracking + mark shipped) | Yes | Carrier and tracking details are pushed, then the order is marked shipped, in one automated step |
| Carrier & tracking number | Yes | See Carriers Supported below |
| Partial shipment | No | An order always ships in full in one shipment |
Refunds, Returns, Cancellations & Claims
| Capability | Supported | Notes |
|---|---|---|
| Order cancellation | Yes | Full order only, and only before the customer has been debited |
| Full refund | Yes | After the customer has been debited |
| Partial refund (per order line) | Yes | Refunds and cancellations are always sent per order line, one line at a time |
| Refund shipping charges | Yes | Shipping tax is included only when there's actually shipping tax to account for |
| Returns | Yes | Handled through the same refund mechanism, distinguished by reason code |
| Claims / incidents | Yes | Marketplace "Incident" mechanism — see Claims below |
Product Management
Creating products
New products are sent to Best Buy Canada as products first; an offer (price/stock/availability) can only be created once the product exists on the marketplace. Both steps happen automatically once a product is ready — there's no manual per-product action needed.
- Required fields: category, SKU, brand, and a main image. A product missing any of these is blocked from being created.
- Optional but recommended: a barcode (EAN) and up to 5 additional images, on top of the required main image.
- Category-specific attributes: Best Buy Canada's taxonomy is downloaded and cached before any product push, then used to validate every product's category-specific attributes before it's sent — a product missing a category-required attribute is a common reason a product fails to reach Best Buy.
- Long attribute names: some Best Buy attributes have names longer than what our standard field can store; these are stored as a shortened label rather than the raw attribute name so they don't get truncated or collide with another attribute.
- Variants: products are grouped into variant sets (e.g. size/colour of the same item) by giving them a shared variant group code. Each variant is still created as its own product record — you don't need to submit every sibling variant together, and a variant can be pulled back out of a group by resending it without that code.
- Language scope: only English content is sent for this integration; French-language fields available in the underlying Mirakl template aren't used here.
Updating products
Product content updates reuse the same import mechanism as creation — a product is simply resent with its existing SKU. Price and stock can also be updated independently of the rest of the product content:
- Price-only updates run as their own lightweight flow for cases where only the price needs refreshing.
- Stock-only updates run as a separate flow, and are also how a previously deactivated offer is brought back — there's no separate "reactivate" action.
- Protect Price — when set, that product's price is left out of every update sent to Best Buy, so its price on the marketplace is never overwritten.
- Protect Quantity — when set, stock is left out of updates, so the live quantity isn't touched.
- Protect the whole item — when set, the product is skipped entirely for that update cycle.
Deactivating / removing products
Marking a product's account "Closed" stops all further creation and update calls being sent for it to Best Buy Canada. This is the mechanism available today for taking a listing out of sync. A dedicated delete or zero-stock deactivation flow is referenced in Best Buy's own Mirakl setup, but it wasn't part of the documentation scope compiled here, so its exact behavior in Hemi isn't captured on this page.
Pricing & Stock Sync
- RRP-based discounting: if an RRP is set and it's higher than the current price, Best Buy Canada automatically shows the item as discounted. If no discount dates are set, the discount window defaults to two years from today. If RRP isn't higher than price, no discount fields are sent.
- Currency: all offers are priced and sent in Canadian dollars.
- Condition: New and Vintage items are both accepted, mapped from the product's condition field.
- Shipping zones: offers carry Canadian shipping-zone information (e.g. British Columbia local, Quebec local) as part of the pricing/stock payload.
Order Management
Getting orders
Orders are pulled from Best Buy Canada automatically and continuously — new orders are picked up, and orders already stored have their status and details kept in sync as they progress. The first run after setup looks back 90 days; after that, each run picks up from where the last one left off.
Best Buy Canada's order lifecycle doesn't map one-to-one onto ours in every case:
- A "closed" order on Best Buy's side doesn't tell us on its own whether it shipped or was cancelled — when that happens, we look at whether the order's lines were refunded to decide which way to record it.
- If a buyer or Best Buy opens a dispute ("incident") while an order is shipping, shipped, or received, the affected order line is flagged rather than the whole order — see Claims below. If the order hasn't been paid yet when this happens, we don't get paid for it.
Order information we store
For every order, Pentagon Connect stores:
- Marketplace order ID, order status, currency, created date, paid date, and delivery-by date
- Buyer email (marketplace-anonymised) and buyer ID
- Billing address: name, phone number, company, country, state, street (2 lines), city, postal code
- Shipping address: name, phone number, company, country, state, street (2 lines), city, postal code
- Carrier, shipping cost, tracking number, tracking URL, and shipped date
- Per line item: SKU, product title, category, item price, quantity, line status, shipping cost, and marketplace fee
- Sales tax, marketplace tax (GST/QST/HST) and our own internal tax are tracked as three separate figures at both order and line level, so different tax views can be reconciled independently
- Order total and any applied discount/promotion amount
Shipping orders
Once an order is accepted and ready, Pentagon Connect pushes carrier and tracking details to Best Buy Canada, then marks the order shipped — both steps run back-to-back as one automated action.
- Carrier matching: the carrier on the order is matched against Best Buy's registered carrier list (see Carriers Supported below) via a priority order: an explicit mapping first, then an account-level default carrier, then — if neither applies — the carrier name and tracking number are still sent through under a generic "Other" carrier so tracking information isn't lost.
- Partial shipment is not supported — Best Buy Canada always ships the full order in a single shipment, even though Pentagon Connect can still record individual line-level shipment detail internally.
- If Best Buy Canada reports an order as already shipped from elsewhere, we still record it as shipped on our side with the shipping details we have, rather than treating that as a failure.
Cancellations
Cancellation is only available for a full order, and only before the customer has been debited for it. Once the customer has been debited, the order can no longer be cancelled outright — a refund is used instead. Cancellation and refund requests are always sent one order line at a time, never batched together, so a single failing line doesn't take down the rest of the request.
Refunds & returns
Refunds are sent per order line, either for the full line quantity or a partial amount, and can include shipping charges when there's shipping tax to account for. Best Buy Canada doesn't structurally separate "refund" from "return" in its reason list, so we label each one accordingly when it's shown to users. Every refund or cancellation needs a resolvable reason code — a default has to be configured for both types, or the request fails outright.
Once a refund or cancellation is sent, the outcome is tracked per line: if everything on the request succeeds, the whole payment is marked complete; if some lines succeed and others fail, the payment is marked partially complete with the failing lines flagged individually; if everything fails, the whole payment is marked as errored.
Claims / incidents
Best Buy Canada's incident/dispute mechanism can be opened by the customer or by Best Buy once an order is shipping, shipped, or received. An incident is tracked per order line rather than as a whole-order status change. What should happen when an order is downloaded for the very first time already showing an open incident was left as an open question in the source material — worth confirming current behaviour before relying on it.
Carriers Supported
Carriers aren't a fixed list we maintain — they're whichever couriers Best Buy Canada has registered on their side, which Pentagon Connect reads live from Best Buy. As of the last check, the registered list included Canada Post, Canpar, Day & Ross (Freight and Same Day), DHL, FedEx, Intelcom, Lettermail, Loomis, Purolator, Scheduled Delivery (LTL), Swiship, Uni Uni, UPS and USPS. A carrier used on an order is matched against that list via our own carrier-mapping table, or an account-level default; if it doesn't match anything registered, the carrier name and tracking number are still sent through under a generic "Other" carrier so tracking information isn't lost. At the time this page was written, there was no way to refresh that mapping table's carrier options directly in the UI — new carriers need to be added manually.
Return & Refund Reason Codes
Cancellation reasons (used before the customer is debited): no response from the shop, out of stock, cancelled or changed mind before shipping, item returned as damaged/defective/wrong, item not received, price discount where the customer keeps the item, chargeback, tax refund, fraud suspicion, shipping fee refund, can't ship to a PO box, pricing error, and a system-generated EDI refund reason.
Return/refund reasons (used after the customer is debited): broken, defective or counterfeit items; damaged packaging; wrong size or colour; missing items; product not as described; and buyer's-remorse reasons such as "don't want it", "don't like it", or "quality not as expected", plus a general "other" reason.
Known Limitations
- No partial shipment — every order ships to Best Buy Canada as one complete shipment.
- No dedicated pause/delete flow documented — the "Closed" flag stops further sync, but a proper delete or zero-stock deactivation flow referenced on Best Buy's side wasn't covered in this documentation scope.
- Vintage condition code is inconsistent in the source material — two different numeric codes appear across the source documents for "Vintage"; "New" is consistent. Confirm the live mapping before relying on it.
- Cancellation is full-order only and only available before the customer has been debited; after that, only a refund is possible.
- First-time orders downloaded already in an open-incident state have unconfirmed handling — flagged as an open question in the source material.
- Carrier list refresh is manual — new couriers Best Buy registers aren't automatically pulled into our carrier-mapping options.
- Standard Mirakl rate limits apply account-wide; exceeding them returns a "too many requests" response with a wait time attached.
Source Materials
This guide was built from Best Buy Canada's Mirakl integration specification documents covering authentication, taxonomy, product and offer creation, price and stock updates, order retrieval, order shipment, and refunds/cancellations.