[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fyfcjFjg03ParFH2McRvd1kDIY2_QioU0Bv2cn7j-qEk":3},{"slug":4,"display_name":5,"profile_url":6,"plugin_count":7,"total_installs":8,"avg_security_score":9,"avg_patch_time_days":10,"trust_score":11,"computed_at":12,"plugins":13},"pawelborowiec","Pawel Borowiec","https:\u002F\u002Fprofiles.wordpress.org\u002Fpawelborowiec\u002F",1,0,100,30,94,"2026-04-05T16:51:32.569Z",[14],{"slug":15,"name":16,"version":17,"author":5,"author_profile":6,"description":18,"short_description":19,"active_installs":8,"downloaded":20,"rating":8,"num_ratings":8,"last_updated":21,"tested_up_to":22,"requires_at_least":23,"requires_php":24,"tags":25,"homepage":31,"download_link":32,"security_score":9,"vuln_count":8,"unpatched_count":8,"last_vuln_date":33,"fetched_at":34},"course-flow","Course Flow","1.0.0","\u003Cp>\u003Cstrong>Course Flow\u003C\u002Fstrong> is a free and lightweight WordPress plugin that lets you sell your online courses directly with \u003Cstrong>Stripe Checkout\u003C\u002Fstrong> — without the need for WooCommerce. It integrates seamlessly with \u003Cstrong>Tutor LMS\u003C\u002Fstrong>, \u003Cstrong>LearnPress\u003C\u002Fstrong>, and \u003Cstrong>LearnDash\u003C\u002Fstrong> to offer a simple and fast checkout experience for course creators.\u003C\u002Fp>\n\u003Cp>If you’re tired of slow or complicated WooCommerce setups, \u003Cstrong>Course Flow\u003C\u002Fstrong> gives you a direct and conflict-free way to start selling your courses online.\u003Cbr \u002F>\nNo extra plugins. No conflicts. No slow checkouts. Just fast, secure payments with Stripe.\u003C\u002Fp>\n\u003Ch3>💡 Why course creators choose Course Flow\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>No WooCommerce required\u003C\u002Fstrong> — avoids unnecessary complexity and plugin conflicts.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Fast setup\u003C\u002Fstrong> — configure Stripe keys and add a shortcode to start accepting payments.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Direct Stripe Checkout\u003C\u002Fstrong> — secure, hosted checkout handled entirely by Stripe.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Automatic course enrollment\u003C\u002Fstrong> after successful payment.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Optional WordPress user account creation\u003C\u002Fstrong> for new customers.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Fully customizable buttons\u003C\u002Fstrong> — text, colors, and even image-based purchase buttons.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Lightweight architecture\u003C\u002Fstrong> — minimal frontend and admin assets.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Translation-ready\u003C\u002Fstrong> with included \u003Ccode>.pot\u003C\u002Fcode> file.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>🧩 Key Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Direct \u003Cstrong>Stripe Checkout\u003C\u002Fstrong> integration (no WooCommerce dependency).\u003C\u002Fli>\n\u003Cli>Supports \u003Cstrong>Tutor LMS\u003C\u002Fstrong>, \u003Cstrong>LearnPress\u003C\u002Fstrong>, and \u003Cstrong>LearnDash\u003C\u002Fstrong> (requires one active LMS).\u003C\u002Fli>\n\u003Cli>One-time payments via Stripe Checkout.\u003C\u002Fli>\n\u003Cli>Automatic course enrollment after successful payment.\u003C\u002Fli>\n\u003Cli>Optional automatic WordPress user account creation.\u003C\u002Fli>\n\u003Cli>Secure Stripe webhook handling (\u003Ccode>checkout.session.completed\u003C\u002Fcode>).\u003C\u002Fli>\n\u003Cli>Test mode and live mode support.\u003C\u002Fli>\n\u003Cli>Shortcodes for easy setup:\n\u003Cul>\n\u003Cli>\u003Ccode>[courseflow_buycourse id=\"123\"]\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>[courseflow_course id=\"123\"]\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>[courseflow_imagebuycourse id=\"123\"]\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Visual button customization (text, colors, hover effects, layout).\u003C\u002Fli>\n\u003Cli>Image-based purchase buttons.\u003C\u002Fli>\n\u003Cli>Admin course list with ready-to-copy shortcodes.\u003C\u002Fli>\n\u003Cli>Secure REST API (\u003Ccode>course-flow\u002Fv1\u003C\u002Fcode>) with capability and nonce validation.\u003C\u002Fli>\n\u003Cli>Optional plugin telemetry (disabled by default).\u003C\u002Fli>\n\u003Cli>Fully translatable (\u003Ccode>.pot\u003C\u002Fcode> file included).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>⚡ Performance & Security\u003Cbr \u002F>\nCourse Flow is built for speed. It loads only minimal scripts, uses secure REST API calls, and relies on Stripe’s own hosted checkout page for PCI compliance.\u003Cbr \u002F>\nAll webhook events are validated via \u003Ccode>checkout.session.completed\u003C\u002Fcode>, ensuring that course enrollments are always secure and verified.\u003C\u002Fp>\n\u003Ch3>Requirements\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>WordPress 6.7 or newer\u003C\u002Fli>\n\u003Cli>PHP 7.4 or newer\u003C\u002Fli>\n\u003Cli>One active LMS plugin:\n\u003Cul>\n\u003Cli>Tutor LMS\u003C\u002Fli>\n\u003Cli>LearnPress\u003C\u002Fli>\n\u003Cli>LearnDash\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Stripe account (Publishable Key, Secret Key, Webhook Secret)\u003C\u002Fli>\n\u003Cli>HTTPS enabled\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Configuring Stripe Webhooks\u003C\u002Fh3>\n\u003Cp>To enable automatic enrollment after payment:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Open Stripe Dashboard \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Developers \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Webhooks.\u003C\u002Fli>\n\u003Cli>Add endpoint:\u003Cbr \u002F>\n   https:\u002F\u002Fyour-site.com\u002Fwp-json\u002Fcourse-flow\u002Fv1\u002Fwebhook\u003C\u002Fli>\n\u003Cli>Select event: \u003Ccode>checkout.session.completed\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Copy the webhook secret and paste it into plugin settings.\u003C\u002Fli>\n\u003Cli>Use the \u003Cstrong>TEST CONNECTION\u003C\u002Fstrong> button in admin to validate configuration.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Shortcodes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ccode>[courseflow_buycourse id=\"123\"]\u003C\u002Fcode> — standard buy button\u003C\u002Fli>\n\u003Cli>\u003Ccode>[courseflow_course id=\"123\"]\u003C\u002Fcode> — alternative purchase button\u003C\u002Fli>\n\u003Cli>\u003Ccode>[courseflow_imagebuycourse id=\"123\"]\u003C\u002Fcode> — image-based buy button\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>REST API\u003C\u002Fh3>\n\u003Cp>Namespace: \u003Ccode>course-flow\u002Fv1\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>POST \u002Fcreate-checkout\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>POST \u002Fwebhook\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>POST \u002Ftest-connection\u003C\u002Fcode> (admin only)\u003C\u002Fli>\n\u003Cli>\u003Ccode>POST \u002Fsave-settings\u003C\u002Fcode> (admin only)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Protected endpoints validate user capabilities and nonces.\u003C\u002Fp>\n\u003Ch3>Admin Pages\u003C\u002Fh3>\n\u003Cp>Settings — Configuration of Stripe API keys, currency, success page, account creation behavior and optional plugin telemetry.\u003Cbr \u002F>\nCourses — List of detected LMS courses with IDs and available purchase shortcodes.\u003Cbr \u002F>\nButton Settings — Visual customization of purchase buttons.\u003Cbr \u002F>\nImage Button Settings — Management of image-based purchase buttons.\u003C\u002Fp>\n\u003Ch3>Data Privacy\u003C\u002Fh3>\n\u003Cp>Course Flow includes an optional plugin telemetry feature.\u003C\u002Fp>\n\u003Cp>When explicitly enabled by an administrator, the plugin may transmit limited, non-personal plugin metadata (such as site URL and plugin version) to the plugin author for diagnostic and compatibility purposes.\u003C\u002Fp>\n\u003Cp>This feature is:\u003Cbr \u002F>\n– Disabled by default\u003Cbr \u002F>\n– Explicitly opt-in\u003Cbr \u002F>\n– Does not collect personal or user-identifiable data\u003C\u002Fp>\n\u003Cp>The plugin functions fully without enabling this option.\u003C\u002Fp>\n\u003Cp>More information can be found in the author’s privacy policy:\u003Cbr \u002F>\nhttps:\u002F\u002Fdev.pawelborowiec.com\u002Fcourse-flow\u002Fprivacy-policy.html\u003C\u002Fp>\n\u003Ch3>External Services\u003C\u002Fh3>\n\u003Ch4>Stripe\u003C\u002Fh4>\n\u003Cp>Stripe is used to process payments via Stripe Checkout.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Stripe JavaScript library is loaded from https:\u002F\u002Fjs.stripe.com\u002Fv3\u002F\u003C\u002Fli>\n\u003Cli>Stripe API is used for checkout session creation and webhook handling.\u003C\u002Fli>\n\u003Cli>Payment data is transmitted directly to Stripe during checkout.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Service Provider: Stripe, Inc.\u003Cbr \u002F>\nTerms: https:\u002F\u002Fstripe.com\u002Flegal\u003Cbr \u002F>\nPrivacy: https:\u002F\u002Fstripe.com\u002Fprivacy\u003C\u002Fp>\n\u003Ch3>Localization\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Translation-ready with included \u003Ccode>.pot\u003C\u002Fcode> file.\u003C\u002Fli>\n\u003Cli>Translation files should be placed in the \u003Ccode>\u002Flanguages\u002F\u003C\u002Fcode> directory.\u003C\u002Fli>\n\u003Cli>Default language: English.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Included Libraries\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Stripe PHP SDK (MIT)\u003C\u002Fli>\n\u003Cli>Select2 (MIT)\u003C\u002Fli>\n\u003Cli>Bundled local fonts (OFL)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>License\u003C\u002Fh3>\n\u003Cp>GPLv2 or later\u003C\u002Fp>\n","Sell online courses with Stripe using Course Flow — the fastest, lightweight WordPress plugin for Stripe Checkout integration with Tutor LMS, LearnPre &hellip;",136,"2026-01-06T16:43:00.000Z","6.9.4","6.7","7.4",[26,27,28,29,30],"learndash","learnpress","lms","stripe","tutor","https:\u002F\u002Fpawelborowiec.com\u002Fcourse-flow","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcourse-flow.1.0.0.zip",null,"2026-03-15T15:16:48.613Z"]