Marketplace Payment Processing: How to Manage Payments & Prices

Marketplace payments are a critical part of your product, especially since most platforms take a cut of the transactions between buyers and sellers. This section focuses primarily on executing payments that go with the transaction -- depending on your business model, you may also have payments in other areas of the app, like subscriptions or posting fees. There are many things to consider when it comes to payments on your platform which are outlined below. 

How is the price determined?

The price for a transaction may be determined at different points in the process, so we talk about the mechanism here as part of payments as that is when it will come into play. There are several ways pricing can be determined.

Seller sets the price

Here sellers set their prices as they post their offerings, and buyers are price-takers. This is the most common option for any marketplace with differentiated offerings and goes along with the “buy now” transaction process. It combines customization and control with efficiency since there is no negotiation. One thing to keep in mind here with physical goods is that shipping may be calculated by the app while the actual price of the offering is taken from the seller. Calculating shipping is usually driven by the origin and destination, and can either be eaten by the seller or charged to the buyer. If passed through to the buyer, it’s helpful to be able to calculate in real-time so as not to disrupt the buyer completing their purchase directly. Integrating with a tool such as Shippo can help streamline this.

Platform sets the price

In this model, the app determines the price automatically. This could be with fixed variables for marketplaces where different sellers are offering the same thing, or dynamic based on variables such as time, distance, demand, or quantity. Uber uses this dynamic model -- the price is determined before you hail the car. It’s useful if the offering is commoditized and sellers are interchangeable, since they are price-takers.

Buyer proposes price

Here buyers post a request with a specific price offer, and the first seller to take the offer (or the selected seller from multiple takers) will receive that amount.

Seller proposes price

When sellers respond to a buyer request with bids that include prices (typically for services), the buyer chooses a bid and that determines the price.

Buyer bid accepted

Auction sites like eBay are 2-sided platforms, where multiple bidders make offers for an item and the winning bid sets the price.

Negotiated price

When there are a number of moving variables in a complex transaction, typically the two sides will connect first and discuss the terms of a potential transaction including pricing. Here the price may be determined by either side (e.g., through in-app messaging).

When does the payment happen?

Payment timing is typically about peace of mind for both buyer and seller. Transactions between strangers require trust that the other will fulfill their end of the deal, so buyers are reluctant to pay before confirming the value and sellers are equally reluctant to fulfill without their cash. In the buyer’s case, they can either pay the seller directly through the platform, or can pay the app or into an escrow service. There are a few ways to navigate this.

At the point the transaction is initiated

The most common timing is to charge the buyer when they buy or book the transaction. This is simplest to execute and ensures that the cash is there for the fulfillment process to start. In the case of a cancellation the platform will need to refund the amount, which is typically easy through a payment platform like Stripe.

When a cancellation window closes

In some industries it is more customary to reserve without paying and then pay when a cancellation window closes, such as 48 hours before the start of the reservation. This requires the platform to put a hold on the user’s credit card (which often has a 7-day limit) or take on some risk in assuming the card will be valid when charged (and assuming canceling the transaction if not). This adds some complexity so generally only go this route when needed to ensure trust.

In installments

For custom services or gigs, sometimes the platform will use milestone-based payments. This might mean a certain percent up-front to start the process, payments for any number of milestones, and the rest upon completion. This helps to align incentives and create trust by turning one transaction into multiple (so buyer/seller build some history together). The downside is complexity, since now a single price turns into multiple. Usually it’s best here to either set the schedule at the platform level or let the seller invoice the buyer free-form anytime so they set their own timing.

After the transaction is fulfilled/confirmed

Withholding the entire payment until after the transaction is completed (and confirmed by the seller or both seller and buyer) is the most conservative approach and not very common. It might make sense in cases where the buyer has the power and won’t accept paying before confirmation.

Buying credits

When transactions are small, it might not make sense to charge the buyer for each one. Payment processors often take a fixed fee per transaction (e.g., $0.30), so if the purchase is only $1, that’s 30% of the transaction gone. These platforms often use credits for purchases, where the buyer can buy credits up front at pre-set levels and then spend them on the platform. This approach is also nice because the platform front-loads payments so gets more working capital. The risk is that it requires someone to commit to purchasing multiple of something before they are confident they want it.

What payment formats are accepted?

The format of payment can often play a role in creating a smooth experience for each side. Platforms can choose to accept multiple options, but it can be costly and create inconsistent flows. Below are the most common options.

Credit / debit cards

This is the most common option, and is great because everyone has them, buyers like earning points, and it’s easy to save details through most payment providers. Fees are typically $0.30 + 3% per transaction, so a bit steep especially for small transactions. Payments take longer to clear for the seller too.

ACH / bank transfer

This allows for smaller transaction costs on large purchases (e.g., fixed $15 per transaction, where a $1k transaction would be $30 for a credit card). These systems often require bank verification as a separate step, which can be provided by a separate company called Plaid.

PayPal / Venmo

These platforms offer their own trusted payment gateway and play into wallets people have, and typically have very simple integrations.

Seller proposes price

When sellers respond to a buyer request with bids that include prices (typically for services), the buyer chooses a bid and that determines the price.

Apple / Google Pay

Same as above, but they are also supported by Stripe and other payment providers.


