Skip to main content

How reverse price negotiation transactions work

Learn how reverse price negotiation transactions work for customers, providers, and operators.

Yifan Dong avatar
Written by Yifan Dong
Updated this week

A reverse price negotiation transaction allows customers and providers to negotiate a custom price based on specific agreed-upon details within a transaction.

Whereas in “regular” marketplaces, providers create listings, and customers browse, select, and purchase products or services, in a reverse marketplace, these roles are flipped:

  1. Customers create listings describing what they need.

  2. Providers review these listings and submit offers with their proposed price and details.

  3. The customer reviews the offers, submits counter offers, selects one, and completes the payment.

This transaction type is especially useful for marketplaces where customers:

  • Want to receive multiple offers from different providers.

  • Prefer negotiating details and pricing rather than booking a fixed service.

  • Don’t want to spend time browsing through each listing individually.

Examples include marketplaces for freelancers, contractors, or creative services where project details and pricing vary based on the final agreed-upon details and complexities.

The price negotiation process cannot be combined with listings that use availability (bookings) or stock (purchases of physical items). However, this can be enabled through custom coding. Learn more about custom coding.

You can enable the reverse price negotiation transaction by creating a new Listing Type in your Console, Listings → Listing type. When setting it up:

  • Choose the “Price negotiation” transaction setting.

  • Select the “Reverse” negotiation flow.

All listings created with this Listing type will automatically follow the reverse price negotiation process. The next sections of this article explain the different stages of this reverse negotiation process for customers, providers, and marketplace operators (admins).

Reverse price negotiation workflow and user experience

By default, listings that use the Reverse price negotiation process display a “Submit an offer” button. You can customize this button text through the Marketplace texts feature. For example, you might change the “Submit an offer” to “Provide a quote” or “Bid on the request”.

The reverse price negotiation process is designed for reverse marketplaces, so the user roles work the opposite way compared to a regular marketplace.

In this setup, providers perform actions typically performed by the demand side of the marketplace: they perform a search for listings and initiate transactions by submitting offers.

Customers, on the other hand, create listings about their requests or needs, then receive offers through them. This means the transaction begins when a provider responds to a customer’s request, rather than when a customer books or pays a provider’s listing. Here are the overall stage in the transaction:

  • Submitting the offer

  • Customer reacting to the offer

  • Provider reacting to the counter offer

  • Offer is accepted and paid

  • Delivering the order

  • Requesting changes

  • Accepting the order and review

Customer and provider views, possible actions, and next steps at each stage are described below.

Submitting the offer

The first step in the reverse price negotiation transaction begins when the provider submits an offer on the customer’s listing. After clicking “Submit an offer,” the provider is taken to the Offer page. Here, they must:

  • Enter a quote price.

  • Add additional details about their offer in the text box.

To submit an offer, the provider must have already added their payout details and completed Stripe onboarding verification. If this requirement is not met, the provider will see a message reading: “To submit an offer, you need to add your payout details.” Once payout details are added and the verification is complete, the provider can successfully click “Submit the offer.”

After submitting, the provider is redirected to the Transaction page, where they can view the transaction details, send follow-up messages or withdraw their offer if needed.

Submit offer GIF

Customer reacting to the offer

After a provider submits an offer, it must be reviewed and responded to by the customer (the listing author). Customers can view all offers from providers on their Inbox page. Offers that have not yet been responded to will appear with the status “Offer pending.”

Offer pending status

When the customer opens the Transaction page, they can view the quoted price and the message submitted by the provider. At this stage, the customer has three options:

  • Accept and pay: This option takes the customer to the checkout page, where they can complete the purchase by entering their billing details and paying with a credit or debit card.

  • Reject offer: This ends the transaction immediately. Once rejected, no new offers can be made for that transaction. Follow-up messages can still be sent.

  • Make a counter offer: This allows the customer to propose a new offer amount. A counteroffer can also be withdrawn by the customer after it has been made.

Transaction page after receiving an offer

Provider reacting to the counter offer

After the customer makes a counter offer, the provider will see the transaction listed in their Inbox page with the status “Counteroffer.”

Counter offer label

When the provider opens the Transaction page, they can view the counter offer amount and any message the customer included with it.

At this stage, the provider has three options:

  • Accept counter offer: This sends the decision back to the customer, who must then respond to the provider’s acceptance. The customer will again have three choices: Accept and pay, Reject offer, or Make a (new) counteroffer.

  • Reject counter offer: This ends the transaction immediately. After rejection, no new offers can be made.

  • Make a new counteroffer: This allows the provider to suggest a counter offer to the customer’s own counter offer. In this case, the customer will also again have three choices: Accept and pay, Reject offer, or Make a (new) counteroffer. The provider can also withdraw their counteroffer after it has been made.

Provider reacting to counter offer

Note: If either the customer or provider withdraws an offer or counteroffer by clicking the Withdraw button, the transaction will end and will no longer move forward. After an offer is withdrawn, neither party can submit new offers. However, they can still send messages on the Transaction page to continue communicating if needed. An offer can be withdrawn by the user who made the most recent offer, or by the provider if they have already accepted a counteroffer from the customer.

Offer is accepted and paid

Once the customer is happy with the offer, they can click on “Accept offer”. Doing this redirects to the checkout page, where the customer needs to enter their payment and billing details to pay for the order.

Delivering the order

After a customer has paid for the order, the provider needs to deliver the agreed-upon order for the service or product. To confirm delivery of the order, the provider needs to click “I’ve delivered the order” on the Transaction page once the work is completed.

