Overview#

Before Split Pay can transfer funds to a vendor, that vendor must have a Stripe account connected to your platform. There are three ways to connect vendor accounts:

  1. Split Pay onboarding PRO — A built-in registration and onboarding flow on your site’s standard WordPress registration page.
  2. Front-end shortcode — The [split_pay_vendor_connect] shortcode renders a “Connect with Stripe” button on any page so vendors can onboard without touching wp-admin.
  3. Stripe Dashboard onboarding — Manually create connected accounts through your Stripe Dashboard and share an onboarding link.

Once vendors can connect, Split Pay can make the rest hands-off — auto-create a product, give each vendor a payment QR code, email vendors after successful transfers, and send customers one confirmation when their order’s money is sent. See Vendor Automation PRO.


Method 1: Split Pay onboarding PRO#

The Pro version includes a self-service onboarding flow that lets vendors register and connect their Stripe accounts without you needing to touch the Stripe Dashboard.

Enable vendor onboarding

Navigate to Split Pay → Vendor Onboarding in WordPress admin.

If the page asks you to connect your Stripe platform account, first save at least one usable Test or Live platform key under Split Pay → Integrations. This opens the onboarding controls; each actual onboarding action still uses the key for its selected Test or Live mode.

Check the Enable Vendor Onboarding checkbox.

Enable Vendor Onboarding in Split Pay Plugin Settings
Enable Vendor Onboarding in Split Pay Plugin Settings

Choose Vendor account type: Standard (default) or Express. This saved choice is the default whenever Split Pay creates a new account through its built-in onboarding, front-end shortcode, or a Connect Status onboarding link. Developer code using the spp_account_create_args filter can override it. See Vendor account types.

Save your settings.

When enabled, the plugin creates a Vendor (Split Pay Plugin) WordPress user role and adds a Register as a Vendor checkbox to your site’s existing WordPress registration page. No new page is created.

WordPress opens that registration page only when Anyone can register is checked under Settings → General → Membership. If your site keeps public registration off, add vendors yourself as described in Managing vendors.

Vendor registration flow

Once onboarding is enabled, vendors can self-register:

The vendor visits your site’s standard WordPress registration page (e.g. /wp-login.php?action=register). The plugin adds a Register as a Vendor checkbox to this existing page — no new page is created in your Pages list.

They create a WordPress account with the Vendor (Split Pay Plugin) role.

Register as Vendor on WordPress Registration Page
Register as Vendor on WordPress Registration Page

After logging in, they’re guided through the Stripe Connect onboarding process — creating or connecting their Stripe account to your platform.

Stripe Connect Settings in Vendor Dashboard View
Stripe Connect Settings in Vendor Dashboard View

Once onboarding is complete, Split Pay saves their Stripe account ID in this site’s Test or Live vendor-connection record.

Hands-off setup: With the Pro onboarding flow, vendors handle their own Stripe account creation and verification. You don’t need to manage account links or share onboarding URLs manually.

Additional vendor roles

In the Vendor Onboarding settings tab, the Additional Vendor Roles multi-select lets you grant any WordPress role access to the Stripe Connect onboarding page. This is useful when your site already has custom roles (for example, “Seller,” “Artist,” or “Partner”) and you want those users to connect their Stripe accounts without changing their existing role.

Vendor instructions: title and description

You can show vendors your own instructions next to the Stripe Connect button. On the Vendor Onboarding tab, with vendor onboarding enabled, check Enable Title & Description., enter a Title and a Description, and save. Vendors see them at the top of their Stripe Connect page in WordPress admin, above the button to connect their Stripe account. Vendors land on that page when they log in.

If the option is off or a field is blank, vendors see the default heading Stripe Connect Settings and the default text Please connect your Stripe account. Both fields are plain text. Keep them short, for example a title of Stripe Connect Settings and a description such as Please connect your Stripe account. Contact us at [email protected] with any questions.

Vendor Instructional Title and Description
Vendor Instructional Title and Description

Managing vendors

