We will research and discuss both solutions with the team. But as I see both of them need to deal with payments. The thing is we don't want to keep Seller's crypto and deal with security issues. We want a solution that will automatically transfer crypto from Buyer to Seller and our platform taking 2-4% commission.
You may want to reassess what you are doing, and how you go about doing it. If you are not offering any type of escrow and it's a simple we take x% and they take the reset without any checks in place to make sure the seller actually sends the buyer their items your platform will be filled with scammers in a heartbeat.
You will need to have the payment go to your account first before sending it to another account, I do not believe there is anyway to breakup a transaction automatically to send part to you and part to another person in a buy/sell type situation handled automatically on a website. Other than saying send this % to address1 and this % to address2 which is not very customer friendly.
Customer will send your website the full amount
A script on your site will do the division and send
x% to your sites cold wallet
y% to your sellers address
If this is processed immediately nothing forces the seller to provide anything to the buyer, they already received their payment and can easily scam. The buyer will be pissed at your company more than the seller fr not having any protections in place.
BTCpayserver has a "store" functionality where you can run a node and let others sign up input their own address creation information and use your daemon / processor, it's open source so I guess you could branch it to let sellers do something like that but pull it in to your main account first. (seems like a lot of extra work)
I really think that what you are doing is getting over complicated.
The easiest way is seller makes a post, buyer agrees to pay and sends money to you (you act as an escrow). Your server generates payment instructions which the buyer pays and your webserver handles the payment notifications, once payment is accepted you tell the seller to ship. The seller ships and when the buyer receives they mark the order as paid. If the buyer marks the transaction as all clear a script on your webserver runs to send payment to the sellers BTC address that you have on file. If the buyer has an issue they can work with you and the seller to rectify it. BTCpayserver can handle this extremely easily (the you getting paid and notifying your webserver/database that an invoice was paid). You would then need to do the coding for your specific case of when things get triggered and how that process is handled (ie no customer balances, but customers have a pending status that once the order is complete the coins are sent). All btcpayserver does is generate invoices and monitors the addresses/invoices and notifies you when the status updates.