If the provider does not click “I’ve delivered the order” within 75 days, the transaction will be automatically canceled, and the customer will receive a refund.

Requesting changes

After the provider clicks “I’ve delivered the order,” the customer has the option of requesting changes to their order by clicking “Request changes” on the Transaction page. Doing this opens a text box where the customer needs to specify what changes they want the provider to make.

Once the customer requests changes, the provider needs to view the feedback and make the necessary updates. After completing the revisions, the provider clicks “I’ve delivered the changes”. The customer can then review the updated delivery and either accept it or request more changes if further adjustments are needed. This exchange can continue until the customer is satisfied and accepts the final delivery, though there is a limit to how many times changes can be requested (more on this below).

If the customer does not take any action within 14 days, after the provider clicks on “I’ve delivered the order,” the transaction will automatically be marked as completed, and the payout to the provider will be triggered. The customer will receive one reminder email about this if they haven’t reacted to the initial deliverable in 5 days.

Accept order or Request changes

Accepting the order and review

Once the customer is satisfied with the provider’s delivery, they can click “Accept order.” This action triggers the payout to the provider and moves the transaction to the review stage.

At this stage, both the customer and the provider can leave a review for each other, sharing feedback about their experience. Each review consists of 5 stars and free text. Reviews can be left up to 7 days after the payout has been triggered. Reviews are published at the end of this period or once both users have reviewed each other. Learn how reviews work.

Viewing and managing the transaction as an Operator

Once a provider submits an initial offer, a corresponding transaction will appear under Console → Manage → Transactions.

Each submitted offer is listed as a separate transaction.

The most recent price or quote offer (including counteroffers) can be viewed in the Summary section, under the “Customer pays” field. This field always displays the latest offer amount made by either the provider or the customer and updates automatically if new counteroffers are made or if the final payment price changes.

The message sent by the provider when submitting their offer can be found in the Protected data section, under providerDefaultMessage. Additional messages sent by both parties are in the Activity section.

Below is an overview of the actions available to marketplace operators (admins) at each stage of the reverse price negotiation process.

During the Offer Stage

After a provider submits an offer, the operator can reject the offer on behalf of the customer by clicking “Operator reject offer.”

After a customer submits a counteroffer, the operator can reject the counteroffer on behalf of the provider by clicking “Operator reject from customer counter offer.”

If the provider makes another counteroffer, the transaction returns to the same stage as before. In this case, the operator can again click “Operator reject offer.”

After Offer Acceptance

After the customer accepts and pays for an offer, the operator can:

  • Cancel the transaction by clicking “Operator cancel.”

  • Mark the order as delivered on behalf of the provider by clicking “Operator mark delivered.”

If the provider does not mark the order as delivered within 75 days, the transaction will be automatically canceled, and the customer will be refunded.

Note: The 75-day countdown starts when the customer makes the payment and continues throughout the entire delivery and revision process. This means the countdown does not reset when the provider delivers the order or when the customer requests changes.

The reason for this is that Stripe can only hold funds for up to 90 days after payment. Since the customer has up to 14 days to review or respond to an order delivery, the remaining 75 days are reserved for the negotiation and delivery phases.

The provider also receives a reminder email after 72 days if the transaction is still open, prompting them to mark the order or changes as delivered before the deadline.

After order delivery

After the order is marked as delivered by the provider, the operator can:

  • Accept the order by clicking “Operator accept deliverable.”

  • Cancel the order by clicking “Operator cancel from delivered.”

  • Request changes to the order by clicking “Operator request changes.”

If the customer does not respond within 14 days after the order is delivered, the transaction will be automatically completed, and the payout to the provider will be triggered.

After a Change Request

After changes have been requested by the customer, the operator can:

  • Cancel the transaction by clicking “Operator cancel from changes requested.”

  • Mark the changes as delivered by clicking “Operator mark changes delivered.”

When the operator marks changes as delivered, the process returns to the previous state, where the same three actions are available again:

  • Accept the order (Operator accept deliverable)

  • Cancel the order (Operator cancel from delivered)

  • Request changes (Operator request changes)

After the Order Is Accepted

Once the order has been accepted, the review period begins. During this time, both the customer and the provider can leave a review for each other. The operator cannot leave a review on behalf of a user, though reviews can be edited later after they’re published.

Transaction Transition limit and considerations

A transition refers to a state change in the transaction. For example, submitting an offer, making a counteroffer, requesting changes, or delivering the order.

Below are the limits about Transaction Transitions you should be aware of:

  • Each transaction in the reverse price negotiation process can have up to a maximum of 100 transitions in total.

  • Up to 50 transitions can take place during the offer and counteroffer stage. This means the customer and provider can negotiate the offer up to 50 times before an offer must be accepted or rejected. After this, new offers will not be allowed.

  • When the transaction reaches 90 transitions, the system prevents further “Request changes” actions to ensure it does not exceed the 100-transition limit. The remaining 10 transitions act as a buffer to move the transaction toward completion.

Below are two concrete examples:

  • If 50 transitions occurred during the negotiation stage (offers and counteroffers), there would be room for about 20 change requests by the customer and 20 corresponding deliveries by the provider after payment. This totals 40 additional transitions, bringing the transaction to around 90 transitions.

  • If 30 transitions occurred during the negotiation stage, there would be room for about 30 change requests by the customer and 30 corresponding deliveries by the provider after payment. This totals 60 additional transitions, again bringing the transaction to 90 transitions.

Did this answer your question?