Vendors who registered through the built-in flow appear in your WordPress Users list with the Vendor (Split Pay Plugin) role. Use Connect Status to verify the exact connected-account ID and Stripe mode before configuring product-level transfers.

Connect Status exact Test and Live account pairing controls
Confirm the exact Test and Live account pair in Connect Status.

New onboarding and strict 3.8.4 identity routing use exact, site-scoped Test/Live pairs. Existing 3.8.3 installations keep their legacy email, then name, then saved-ID resolution until an administrator confirms an exact pair or completes a strict platform-key replacement.

You can also add a vendor yourself, which is the way to do it when your site does not allow public registration. With vendor onboarding enabled, go to Users → Add New User, enter the vendor’s details, and choose the Vendor (Split Pay Plugin) role. When that vendor logs in, they land on the same Stripe Connect page to connect their account.

Adding Vendor Role in WordPress Users Section
Adding Vendor Role in WordPress Users Section

Method 2: front-end vendor onboarding shortcode#

The [split_pay_vendor_connect] shortcode renders a Stripe Connect onboarding button on any public page. Vendors can start or resume onboarding without you exposing the WordPress registration page or admin dashboard. The shortcode works on a WooCommerce site, a FluentCart site, or a hybrid site.

The shortcode reuses the same Stripe Connect account and account-link flow as Method 1. Once a vendor completes onboarding, Split Pay stores the account ID in this site’s mode-specific connection record and can route transfers to it.

Syntax

Drop the shortcode into any post, page, widget, or template that accepts shortcodes:

[split_pay_vendor_connect]

All four attributes are optional. You can override any subset:

[split_pay_vendor_connect
  button_label="Become a Vendor"
  connected_label="Your Stripe account is connected."
  login_label="Please log in to connect your Stripe account."
  pending_label="Stripe onboarding is in progress. Complete the steps with Stripe to finish."]

Attributes

Attribute Default Shown when…
button_label “Connect with Stripe” The vendor is logged in but has not started Stripe onboarding yet. Becomes the call-to-action label on the connect button.
connected_label “Your Stripe account is connected.” This site’s mode-specific connection record contains the Stripe account ID and marks that same account as onboarded.
login_label “Please log in to connect your Stripe account.” The visitor is not logged in. The shortcode also renders a “Log In” button that returns them to this page after sign-in.
pending_label “Stripe onboarding is in progress. Complete the steps with Stripe to finish.” The vendor has a Stripe account ID stored but onboarding hasn’t been completed. A Resume Stripe Onboarding button is shown alongside this message.

Runtime states

The shortcode renders one of four states based on the current user:

  1. Logged outspp-vendor-connect spp-vendor-connect--logged-out wrapper. Shows login_label and a Log In button.
  2. Logged in, no Stripe account yetspp-vendor-connect spp-vendor-connect--connect wrapper. Shows the primary button_label button. Clicking it creates the Standard or Express account selected under Vendor account type by default, generates an account link, and redirects the vendor to Stripe’s hosted onboarding.
  3. Logged in, onboarding pendingspp-vendor-connect spp-vendor-connect--pending wrapper. Shows pending_label and a Resume Stripe Onboarding button that re-opens the existing Stripe account link.
  4. Logged in and connectedspp-vendor-connect spp-vendor-connect--connected wrapper. Shows connected_label, an optional payment QR code when enabled, and a Disconnect Stripe account button.

You can style any of these states using the wrapper class names listed above.

Where to place it

  • A dedicated Become a Vendor landing page on your site.
  • The vendor’s profile or dashboard page (an account-area template).
  • Inside a sidebar widget on pages where you want to recruit vendors.
  • Anywhere the standard WordPress shortcode runner is invoked — including FluentCart product pages, WooCommerce account pages, and Gutenberg/Classic-Editor content.

