{"id":366993,"date":"2026-09-20T12:18:17","date_gmt":"2026-09-20T12:18:17","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/splitroute\/"},"modified":"2026-09-20T12:17:41","modified_gmt":"2026-09-20T12:17:41","slug":"ur-split-transfers","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/ur-split-transfers\/","author":23552952,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"trunk","tested":"7.1.1","requires":"6.2","requires_php":"7.4","requires_plugins":null,"header_name":"UR \u2013 Split Transfers with Stripe for WooCommerce","header_author":"Urvi Rupareliya","header_description":"Split WooCommerce Stripe payments to a connected Stripe account. Free tier of a Stripe Connect split-payments stack; the Pro addon ships separately.","assets_banners_color":"ccf3e5","last_updated":"2026-09-20 12:17:41","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/profiles.wordpress.org\/urvirupareliya9","rating":0,"author_block_rating":0,"active_installs":0,"downloads":65,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0":{"tag":"1.0","author":"urvirupareliya9","date":"2026-09-20 12:17:41","revision":3704232}},"upgrade_notice":{"1.0.0":"<ul>\n<li>Initial release.<\/li>\n<\/ul>"},"ratings":[],"assets_icons":{"icon-256x256.png":{"filename":"icon-256x256.png","revision":3704248,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-772x250.png":{"filename":"banner-772x250.png","revision":3704248,"resolution":"772x250","location":"assets","locale":"","width":777,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3704232,"resolution":"1","location":"assets","locale":"","width":1440,"height":1670},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3704232,"resolution":"2","location":"assets","locale":"","width":1440,"height":773},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3704232,"resolution":"3","location":"assets","locale":"","width":1440,"height":1121},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3704232,"resolution":"4","location":"assets","locale":"","width":1440,"height":773}},"screenshots":{"1":"<strong>Integrations Panel<\/strong> \u2013 Configure Stripe API keys with test\/live mode toggle, 1-click webhook registration, and connected accounts synchronization.","2":"<strong>Global Transfer Settings<\/strong> \u2013 Multi-account destination table allowing flexible percentage and fixed amount split allocations.","3":"<strong>Activity Log<\/strong> \u2013 Real-time transfer monitoring with status badges, formatted currency values, and direct Stripe Dashboard links.","4":"<strong>WordPress Site Health Integration<\/strong> \u2013 Dedicated diagnostic status checks for credentials, webhook verification, and transfer health."}},"plugin_section":[],"plugin_tags":[8379,163080,5349,256759,286],"plugin_category":[45],"plugin_contributors":[281703],"plugin_business_model":[],"class_list":["post-366993","plugin","type-plugin","status-publish","hentry","plugin_tags-marketplace","plugin_tags-split-payments","plugin_tags-stripe","plugin_tags-stripe-connect","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-urvirupareliya9","plugin_committers-urvirupareliya9"],"banners":{"banner":"https:\/\/ps.w.org\/ur-split-transfers\/assets\/banner-772x250.png?rev=3704248","banner_2x":false,"banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/ur-split-transfers\/assets\/icon-256x256.png?rev=3704248","icon_2x":"https:\/\/ps.w.org\/ur-split-transfers\/assets\/icon-256x256.png?rev=3704248","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/ur-split-transfers\/assets\/screenshot-1.png?rev=3704232","caption":"<strong>Integrations Panel<\/strong> \u2013 Configure Stripe API keys with test\/live mode toggle, 1-click webhook registration, and connected accounts synchronization."},{"src":"https:\/\/ps.w.org\/ur-split-transfers\/assets\/screenshot-2.png?rev=3704232","caption":"<strong>Global Transfer Settings<\/strong> \u2013 Multi-account destination table allowing flexible percentage and fixed amount split allocations."},{"src":"https:\/\/ps.w.org\/ur-split-transfers\/assets\/screenshot-3.png?rev=3704232","caption":"<strong>Activity Log<\/strong> \u2013 Real-time transfer monitoring with status badges, formatted currency values, and direct Stripe Dashboard links."},{"src":"https:\/\/ps.w.org\/ur-split-transfers\/assets\/screenshot-4.png?rev=3704232","caption":"<strong>WordPress Site Health Integration<\/strong> \u2013 Dedicated diagnostic status checks for credentials, webhook verification, and transfer health."}],"raw_content":"<!--section=description-->\n<p><strong>UR \u2013 Split Transfers with Stripe for WooCommerce<\/strong> is a secure, lightweight, and developer-friendly payment routing plugin for WooCommerce powered by Stripe Connect. It automatically splits incoming customer payments and creates fund transfers to your connected Stripe vendor, partner, or contractor accounts upon successful checkout.<\/p>\n\n<p>Whether you run a multi-vendor marketplace, manage partner commissions, distribute platform revenue shares, or coordinate franchise payouts, Split Transfers automates the backend transfer calculation and execution with zero manual intervention.<\/p>\n\n<h3>\ud83d\ude80 Key Features<\/h3>\n\n<ul>\n<li><strong>Automated Transfer Execution:<\/strong> Transfers funds automatically to connected Stripe accounts upon WooCommerce order completion (<code>woocommerce_payment_complete<\/code>) or asynchronous payment confirmation (<code>charge.succeeded<\/code>).<\/li>\n<li><strong>Flexible Split Rules:<\/strong> Configure whole-order splits using <strong>percentage-based<\/strong> calculations (with basis points precision) or <strong>fixed currency amounts<\/strong> per destination.<\/li>\n<li><strong>Multi-Account Fan-Out:<\/strong> Split a single WooCommerce order across multiple connected Stripe accounts simultaneously.<\/li>\n<li><strong>1-Click Stripe Sync:<\/strong> Synchronize connected accounts and automatically create\/refresh your Stripe webhook endpoint and signing secret with a single click.<\/li>\n<li><strong>Secure Credential Management:<\/strong> Dedicated test and live Stripe key management with strict storage discipline\u2014autoload disabled, masked inputs, and zero plaintext secret leakage in the admin interface.<\/li>\n<li><strong>Detailed Activity Log &amp; CSV Export:<\/strong> Searchable, filterable transfer log with status pills, formatted currency amounts, direct deep-links to the Stripe Dashboard, and memory-efficient chunked CSV exports.<\/li>\n<li><strong>Order Audit Trail:<\/strong> Automatic WooCommerce order notes track transfer progress, including Stripe transfer IDs (<code>tr_*<\/code>), destination account IDs, amounts, and detailed error messages if an API issue arises.<\/li>\n<li><strong>Native WordPress Site Health Integration:<\/strong> Four dedicated status tests monitor dependencies, webhook secret presence, transfer error rates, and platform-to-connected-account country compatibility.<\/li>\n<li><strong>High-Performance Order Storage (HPOS) Ready:<\/strong> Fully compatible with WooCommerce HPOS (custom order tables) and traditional post storage.<\/li>\n<li><strong>Developer Extensible:<\/strong> Extensible action and filter hooks.<\/li>\n<\/ul>\n\n<h3>External services<\/h3>\n\n<p>Split Transfers connects to external services provided by Stripe, Inc. to execute payment transfers and synchronize account configurations.<\/p>\n\n<ul>\n<li><p><strong>Stripe API (<code>https:\/\/api.stripe.com<\/code>)<\/strong><\/p>\n\n<ul>\n<li><strong>Purpose:<\/strong> Creating Stripe Transfers to connected accounts, listing and verifying connected accounts, validating API credentials, and registering or updating webhook endpoints.<\/li>\n<li><strong>Data Sent:<\/strong> Stripe Account IDs (<code>acct_*<\/code>), transfer monetary amounts, currency codes, WooCommerce order ID references, and cryptographic idempotency keys. Customer personal details (such as names, addresses, or phone numbers) are never transmitted to the Stripe transfer endpoint.<\/li>\n<li><strong>When Sent:<\/strong> When an order is completed, when a verified payment webhook is received, when clicking \"Sync Connected Accounts\" or \"Sync Webhooks\" in the admin dashboard, or when running a connection test.<\/li>\n<li><strong>Service Provider:<\/strong> Stripe, Inc.<\/li>\n<li><strong>Terms of Service:<\/strong> https:\/\/stripe.com\/legal\/consumer<\/li>\n<li><strong>Privacy Policy:<\/strong> https:\/\/stripe.com\/privacy<\/li>\n<\/ul><\/li>\n<li><p><strong>Stripe Webhooks (<code>https:\/\/api.stripe.com<\/code>)<\/strong><\/p>\n\n<ul>\n<li><strong>Purpose:<\/strong> Receiving signed webhook notifications from Stripe (specifically <code>charge.succeeded<\/code>) to execute transfers for asynchronous payment methods.<\/li>\n<li><strong>Data Received:<\/strong> Stripe event metadata, charge IDs, and transfer status indicators. Every request is verified using the stored Stripe webhook signing secret.<\/li>\n<li><strong>Service Provider:<\/strong> Stripe, Inc.<\/li>\n<li><strong>Privacy Policy:<\/strong> https:\/\/stripe.com\/privacy<\/li>\n<\/ul><\/li>\n<\/ul>\n\n<!--section=installation-->\n<h3>Minimum Requirements<\/h3>\n\n<ul>\n<li>WordPress 6.2 or higher<\/li>\n<li>WooCommerce 6.0 or higher<\/li>\n<li>WooCommerce Stripe Payment Gateway 7.0 or higher (or compatible Stripe payment processing)<\/li>\n<li>PHP 7.4 or higher<\/li>\n<li>A Stripe account with Stripe Connect enabled (Standard, Express, or Custom accounts)<\/li>\n<\/ul>\n\n<h3>Automatic Installation<\/h3>\n\n<ol>\n<li>Log in to your WordPress admin dashboard.<\/li>\n<li>Navigate to <strong>Plugins &gt; Add New<\/strong>.<\/li>\n<li>Search for <strong>UR \u2013 Split Transfers with Stripe for WooCommerce<\/strong>.<\/li>\n<li>Click <strong>Install Now<\/strong>, then click <strong>Activate<\/strong>.<\/li>\n<\/ol>\n\n<h3>Manual Installation<\/h3>\n\n<ol>\n<li>Download the <code>ur-split-transfers.zip<\/code> archive.<\/li>\n<li>Unzip and upload the <code>ur-split-transfers<\/code> folder to your <code>\/wp-content\/plugins\/<\/code> directory.<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> menu in WordPress.<\/li>\n<\/ol>\n\n<h3>Initial Configuration<\/h3>\n\n<ol>\n<li>Go to the new <strong>Split Transfers &gt; Integrations<\/strong> menu in your WordPress dashboard.<\/li>\n<li>Select your operating mode (<strong>Test<\/strong> or <strong>Live<\/strong>) and enter your Stripe Publishable Key and Secret Key. Click <strong>Save Keys<\/strong>, then click <strong>Test Connection<\/strong> to confirm connectivity.<\/li>\n<li>Click <strong>Sync Webhooks<\/strong> to automatically register your store's webhook endpoint in Stripe and retrieve your webhook signing secret.<\/li>\n<li>Click <strong>Sync Connected Accounts<\/strong> to import your active connected Stripe accounts.<\/li>\n<li>Go to <strong>Split Transfers &gt; Global Transfer Settings<\/strong>.<\/li>\n<li>Click <strong>+ Add account<\/strong>, select your connected account, specify the transfer type (<strong>Percentage<\/strong> or <strong>Fixed amount<\/strong>), and enter the split value.<\/li>\n<li>Click <strong>Save Changes<\/strong>. Your split rules are now active!<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"what%20stripe%20connect%20account%20types%20are%20supported%3F\"><h3>What Stripe Connect account types are supported?<\/h3><\/dt>\n<dd><p>Split Transfers supports all Stripe Connect connected account types, including Standard, Express, and Custom connected accounts.<\/p><\/dd>\n<dt id=\"can%20i%20split%20an%20order%20across%20multiple%20connected%20accounts%3F\"><h3>Can I split an order across multiple connected accounts?<\/h3><\/dt>\n<dd><p>Yes! You can add multiple connected accounts in the Global Transfer Settings. Split Transfers will calculate each split according to your configured percentage or fixed values and execute separate transfers for each destination upon checkout.<\/p><\/dd>\n<dt id=\"does%20split%20transfers%20store%20sensitive%20credit%20card%20information%3F\"><h3>Does Split Transfers store sensitive credit card information?<\/h3><\/dt>\n<dd><p>No. Split Transfers never collects, processes, or stores credit card numbers, CVVs, or sensitive customer payment credentials. Customer payment details are handled directly by Stripe and the WooCommerce Stripe Payment Gateway.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20a%20transfer%20fails%3F\"><h3>What happens if a transfer fails?<\/h3><\/dt>\n<dd><p>If Stripe rejects a transfer (for example, due to insufficient platform balance, an unactivated destination account, or a cross-border currency restriction), Split Transfers catches the exception gracefully. The failure details and Stripe error code are recorded in the Split Transfers Activity Log, an explanatory private note is appended to the WooCommerce order, and checkout completion is never blocked for the customer.<\/p><\/dd>\n<dt id=\"how%20do%20asynchronous%20payments%20%28like%20sepa%20or%20ideal%29%20work%3F\"><h3>How do asynchronous payments (like SEPA or iDEAL) work?<\/h3><\/dt>\n<dd><p>Split Transfers registers a dedicated REST webhook endpoint (<code>\/wp-json\/splitroute\/v1\/webhook<\/code>) and listens for Stripe's <code>charge.succeeded<\/code> event. When delayed or asynchronous payments clear in Stripe, Split Transfers automatically processes the transfers upon receiving the verified webhook notification.<\/p><\/dd>\n<dt id=\"is%20split%20transfers%20compatible%20with%20woocommerce%20high-performance%20order%20storage%20%28hpos%29%3F\"><h3>Is Split Transfers compatible with WooCommerce High-Performance Order Storage (HPOS)?<\/h3><\/dt>\n<dd><p>Yes. Split Transfers is fully compatible with WooCommerce HPOS (custom order tables) as well as legacy WordPress post storage.<\/p><\/dd>\n<dt id=\"where%20can%20i%20view%20transfer%20history%3F\"><h3>Where can I view transfer history?<\/h3><\/dt>\n<dd><p>Navigate to <strong>Split Transfers &gt; Activity Log<\/strong> in your WordPress dashboard. You can search, filter by Stripe mode (Test\/Live), filter by status (Success\/Failed\/Pending), view formatted currency amounts, and click direct links to view the transfer in the Stripe Dashboard.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release on WordPress.org.<\/li>\n<li>Automated payment routing for WooCommerce Stripe transactions.<\/li>\n<li>Support for percentage-based and fixed currency amount split rules.<\/li>\n<li>Multi-account transfer fan-out for individual orders.<\/li>\n<li>1-Click Stripe webhook creation with automated signing secret retrieval.<\/li>\n<li>1-Click synchronization of connected Stripe accounts.<\/li>\n<li>Secure credential management with mode toggling (Test and Live).<\/li>\n<li>Searchable and filterable transfer activity log with streaming CSV exports.<\/li>\n<li>Native WordPress Site Health status diagnostics and debug panel.<\/li>\n<li>Full compatibility with WooCommerce High-Performance Order Storage (HPOS).<\/li>\n<li>Extensible developer action and filter hooks.<\/li>\n<\/ul>","raw_excerpt":"Automate payment splits for WooCommerce to Stripe Connect accounts with percentage or fixed rules, multi-account routing, and real-time logs.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/366993","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=366993"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/urvirupareliya9"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=366993"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=366993"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=366993"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=366993"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=366993"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=366993"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}