PricelistQtyBreak¶
The PricelistQtyBreak push sets quantity price breaks on a B2B price list: a lower unit price for a variant once an order reaches a quantity, such as £9 each from 10 units. Each row sets one break.
On a push connector, select PricelistQtyBreak as the Shopify Import Type. The push sends the rows through Shopify's quantityPricingByVariantUpdate mutation, 250 to a request. It needs a store with B2B.
A break needs a fixed price for its variant on the same price list. Push the fixed prices with Pricelist first. Shopify refuses a break whose variant has no fixed price.
Records¶
| Record | Under | One for each |
|---|---|---|
| Pricelists | price list | |
| QtyPriceBreakItems | Pricelists | quantity price break |
The Pricelists record finds or creates the price list exactly as on the Pricelist push.
Breaks¶
| Field | Rule |
|---|---|
QtyBreakToAddVariantId |
The variant, as a numeric id or a gid |
QtyBreakToAddMinimumQuantity |
The quantity the break starts at |
QtyBreakToAddAmount |
The unit price from that quantity |
QtyBreakToAddCurrencyCode |
The price's currency. It must be the price list's currency |
A variant and a minimum quantity identify a break.
Update Operations¶
| Update Operation | Effect on the price list |
|---|---|
| Insert, Update, Insert/Update | Adds each row's break. The variant keeps its breaks at other quantities |
| Synchronise | For each variant the rows name, removes its existing breaks, then adds the rows. Each variant with a fixed price but no rows loses all its breaks. Fixed prices stay as they are |
To change a variant's breaks, use Synchronise and push all of its breaks. Give each price list one Pricelists record.
Batches and Errors¶
Batches and errors work as on the Pricelist push. Shopify's refusals include:
- a break whose variant has no fixed price on the list;
- two rows in one request for the same variant and minimum quantity;
- more breaks on a variant than Shopify allows.
Bulk Operations¶
With Use Bulk Operations on, IMan sends the run through Shopify bulk operations. It sends the Synchronise removals of the named variants' breaks first, then the breaks, then the other removals. When two rows set the same break, the later row wins. When IMan can't remove a variant's existing breaks, that variant's rows fail unsent.
Access Scopes¶
The push needs write_products, and write_publications when it creates a catalog. See Access Scopes.
Shopify Reference¶
quantityPricingByVariantUpdate in Shopify's GraphQL Admin API reference.