Question to people using Stripe Connect

I’m about to go live for testing purposes, and having stripe handle the money is very comfortable.

I have a few questions I cannot find an answer to though.

  • when a payment is being made, there is a 7 or 14 day delay until the balance is available on the main account. What happens if an order is marked as complete before the funds are available? Will the transfer be requested when the funds are accessible?

  • when the customer mark the order as complete, stripe connect issues a transfer from the main account to the connected account . Is there any delay in this, for refunds/disputes?

  • When choosing manual payouts. Does the connected account have to ask for a payout through he’s dashboard?

Also I think there is something wrong with the current way HivePress is setup and communicate with Stripe.

In the example below, a vendor has sold a listing twice, and the main Stripe account recieved two payments, each one is on 1000 kr.

However, the ammount reserved for the vendor is only reserved after the order is being marked as complete. (think this behaviour is correct) Order 971 is marked as complete, order 975 is not yet marked as complete. See screenshot below:

Now, the first order is working okay, and should award the main stripe account around 150kr. However, in the meantime, another order has arrived, but the split payment / reservation of the money has not yet occured, since the order is not marked as complete. So when I as a businessowner, want to process the payouts to my business bank account, here is what happens:

payout

All the founds are mixed. The last order is added to the balance available for payout for the business/main stripe account, and there is no way to tell anymore what ammount is for the business and what should be kept for the transfer to the vendor, after the last order is marked as completed also.

This problem would escalate real fast real quick when processing / handling more than two payments, making it impossible to know whats what.

I’m not sure where the issue is. The funds should only be transfered to the vendor after the order is marked as complete, but it should not be available for payouts by the main account. So maybe the entire ammount should be locked until the split payment happens, or that the initial payments should arrive at a different account until the order is marked as complete, and the split payment is done

Thanks in advance.

Hi,

  1. Yes, it’s an issue - in this case there would be a “payout failed” email sent to the site admin, with 5 attempts for the next 5 days (once per day). We plan to fix this in the next update usingthe Stripe’s source_transaction parameter, then it allows triggering a payout even if the funds have not yet arrived.

  2. There’s no delay, it’s assumed that when the customer manually completed the order it’s a confirmation that they’re happy with the result, and no refunds are provided after this. It’s the same with automatic completion if customer simply forgets about the order. For example it works this way on Fiverr, they also show a warning that no refunds will be provided after the order is completed.

  3. Yes, in this case Stripe Connect is not involved at all unless you manage it manually. With manual payouts you can offer any payout methods since all the payouts are requested and processed manually.

Please send more details about the described issue, do you mean that the website doesn’t recognize a Stripe Connect payout processed manually? If so then this feature is not available yet, HivePress triggers a payout for each order completion but it doesn’t fetch and check any other payouts manually made via the Stripe Connect dashboard (not via the website).

Thank you for your time ihor.

  1. What I ment was manual payouts on Stripe, not in the HivePress menu. This relates to the last issue I presented. On Stripe, one can pick two options, either Manual Payouts or Automatic Payouts. Automatic Payouts can occure once a day, once a week or once a month.

Here is my situasion:
I have selected Manual Payout on Stripe, mostly for testing purposes, but this unveiled an issue that concerns me. (I am not sure the same issue occures with Automatic Payouts, but I presume it does).

Stats

  • Vendor has a listing. Cost 1000€
  • Comission is set to 10%
  • I will not mention Stripe fee in example below, to keep numbers clean.

Example 1

  • Customer buys the listing.
  • 1000€ is transfered to the main Stripe Account.

…some time passes

  • Customer accept and completes the order.
  • 900€ is sent to the Vendor
  • 100€ is left in the main Stripe account

…markedplace admin wants to get paid

  • When entering Stripe dashboard on the main Stripe Account, now 100€ is available for transfer to the bankaccount of the business/markedplace.

This is working as expected, but lets see what happens with some more traffic occuring:

Example 2

  • Same situasion as Example 1, but the markedplace admin never processed the payout of 100€.

… new customer comes by

  • the new customer buys the same listing for 1000€
  • 1000€ is being sent to the main Stripe Account.

…now, markedplace admin wants to get paid

  • When entering Stripe dashboard on the main Stripe Account, now 1100€ is available for transfer to the bankaccount of the business/markedplace. This is obviously a problem, because that money does not belong to the markedplace.

I noticed this during tests, and with manual payouts activated. What would happen with automatic payouts activated? I do not know - probably the same thing if an automatic payout was to occure.

