Stripe Connect for WordPress Marketplaces: WP Sell Services Pro Setup Guide
Stripe Connect is the payment infrastructure backbone for multi-vendor WordPress marketplaces. This guide covers Stripe Connect vs Standard, Express vs Custom account types, automated payouts, platform fee configuration, 1099-K compliance for US platforms, and the complete WP Sell Services Pro Agency setup process for Stripe Connect.
Stripe Connect vs Stripe Standard: The Core Difference
Standard Stripe is a merchant account for a single business. You collect payments, and Stripe deposits the full amount minus fees to your bank account. Stripe Connect is a platform account that allows a single Stripe integration to route payments to multiple connected accounts (your vendors) while retaining a platform fee. For a service marketplace, Connect is not optional – it is the only legal architecture for paying vendors their share of each transaction.
Without Connect, collecting money from buyers and paying vendors is legally operating as a money transmitter, which requires a separate license in most US states and equivalent licenses internationally. Stripe Connect provides the licensed infrastructure so that you do not need that license yourself, as long as you are using Connect as intended and not holding funds.
Express vs Custom Stripe Connect Accounts
Stripe Connect offers three account types for connected vendors: Standard, Express, and Custom. WP Sell Services Pro Agency supports Express and Standard.
| Account Type | Onboarding UI | Dashboard Access | KYC Responsibility | Best For |
|---|---|---|---|---|
| Standard | Full Stripe signup | Full Stripe dashboard | Stripe | Established businesses |
| Express | Hosted by Stripe, customizable | Express dashboard only | Stripe | Most marketplace vendors |
| Custom | Fully custom, built by platform | None (platform builds it) | Platform | Enterprise, high control |
For most WP Sell Services deployments, Express accounts are the right choice. Stripe hosts the KYC (Know Your Customer) identity verification flow, which includes identity document collection, bank account verification, and fraud screening. Your vendors complete onboarding on a Stripe-hosted page that matches your brand colors and name, and you never handle the sensitive documents yourself.
Setting Up Stripe Connect in WP Sell Services Pro Agency
WP Sell Services Pro Agency includes the Stripe Connect module. Setup steps: create a Stripe platform account in the Stripe Dashboard (separate from your existing Stripe merchant account if you have one), enable Connect in your Stripe account settings, create OAuth app credentials (client ID and secret key), and enter them in the WP Sell Services payment settings.
The vendor onboarding flow after setup: vendor clicks “Connect with Stripe” on their vendor dashboard, Stripe’s hosted onboarding page opens, vendor completes identity verification and bank account setup, Stripe returns the vendor to your site with a connected account ID, WP Sell Services stores the account ID against the vendor profile. Subsequent payouts reference this account ID automatically.
Platform Fee Configuration
Platform fees in Stripe Connect are configured as an application fee on each charge. WP Sell Services Pro Agency maps your commission percentage setting directly to Stripe’s application_fee_amount parameter on the payment intent. The fee is collected at transaction time and deposited to your Stripe account, while the remainder goes to the vendor’s connected account.
The charge flow: buyer pays the full order amount to your Stripe platform account, Stripe immediately transfers the vendor share to the connected account minus the application fee and Stripe’s processing fee. Stripe’s processing fees (2.9% + $0.30 for card payments) come out of the total before the split, or you can configure the platform to absorb Stripe fees and keep the commission percentage clean for vendor accounting.
Automated Payouts: Timing and Configuration
Stripe Connect Express accounts receive automated payouts to their connected bank accounts on the schedule they configure in the Express dashboard (daily, weekly, or monthly). As the platform, you control whether payouts are automatic or manual.
Most marketplace operators use manual payouts (also called controlled payouts) to maintain a holding period. The typical setup: funds from completed orders are held in the vendor’s connected account balance for 7-14 days before automated transfer to the bank account. This provides a dispute window – if a buyer opens a chargeback during the holding period, the funds are still in the connected account balance and can be retrieved.
WP Sell Services Pro Agency integrates with Stripe’s payout schedule API to enforce holding periods. The wss_vendor_payout_delay filter lets you customize the holding period per vendor tier – for example, new vendors (first 30 days) might have a 14-day hold while established vendors with good track records get 3-day holds.
1099-K Compliance for US Platforms
In the United States, payment platforms are required to file 1099-K forms for vendors who receive more than $600 in payments through the platform in a calendar year (IRS threshold as of 2024, previously $20,000/200 transactions). As a marketplace operator using Stripe Connect, Stripe handles 1099-K generation and delivery for Express and Custom accounts automatically.
Stripe will generate and send 1099-K forms to your connected vendors by January 31 of the following year. Vendors access their 1099-K via the Express dashboard. As the platform, you receive a copy of all 1099-K forms in your Stripe Dashboard under Tax Forms. You must collect tax identification information (SSN or EIN for US vendors, business registration for international) during vendor onboarding – this is part of Stripe’s KYC process and is handled in the Express onboarding flow automatically.
Handling Refunds and Disputes in Connect
Refunds through Stripe Connect require careful handling. A full refund returns the buyer’s payment but the platform fee is not automatically reversed unless you explicitly include reverse_transfer and refund_application_fee parameters in the refund API call. WP Sell Services Pro handles this correctly when orders are cancelled through the plugin interface – it calls Stripe’s refund with the correct parameters to reverse both the vendor transfer and the platform fee.
Chargebacks (Stripe calls them disputes) on Connect transactions are more complex. When a buyer’s bank disputes a charge, Stripe debits the full dispute amount plus the $15 dispute fee from your platform account, not from the vendor’s connected account. You then need to recover the vendor’s portion from their balance if the dispute is not won. WP Sell Services Pro has dispute hooks (wss_dispute_chargeback_received) that you can use to automatically freeze vendor payouts and flag orders for review when a chargeback arrives.
International Vendor Payouts
Stripe Connect Express supports vendors in 40+ countries, with local bank transfer support in each country. Vendors outside the US receive payouts in their local currency by default. Cross-currency conversion is handled by Stripe at its published exchange rate.
For platforms with significant international vendor bases, consider the Stripe Connect payout currency configuration: you can lock payouts to USD for all vendors (simpler accounting) or allow local currency payouts (better vendor experience, especially in markets with volatile exchange rates). The WP Sell Services Pro vendor settings include a currency configuration field that maps to the Stripe account’s payout currency setting.
For comprehensive marketplace monetization beyond payments, the guide on installment payment options for WordPress service stores covers how to structure deferred payment plans alongside Connect payouts. For platform-level business strategy, the guide on choosing the right WordPress marketplace plugin for services covers the full architectural picture.
Handling Disputes That Involve Payment Holds
When a buyer opens a dispute on a WP Sell Services order, the platform holds payment in escrow until the dispute is resolved. The Stripe Connect implications of this hold depend on your Connect account type. For Standard Connect accounts, the charge has already been created on the connected account and the platform fee collected – a dispute that results in a refund requires a reverse transfer to return funds from the connected account to the platform, then an application fee reversal to return the platform fee. For Express and Custom accounts where the platform creates charges, refund processing is simpler because the charge is on the platform account and the transfer to the connected account can be reversed directly.
Document your dispute resolution flow explicitly in vendor onboarding materials: what triggers a payment hold, how long disputes remain open before admin intervention, what evidence vendors should submit, and what outcomes are possible (full refund, partial refund, delivery accepted). Ambiguity in the dispute process generates more disputes, not fewer – vendors who know exactly what happens when a dispute is filed are less likely to deliver work that generates disputes.
Stripe Connect Payout Schedule Configuration
Stripe’s default payout schedule for connected accounts is a 7-day rolling delay for new accounts. For established marketplaces, you can negotiate with Stripe to reduce this to 2-3 days for verified connected accounts with a good transaction history. For new vendor onboarding, the 7-day delay is protective – it provides time for buyers to raise issues before funds leave the platform. Build this delay into your vendor onboarding communications so vendors arrive with accurate expectations about when their first payout arrives.
Configure payout schedules per connected account type in your Stripe Dashboard: Standard accounts control their own payout schedule independently; Express and Custom accounts have payout schedules set by the platform. For Custom accounts specifically, you can implement milestone-based payouts – releasing funds when specific order conditions are met (delivery accepted, revision period expired) rather than on a calendar schedule. This milestone-based approach aligns payout timing with delivery confirmation, reducing payment-before-delivery disputes on your platform.
Monitoring Stripe Connect Health Across Vendors
As your marketplace scales to dozens or hundreds of connected vendors, monitoring the health of those Connect accounts becomes an operational requirement. Stripe sends webhook events when connected account status changes: account.updated fires when a vendor’s verification status changes, capability.updated fires when payout capability is enabled or disabled. Subscribe to these events in your WP Sell Services WordPress installation and surface the alerts to your admin dashboard.
Build a simple admin notice system: when a vendor’s Stripe account loses payout capability (due to verification failure, dispute thresholds, or regulatory flags), the vendor’s services should be temporarily hidden from public search results and the vendor should receive an automated notification to complete verification. This prevents buyers from placing orders with vendors who cannot receive payment – a scenario that generates disputes and damages platform reputation. For comprehensive marketplace monetization strategy alongside Stripe Connect, see the guide on package pricing for service products. The installment payment guide covers deferred payment options that work alongside Connect’s fee model.
International Vendor Payouts With Stripe Connect
Stripe Connect Express supports vendors in 40+ countries, with local bank transfer support in each country. Vendors outside the US receive payouts in their local currency by default. Cross-currency conversion is handled by Stripe at its published exchange rate. For platforms with significant international vendor bases, consider the Stripe Connect payout currency configuration: you can lock payouts to USD for all vendors (simpler accounting) or allow local currency payouts (better vendor experience, especially in markets with volatile exchange rates).
For international vendors, the KYC process differs by country. Stripe’s Express onboarding adapts its identity verification requirements to local regulations – EU vendors complete GDPR-compliant verification, US vendors complete SSN-based verification, and vendors in other markets complete equivalent local identity verification. As the platform operator, you do not manage these requirements directly – Stripe’s onboarding flow handles country detection and presents the appropriate verification requirements automatically. Your responsibility is ensuring that the Connect onboarding link is presented clearly in your vendor registration flow and that the support documentation explains what vendors should expect during verification.
Testing Stripe Connect Before Going Live
Stripe provides a complete test mode that mirrors the production Connect environment. In test mode, connected accounts are simulated using Stripe’s test account IDs, test card numbers generate successful or failed transactions as configured, and the entire payout flow executes without real money movement. Test the complete transaction cycle: create a connected account in test mode, run a test transaction, verify the split between platform and connected account, and confirm the payout flow executes correctly.
Specifically test edge cases in test mode: refund handling (does the platform fee reverse correctly?), partial refunds, failed payouts (simulate a bank rejection), and account deauthorization (what happens when a vendor disconnects their Stripe account mid-order?). These scenarios are straightforward to test with Stripe’s test event simulator before any real money is involved. Finding and fixing them in test mode takes hours; finding them in production costs money and damages vendor trust.
Stripe Connect Launch Checklist
Verify each item before accepting the first real transaction. These represent the most common gaps found in marketplace deployments that launched without systematic pre-launch verification.
- Stripe platform account created with Connect enabled in the Dashboard settings
- OAuth credentials (client ID + secret key) entered in WP Sell Services payment settings
- Express onboarding tested end-to-end with a staging vendor account through first payout
- Platform fee verified on a test transaction with correct split between platform and vendor
- Webhook endpoint registered for account.updated and payment_intent events
- Refund flow tested with reverse_transfer parameter to confirm vendor balance is reclaimed
- Holding period documented in vendor onboarding materials with exact payout timeline
- Chargeback response procedure written and distributed to ops team before launch