Required capabilities and configuration

  • Visitor: by default, any logged-in WordPress user can use the connect button; the shortcode does not require the Vendor (Split Pay Plugin) role. If the optional identity-bound WCFM Connect flow is enabled, it instead requires an authorized, signed-in WCFM vendor.
  • Site administrator: Save the mode-matched Stripe platform secret key on Split Pay → Integrations. If Split Pay cannot resolve a key for that mode, the connect action returns “Stripe is not yet configured by the site administrator” and creates no account.
  • HTTPS: Stripe Connect onboarding URLs only function over HTTPS. Make sure your site is served with a valid TLS certificate before pointing vendors at the page.

Example

A minimal “Become a Vendor” page might contain:

<h1>Join the marketplace</h1>
<p>Sign up and connect your Stripe account to start receiving payouts.</p>
[split_pay_vendor_connect button_label="Become a Vendor"]

On the same page you can customise the messaging for other states without changing markup:

[split_pay_vendor_connect
  button_label="Connect Stripe"
  connected_label="You’re all set — payouts will land in your Stripe account."
  login_label="Log in to start your vendor onboarding."
  pending_label="Almost there — finish your Stripe verification."]

Operational notes

  • Connect actions hit connect.stripe.com on Stripe’s hosted onboarding. Don’t whitelist a different domain in any security plugins you have running.
  • Each connect action carries a one-time nonce (_spp_connect_nonce). Don’t cache the page output too aggressively or vendors may receive an “Invalid request” error if the nonce expires before they click.
  • New accounts created by the shortcode, a Split Pay Connect link, or built-in/admin onboarding use the saved Vendor account type setting by default. Standard is the default. Any previously saved choice is still honored, and developer code can override the creation arguments. Changing the setting does not convert an account that already exists. See Vendor account types.

Method 3: Stripe Dashboard onboarding#

With the free version (or if you prefer manual control), you can create connected accounts directly through the Stripe Dashboard.

Log in to your Stripe Dashboard.

Navigate to Connect → Accounts (or More → Connect depending on your dashboard layout).

Click Create to add a new connected account.

Choose the account configuration based on your needs. Stripe’s legacy Accounts v1 framing uses Standard, Express, and Custom presets plus controller properties. Accounts v2 instead uses configurations, a dashboard value, and defaults.responsibilities to define capabilities and responsibility.

Either model can receive Split Pay transfers only when the account is connected to this platform and its transfer capability is active; for Accounts v2, that capability is stripe_balance.stripe_transfers. The configuration also controls Dashboard access and who is responsible for fees, losses, and requirement collection — not only the onboarding screen. See Stripe’s connected-account configuration and Accounts v2 references.

Stripe generates an onboarding link. Send this link to your vendor so they can complete their account setup.

Once the vendor completes onboarding, return to Split Pay → Connect Status and use Refresh from Stripe. Confirm that the exact acct_... account appears and is ready in the intended Test or Live mode.

In Free, select the synced account as the global recipient. With PRO, you can also select it in individual product or variation rules.

For testing, use Stripe’s test mode connected accounts. Toggle between test and live mode in your Stripe Dashboard to manage test accounts separately.

Account requirements#

Regardless of which method you use, connected accounts must meet these requirements before they can receive transfers:

  • The account must have completed Stripe onboarding (identity verification, banking details, etc.).
  • The account must be enabled for transfers — Stripe may require additional verification for some account types or countries.
  • The account must be connected to your platform’s Stripe account (not a different platform).
  • Stripe controls cross-border eligibility. Split Pay does not treat a fixed list of countries as a guarantee. Verify a different-country platform/account pairing in Stripe and with a Test order before using it in Live mode.

Test vs. Live: A recipient verified only in Test is not proven ready for Live, and vice versa. The same exact acct_ ID can be valid in both modes, but verify its readiness separately for each mode in Connect Status.

Finding the Stripe account ID#

Every connected Stripe account has a unique identifier that starts with acct_. You can find it in:

  • Stripe Dashboard: Go to Connect → Accounts, click on the account, and the ID appears at the top of the page.
  • Vendor user profile on a single-site install: Split Pay mirrors the site connection there for compatibility. On multisite, use Connect Status or Stripe Dashboard instead because Split Pay does not write site identity into network-shared user metadata.