Skip to content

Negotiation & counter-offers

Negotiate B2B prices on Shopify - with a record of every round

QuotWay is built for structured, multi-round negotiation on Shopify: versioned proposals, two-way counter-offers, and an append-only log of every step.

Buyers negotiate quotes in their Shopify customer account - counters and approvals.
Negotiation round-trip - buyer ↔ merchantInteractive demo - sample data
  1. 1

    A buyer requests a quote - right from your store.

  2. 2

    You respond with a proposal - priced your way. (v1)

  3. 3

    Buyers counter directly - no email thread. (v2)

  4. 4

    You counter back within your floor price. (v3)

  5. 5

    Every round is tracked, versioned, and auditable.

Version history

  1. Request received
  2. v1Your proposal$1,290.00
  3. v2Acme’s counter$1,190.00
  4. v3Your counter$1,240.00
  5. Accepted$1,240.00

Built for Shopify merchants who need negotiation, not just quote forms

Most quote apps stop at “submit a form, reply by email.” QuotWay is a real, round-by-round negotiation engine - with a record of every step.

Versioned proposals

Each round is captured as an immutable version, so you always know what was offered and agreed.

Two-way counter-offers

Buyers counter from their account or the buyer portal; you counter back within your floor price. No email thread.

Auditable by design

An append-only event log records the full lifecycle - useful for approvals, disputes, and compliance.

Versioned proposals - a record of every round

Every proposal you send is captured as an immutable version - line pricing, discounts, shipping, and an expiry - so the history of a deal is never in doubt.

  • Line-item pricing, volume discounts, shipping, and an expiry on every proposal
  • Each round is saved as its own version - nothing is overwritten
  • Merchant counter-offers are available on every plan

Two-way counter-offers, no email thread

Negotiation goes both ways. Buyers send counter-offers from their Shopify customer account or the hosted buyer portal, and you counter back - all in one place.

  • Buyer counter-offers are available on Starter and above
  • Buyers can set a requested price at intake (Starter+), which becomes the negotiation's starting point
  • You counter from the QuotWay admin - the buyer sees each new version right away

See exactly what changed, and accept exactly what fits

A price diff between versions shows precisely what moved each round, so both sides negotiate from the same facts - and when the buyer is ready, they answer line by line rather than for the whole quote.

  • Compare any version against the previous one - changes to line price, quantity, discounts, and shipping are highlighted
  • A decision on every line: Accept, Decide later, or Decline, in the Shopify customer account and the buyer portal, submitted together (Professional and above)
  • "Still open" is not "Declined" - a deferred line stays winnable and is labelled as such, and your timeline reads "N accepted · N declined · N still open"
  • Declined lines stay visible, struck through rather than deleted, so the record still shows what was offered

The document says what was agreed, and nothing else

When a buyer accepts part of a proposal, the Confirmation and Pro-Forma PDFs show only the lines they accepted, headed by an Accepted total. A partially accepted quote never produces a document that looks like a whole-quote agreement.

  • An "Accepted items (N)" count and an Accepted total that equals the lines printed beneath it
  • No discount, shipping, tax or grand-total rows implying the whole quote was bought - shipping and tax are confirmed at order creation, and the document says so
  • The Proposal PDF still lists every line, because its job is to record what was offered
  • The buyer's own account states the accepted figure alongside the quote total, so both sides read the same number

Show a line without showing its price

Some lines belong on a quote without a price beside them: freight you're absorbing, a sample you're including, a service already priced into another line. Set that line to Price hidden and the buyer sees "Included" where the figure would be.

  • Per-line control - Show or Price hidden, set line by line in the proposal editor (Professional and above)
  • "Included" appears on the quote, in the buyer's account, in the portal and on every PDF
  • A price-hidden line must be zero, because buyer totals come from the stored quote figure rather than from summing the rows on screen - so a hidden line can't leave a gap that reveals its own price by subtraction

Fix the quote without making the buyer start again

A request rarely arrives exactly right. While a quote is in Submitted, In review or Countered, the proposal editor lets you add lines and remove the ones that shouldn't be there - on every plan.

  • Search and browse your catalog, bulk add by SKU (Professional and above), or add a custom line for something that isn't a product in your store
  • Removal is deliberate - confirm before a line goes, and a quote can never be left with none
  • Every add and remove lands on the quote's timeline, so a line can't appear without a record of where it came from
  • A line you add stays invisible until you send the proposal - before that, the buyer's view is a record of what they asked for

Stay inside your floor price

Set a floor price and your counter-offers stay inside your guardrails - so a fast negotiation never dips below the margin you need.

  • A floor price keeps merchant counters within your limits
  • Pull live carrier shipping rates into a proposal (Starter+)
  • Deposit counters - when a proposal asks for a deposit, buyers can counter the percentage (or propose none) like any other term, fully versioned (Shopify Plus stores, Professional+)

An auditable trail by design

An append-only event log records the full lifecycle of every quote - from request to accepted order - so you have a defensible record for approvals, disputes, and compliance.

  • Every offer, counter-offer, and acceptance is recorded in order
  • Nothing is edited or deleted - the log only appends

Questions, answered

Can buyers negotiate, or just request a quote?

Buyers can negotiate. They submit counter-offers from their customer account or the hosted buyer portal, and you counter back - every round is versioned and recorded. Merchant counter-offers are on every plan; buyer counter-offers are on Starter and above. Each round is captured as an immutable version, so you always know what was offered and agreed.

Can customers propose their own price or make an offer?

Yes. On Starter and above, buyers can set a requested price when they submit a quote, which becomes the negotiation's starting point, and they can send counter-offers from their account or the buyer portal. You counter back within a floor price you set, so the back-and-forth stays inside your guardrails. Every offer and counter-offer is recorded as a versioned proposal.

What happens when a quote is accepted?

The accepted quote becomes a real Shopify draft order with the negotiated prices. You can accept an entire quote or just selected lines, and split a quote into multiple orders. Partial line-item acceptance and split conversion are on Professional and above; converting an accepted quote to a draft order is available on every plan.

Can a buyer accept only some items on a quote?

Yes, on Professional and above. Every line of a sent proposal carries its own decision - accept, decide later, or decline - in the Shopify customer account and the hosted buyer portal, submitted together. Only the accepted lines convert to a Shopify draft order. A line the buyer deferred is reported as still open rather than declined, because it is still winnable, and a declined line stays visible on the quote rather than being deleted. The Confirmation and Pro-Forma PDFs cover exactly the accepted lines, under an Accepted total.

Can I hide a price on one line of a quote?

Yes, on Professional and above. Set a line's buyer visibility to Price hidden and the buyer sees “Included” where the figure would be - on the quote, in their customer account, in the portal and on every PDF. A price-hidden line must be zero, and that restriction is the point: buyer-facing totals come from the stored quote figure rather than being summed from the rows on screen, so a hidden line can never leave a gap that reveals its own price by subtraction.

Win more B2B deals with real negotiation

Add QuotWay and turn back-and-forth pricing into a structured, recorded negotiation that closes in Shopify.

Free Lite plan · 14-day trial on paid plans · Works with Shopify Plus

We’d like to set analytics cookies to understand how the site is used. They’re not required — declining changes nothing about how the site works, and you can change your mind any time on our privacy page.