Imagine if the markedplace has a lot of trafic. Then it’s impossible to seperate the funds belonging to active orders, and funds that have been split after the completion of an order.

Thanks for the details. If you use Manual payouts with Stripe, then no payouts are tracked on HivePress side, Manual payouts mode (in HivePress settings) means that there’s just a form for sellers where they can submit a payout request, which appears in WordPres/Payouts. Then this depends on which payment services you offer for payouts, the only requirement on HivePress side is marking the payout request as completed.

If you use Stripe Connect then payouts are completely automatic, you don’t have to set these up in Stripe - HivePress notifies Stripe to trigger a transfer when the order is marked as Completed.

You misunderstood me. I am using Stripe, and everything in my post is regarding that. See the screenshots in the first post.

On Stripe, you can choose to automatically process payouts or to manually trigger them. I noticed the issue when initiating payouts manually.

My point is that the incoming funds are not seperated, and is available for payouts (from stripe main account to admin bank account), resulting in insufficient funds when the order is marked as complete and the split payment should trigger.

So if the automatic payout to admin bank account schedule is every week, and the listing takes two weeks to complete, there will be no balance left to be sent to the vendor.

Please read my example again

Please let me know if you use Stripe or Stripe Connect? The example you described has no “Stripe Connect” mentioned so I assumed you’re using Manual payouts (in HivePress settings) with sending payments to sellers via Stripe. There are 2 ways to use Stripe with HivePress Marketplace:

  • If you selected Manual payouts in HivePress/Settings/Payouts, then HivePress just collects payout requests from sellers, these requests appear as posts in WordPress/Payouts. If you offer payouts via Stripe for your sellers and you collect the Stripe email from them somehow, then you have to manually send each payout (by creating a payment in your Stripe dashboard, entering seller details that they provided in the payout request form, etc). With Manual payouts, HivePress it not aware about the payout method you’re using, everything occurs on the payment service side so I can’t suggest anything regarding the payout options you described that are specific to Stripe.

  • If you enabled Stripe Connect payouts in HivePress/Settings/Payouts, then all the payouts are triggered automatically via Stripe Connect platform, when each order is marked as Completed. In this case please don’t create any manual payouts in Stripe Connect dashboard, because they will most likely mix with the automatic payouts triggered by HivePress. Since there’s no way to prevent a payout if the order is marked as Completed and you create a payout in Stripe Connect dashboard manually, payouts may be duplicated.

I am talking about Stripe Connect as a payout system.

So not activating manual payment/payout processing in Stripe Connect, because it breaks the workflow/functionality? That answered some of my question :slight_smile:

Still, I am wondering about this:

Example
Automatic Payouts Schedule is set to Once a Week in Stripe Connect.

  • Customer Buys Listing for 1000€
  • 1000€ is being sent to the main Stripe Connect Account.

… listing is being worked on

  • Weekly Payout is Triggered.
  • Listing is not complete, and the funds have not been transfered to the vendor.
  • That 1000€ is available in the main Stripe Connect Account.

Will these funds be moved to the businessowners bankaccount now?

Reason I ask is because the main Stripe Connect Account seemes to only have one “balance”.
And this balance does two things:

  • Holds the initial payments that are being made when someone buys a vendor’s listing.
  • Holds the remaining ammount (commission) after the listing has been approved and completed, while the rest is transfered to the Connected Account belonging to the vendor.

And here in lyes my concern/question, and what I am trying to test, but having a tough time simulating in the test mode.

To me, these two should be separated. It seemes to not be set up correctly.

1 Like

Thanks for the details, if you mean Stripe Connect payouts enabled in HivePress then I recommend disabling any extra payout features in Stripe Connect because HivePress simply triggers a transfer (payout) from the main Stripe Connect account to a linked Stripe one (set up by vendors via onboarding) for every completed order. If you set up any automatic scheduled payouts or make manual payouts directly via the Stripe Connect dashboard everything may mix up, since HivePress is not aware about these manual or scheduled payouts on Stripe Connect side (so these are not deducted in HivePress).

The automatic payouts processed on stripe connect is by default. It has to be automatic with the option of either daily, weekly or monthly. If not automatic, it has to be set to manual, and then it breaks the transfer/payout function triggered by the completion of the order in hviepress.

So this is by default, and is the only way for the markedplace to withdraw the earned funds (Commission)

Edit* I just confirmed it now by testing.

