Seasons and events
Before BFCM: Audit Conflicting Discounts and Price Promises

Before launching overlapping Black Friday offers, reconcile what each customer group is being promised with what checkout will actually charge. Early-access pricing, later markdowns, discount codes and price-match assurances can create different expectations for the same product. The operational problem is the gap between those expectations and the purchased offer.
This audit focuses on that gap. It is not a tutorial for configuring a particular discount app. Shopify's discount-combination documentation provides the platform rules to check when testing the actual configuration.
Build a promise register before testing prices
Collect the words customers can see across email, landing pages, product pages, social posts and support replies. Record the audience, applicable products, start and end conditions, exclusions and any promise about a later lower price. Include messages scheduled to remain visible after a promotion changes.
The same percentage can mean different things. “Twenty percent off this collection” describes a defined set of products. “Your best price of the year” makes a broader claim about comparison over time. A working code proves that a discount can apply; it does not establish that the broader claim is accurate.
For each promise, name the person who can resolve an ambiguity. Marketing might own the campaign language, while finance owns a discretionary adjustment limit and support owns communication. The audit needs one approved interpretation that those teams share.
Do not silently rewrite history after finding a conflict. Preserve what was actually displayed to existing buyers, correct future messaging and determine how affected purchases will be handled. A later screenshot of corrected language cannot show what an earlier customer saw.
Test the combinations that create disagreement
Use a small scenario matrix rather than testing only the featured product with the main code. Include an existing customer, an early-access customer, a mixed basket, a sale item, a partially returned basket and a customer who buys immediately before an offer changes.
For each scenario, record the advertised expectation, checkout result and approved explanation. A result can be technically correct and still expose contradictory marketing language.
| Scenario | Question requiring one answer |
|---|---|
| Early access followed by a lower public price | Was any price-protection promise made? |
| Product discount plus an order code | Which combinations were promised and configured? |
| Free shipping above a threshold | Is the threshold evaluated consistently with the offer wording? |
| A returned item from a discounted basket | What happens to the remaining purchased offer? |
| A campaign ends during checkout | Which timing rule was communicated and applied? |
Use authorized test methods and record the configuration that produced each result. Do not infer the checkout behavior from a campaign spreadsheet alone. Shopify's broader BFCM preparation checklist is a useful source for locating this work within the launch plan.
Work through a hypothetical price conflict
Suppose a fictional store sends early-access customers an offer described as “our best BFCM price.” A customer buys a USD 100 product for USD 80. Three days later, a public promotion sells the same product under comparable conditions for USD 75.
The five-dollar difference is not the only issue. The merchant needs to compare the earlier wording, the products and conditions, and any applicable adjustment promise. A support response that merely says “discounts change” ignores the actual statement that influenced the purchase.
Now change the facts. Suppose the earlier offer clearly promised early access to limited stock, without a best-price assurance. The later price difference remains real, but the promise being evaluated is different. The customer may still request an adjustment; the merchant should distinguish a discretionary commercial decision from an entitlement it previously represented.
Record the finding in a decision note: “Comparable item and purchase conditions verified. Earlier message contained a best-price statement. Campaign owner has approved the following treatment for the affected cohort. Support will use the same explanation and record the order-level outcome.”
This hypothetical note does not establish a universal legal remedy. It shows the facts and approval that should precede a consistent response. Obtain appropriate review where the wording or jurisdiction creates a legal question.
Approve decisions that support can execute
A campaign rule is incomplete if support cannot tell which orders it covers. Define the affected purchase period, product eligibility and evidence of the original offer. Decide who can approve an exception and what happens if the customer already has an open payment dispute.
Use a response model that acknowledges the actual issue:
“We reviewed the offer shown when you ordered and compared it with the later promotion. Your purchase falls within the group covered by our adjustment decision. We will explain the approved amount and payment status before confirming completion.”
If the order does not qualify, explain the specific difference without inventing an exclusion that was absent from the earlier promise. A clear refusal grounded in actual terms is more useful than an automated reply that repeats an unrelated policy.
For any existing dispute, verify the processor's available action route before issuing a separate financial adjustment. Shopify's dispute-reason guidance helps distinguish amount, credit and product complaints; the campaign team should not assign its preferred label to the customer's allegation.
Close the audit with evidence of consistency
Before launch, require agreement among the final campaign language, checkout test result and support decision sheet. When a promotion changes, update all three together. Keep an archive of the previous version for purchases made under it.
After the campaign, examine complaints against the actual promise version, not just the code used. Several codes can belong to one confusing promise, and one code can appear in several differently worded messages.
The useful outcome is a campaign in which the merchant can explain why a customer paid a particular amount and how any later adjustment request will be handled. That clarity starts before the first promotional order.
Review dispute reasons in Lower Chargeback when checking campaign-related complaints.
Related reading in this collection:
- BFCM Chargeback Readiness: Run a Peak-Volume Stress Test
- Unexpected Shipping, Discounts, or Fees: Audit the Final Shopify Order Total
- Before Summer Heat: Rehearse a Perishable-Order Incident