Newer platforms may want to support bitcoin and other cryptocurrencies. You can integrate with crypto wallets to collect payment.


In some cases it can be important to support offline transactions and add their details into the platform (e.g., if sellers are keeping track of their whole process using the platform). Cash may be needed in marketplaces where products aren’t federally legal such as with cannabis.

When do sellers get their payouts?

Similar to the buyer side, sellers need their payments to come through at a time that builds trust. Buyers will always provide the money first, but a seller may receive that money at different times. This will also play a part in when you as the platform receive your payment, as it is likely you will be taking a portion of the transaction fee. This is commonly done by splitting the payment and sending or allocation one portion to the seller and some percentage to the platform. Below are the different timings for when this can occur. 

Instantly from the buyer

The simplest option is to pay sellers right when the buyers make their payment. Payment providers call this a “marketplace” payment type, where funds can be sent directly from one side to the other (with a split for the transaction fee), and it’s the most common timing to reduce any liabilities from the platform in holding funds.

Per transaction on a delay

Another common option is to hold buyer funds within the app, and then pay them out to the seller after a certain point in the fulfillment process. This might be a set number of days after an event (to make sure there were no complaints) or after fulfillment is completed. This delay allows the platform to play a role in bringing trust to the transaction -- you can take funds to initiate the process, and pay them out to close the process. The delay does introduce more complexity to the app logic and requires the app to hold funds, which can introduce liabilities.


Sometimes it makes sense to batch seller payments into a single amount on a set schedule such as weekly or monthly. This can be a clean approach, but requires your app to setup a separate logic to govern the payouts. When using a payment provider like Stripe, this foregoes the prebuilt “marketplace transactions” to go from buyer to seller and instead requires a more custom setup.

After hitting a threshold

If your transactions are small, you may want to wait to pay out until the seller reaches a certain dollar amount threshold in their “bank”. This can help you reduce fees and encourage sellers to make more transactions.


A variation on the option above is where funds are held as credit until the seller chooses to cash them out. This gives the platform some additional working capital, and credits could even be used to purchase other items on the platform as a buyer if users can play both roles (e.g., I sold my old couch and used the credit to buy someone else’s desk).

How do you handle payment delays? 

In cases where the platform has a delay between buyer payment and seller payout, there are several mechanisms the app can use to bridge the gap and preserve trust.

Credit card hold/authorization

The app can authorize a credit card payment before executing the transaction at a later date. This puts a hold on the card (i.e., preserves space within the card’s limit) to make sure the charge can be made at a later date. This is a simple and effective approach, but has a 7-day time limit in most cases. That means it’s not best for reservations that might be well in advance, and works better for transactions where you want to wait a few days to make sure there are no complaints.

Holding the funds directly as the platform

The platform can take payments and hold them directly, either in their bank account or in a payment platform account like Stripe, for payout later. This can be a good approach but may have some legal/accounting implications, and increases your liability to remember and follow through on the transaction’s rules for each payment.


There are specific services for creating escrow accounts to hold funds in. These accounts have specific legal provisions to confirm when payments should flow through. These are used when the transaction amount is large, there is a delay between when someone claims the item or service and when it is fulfilled, and both sides need assurances that they will get what they want.

How to choose your payment provider?

Payments and processing transactions is a complex process behind the scenes. Entire companies have been built just to handle this part of the process for other platforms and merchants. Even companies as large as Amazon use tools like Stripe to handle their payments. All payment providers have some sort of API documentation to integrate with sites and differing levels of pricing. 

In terms of payment providers, Stripe is one of the best and most commonly used options out there. They have large geographic reach and a wide array of features that ensure broad applicability. Most of the time, you’ll want to handle both payments from your buyers and payouts to you at the same time, using a product like Stripe Connect. They have multiple integration options described here, though Express is the most commonly used for marketplaces as it’s relatively easy to integrate, is flexible, and allows for fast supplier onboarding. You can specify how much of the transaction should flow to you, the marketplace, and how much should go to the seller. Regardless of what you choose, however, there are a number of factors to consider when making your payment processing choice.

Transaction calls needed

Each transaction tool will support specific API “calls” or actions. You need to make sure the actions you need are covered by the tool or it’s a non-starter. For example, if you are collecting a cut of the transaction fee, you should make sure your payment provider can split the payments and pay another user rather than just the app. If you need subscription functionality, make sure that is supported as well.


Geography is very important for payment providers, as regulations and systems are different across the world. The key is to make sure your country is supported by your provider. If you expect to have sellers around the world, make sure that their country is supported for payouts from your provider. While we usually use Stripe when we can, we sometimes use regional providers that are more common in select countries, or PayPal for its 200+ countries.

Transaction size

If you expect large transaction amounts, you may need to allow for bank transfers to limit credit card fees or in the case a credit limit is too low. If you have small transaction amounts, you may want to consider batching payouts so that you only send money after a certain threshold is reached to reduce fees.


Some platforms have much cleaner and well-supported documentation for developers or plugins. This can make it much easier to both integrate and troubleshoot and save you a lot of time during the setup process. You should check if the documentation looks thorough and recent.


Different providers have different pricing options. Some charge monthly fees, others charge only per transaction. Many will offer discounts for startups or new companies, or you can try talking to the sales team to get a good deal.

No items found.