All the reserved funds for future completion of orders is being sent to the markedplace bank account when the default automation of payouts occures, leaving nothing left for when the vendor actually completes the order and should get he’s share.

Switching from the default automation to manually processing payouts on stripe connect breaks the automatic transfer of funds from main stripe account to connected vendor account on order completion.

So.

  • Default automation doesn’t reserve the money for when the order is complete.
  • Switching to manual breaks the automatic transfer of funds to the connected vendor account upon order competition.

The way hivepress is set up with stripe connect is not working.

Please check if there’s an option to disable these payouts in Stripe Connect, these settings were not mentioned by other users. The only requirement is creating a Stripe Connect account, filling its details and getting an API key. Then HivePress will trigger transfers from your Stripe Connect account to linked vendor accounts (a separate transfer for each completed order). Enabling or setting up any additional payouts per specific time periods in Stripe Connect is not needed, and if you enable these they may mix up with transfers triggered by HivePress.

Maybe these settings related to payouts made by linked vendor Stripe accounts to their bank accounts? For example, when they receive one or more transfers triggered by HivePress and they have some Stripe balance, then they can decide to withdraw these funds, but these settings should be available on the linked Stripe account level, not on the main Stripe Connect account.

I diddn’t activate any additional feature in Stripe Connect - Automatic Payouts is the default behaviour.

Just to get the therminology out of the way, so we don’t misunderstand eachother :slight_smile:

Payments - Occures when a customer buys a listing. The payment is added to the Balance Admin.
Balance Admin - Is the Stripe Balance associated with the owner of the markedplace.
Balance Vendor - Is the Stripe Balance associated with the vendor that has done the onboarding process.
Transfer - Is the process when Balance is transfered from the Balance Admin to the Balance Vendor.
Payouts - The process when funds is moved from Balance Admin to Admin bank account or Balance Vendor to Vendor bank account. This is set to automatic and daily by default. Can be changed to weekly or monthly, or manuel.

Example 1 - Automatic Payouts

  • Someone buys a listing and a payment of 1000 is made and added to the Balance Admin.
  • The Job is quickly done, and accepted by the buyer.
  • A transfer of 800 is made to the Balance Vendor, leaving 200 for Balance Admin.
  • Automatic Payout is triggered according to the set schedule. 200 from Balance Admin is added to the Admin bank account and 800 from Balance Vendor is added to the Vendor Bank account.

Success!

Example 2 - Automatic Payouts

  • Someone buys a listing and a payment of 1000 is made and added to the Balance Admin.
  • The Job is taking longer than the scheduled of automatic payouts.
  • Automatic Payout is triggered according to the set schedule. 1000 from Balance Admin is added to the Admin bank account.
  • Job is approved by the buyer, attempting to trigger a transfer of the 800 from Balance Admin to Balance Vendor. But the funds is not available.

Failure!

Example 3 - Manual Payouts

  • Someone buys a listing and a payment of 1000 is made and added to the Balance Admin.
  • The Job is quickly done, and accepted by the buyer.
  • No transfer occures - The functionality when completing an order in Hivepress does not trigger a transfer of 800 from Balance Admin to Balance Vendor, and this transfer has to be done manually aswell.
  • Keeping track of all the active orders in Hivepress, when they complete, how much each vendor should get to their Balance Vendor is not really an option.

Partly failure due to alot of manual work that would be impossible with alot of vendors!

Yes, if by payouts in Stripe Connect you mean withdrawals from the Stripe balance to the balance owner’s bank account then I recommend using manual payouts there, because Stripe may attempt to make a withdrawal before funds appear on the balance. If there’s an option to give the ability for vendors to withdraw their funds from their linked Stripe account to their bank account please consider enabling this, then they’ll be able to decide whether to collect more funds on they balance or it’s time to withdraw them.

There is no option to have the vendors withdraw on their own, at least from my testing.
*edit - it seemes that the payout schedule for vendors is set to daily, and with a 7 days delay by default. And there is no way to change this from the dashboard. I think maybe it is set during the onboarding? I’m not sure

Payout schedule
Daily — 7 day rolling basis

Also, setting it to manuell breaks the trigger when an order is complete and funds are to be transferred from admin balance to vendor balance within stripe connect. Now I have to process all these transfers manually aswell, which is unbearable.

I will do some more testing, but I can’t help but think something is set up wrong.

*** Update
It seemes that setting the payouts to manuell doesn’t affect the order completion trigger as I first experienced, so this is working as intended.

Still, being able to payout funds that belongs to bought listings that are being worked on can cause some problems. Seemes strange to me that it should be setup in this manner.

Sorry, I can’t suggest anything regarding this because the payouts you describe (from the Stripe account balance to the balance owner’s bank account) are entirely implemented on the Stripe side. These are not integrated with HivePress - it just sends a transfer from the main Stripe account to the linked vendor’s one, and the rest is managed by Stripe.

Great discussion! Very helpful. Was trying the same things as @Seegon

So my questions are using RentalHive for bookings.

  1. When using demo mode in Woo & Stripe is there still the 7 days after I see money in the main stripe account?
  2. In my case the order is “complete” when the guests “checkout”. Triggered by the booking end date. By that time money may, or may not, have been transferred to the main Stripe connect. I think there is no way to overcome the 7 day delay until Woo releases the funds. To fix this you need to hold a “buffer” on your Stripe connect account to make sure the automatic payment to the vendor is successful, right?
  3. @Seegon, so all the money to the main stripe account comes into a single “bucket”. How would we know which parts is commission that we then can “manually” transfer to our bank account? We need to do it manually because when you would configure Stripe to automatically transfer funds daily/weekly it will transfer everything, not only the commission?
  4. About commission. You want only to transfer the commission after is there is no refund possible. So when the order is complete. But you might want to charge the transaction costs even if the booking is cancelled with full refund option.
  5. Usecase; “client” is booking a room, but then has to cancel the booking later. Depending in the terms, only a partial refund is required. The refund should be decided by the vendor and transferred back to the client. But they need the money to transfer it back. For us “the website owner” we have the total amount in our balance. We would forward the money to the vendor minus the commission over the non refundable part. What is the best way to configure this? Put the order to “refunded” might trigger an auto refund to client?

@Seegon, so all the money to the main stripe account comes into a single “bucket”. How would we know which parts is commission that we then can “manually” transfer to our bank account? We need to do it manually because when you would configure Stripe to automatically transfer funds daily/weekly it will transfer everything, not only the commission?

Yes, this is my complaint and issue. Automatic ruins everything because it will not save anything for the clients, and using manual payouts, there is no way to seperate the markedplace balance from the clients balance awaiting a transfer.

As of now, it seemes as if I have to withdraw small chuncks, making sure to have most of the balance on connect

1 Like

I will also do some more testing. So the solution @ihor mentioned for the next update related to your item “1”. That funds can be transferred to a connected account, even if they are not yet arrived. Might this solve some of the problem?

  1. Funds are “pending” on the main account.
  2. Hivepress triggers the correct amount - commission to be transferred to the connected account. From there more control over those funds.
  3. There will be an virtual negative balance on the main account until pending funds are released?
  4. Money sits in the connected account until the vendor moves it to their own account.

let’s consider a client pays $1000 for an accommodation. The money arrives instantly on the Stripe main account but on the “pending” balance. After 7 days the money is released. Client visits the accommodation after 1 month. Hivepress will trigger a Stripe transfer total amount - commission after the booking period ends. Money will be transferred to the connected account for the vendor to “pickup”.
This continues for a while.

After a period you want to collect the received commission from the Stripe main account to your bank account. How to determine how much can be transferred. Is there a report that shows the total amount of commission for completed orders? Might that work? Like in the strip or Woo-commerce dashboard?

@ihor when is the next release that includes that update using source_transaction parameter

Yes, it seems that Stripe needs up to 7 days to transfer funds if you accept payments via Stripe (in WooCommerce) and use Stripe Connect for payouts. Please check the latest Marketplace update (1.3.8), it now references the source transaction when making a payout, so even if there are no funds on the Stripe Connect balance yet Stripe allows to make a transfer since it detects the pending payment.

2 Likes

Thanks. I think the 7 days is not a major issue. It also seems 14 days before the vendor receives it in total. As there is also a 7 day waiting until the payout on the connected account takes place.

In my case, using bookings its less critical. How could I complete the order when the booking starts? Instead of ends? This is also on airbnb. This might be helpful.

Is there also an alternative. I use Stripe as plugin, not Woocommerce payments. It looks great, just wondering.

Yes, but if the booking is within 7 days or less then the payout attempt would be triggered too early, this should be resolved now (with source_transaction).

Unfortunately there’s no way to re-schedule the order completion in the current version, this would require customizations, but we’ll consider adding this as an option.

Sure, you can use Stripe extension instead of WooCommerce Payments.

1 Like