{"id":331702,"date":"2026-06-28T23:15:47","date_gmt":"2026-06-28T23:15:47","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/demfilz-simple-stripe-payments\/"},"modified":"2026-06-28T23:15:26","modified_gmt":"2026-06-28T23:15:26","slug":"demfilz-payment-forms-for-stripe","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/demfilz-payment-forms-for-stripe\/","author":20035799,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.0","requires":"6.2","requires_php":"7.2","requires_plugins":null,"header_name":"Demfilz Payment Forms for Stripe","header_author":"Demfilz","header_description":"Modern, embeddable Stripe payment forms. Drop a shortcode onto any page to collect Name, Email, Phone, Reference Number, Message and a payment amount, then send the customer to Stripe's secure checkout. Includes an admin dashboard with a payment summary, webhook confirmation and email notifications.","assets_banners_color":"7c42e8","last_updated":"2026-06-28 23:15:26","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/demfilz.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":36,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"demfilz","date":"2026-06-28 23:15:26"}},"upgrade_notice":{"1.0.0":"<p>Initial release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3589316,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3589316,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon.svg":{"filename":"icon.svg","revision":3589316,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3589316,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3589316,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3589316,"resolution":"1","location":"assets","locale":"","width":960,"height":1212},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3589316,"resolution":"2","location":"assets","locale":"","width":960,"height":1212},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3589316,"resolution":"3","location":"assets","locale":"","width":1968,"height":1116},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3589316,"resolution":"4","location":"assets","locale":"","width":1968,"height":2736}},"screenshots":{"1":"The payment form on the front end (light theme).","2":"The payment form in dark theme.","3":"The admin Payment Summary dashboard.","4":"The admin Settings tab."}},"plugin_section":[],"plugin_tags":[3148,5800,155927,1887,5349],"plugin_category":[45],"plugin_contributors":[268125],"plugin_business_model":[],"class_list":["post-331702","plugin","type-plugin","status-publish","hentry","plugin_tags-checkout","plugin_tags-donations","plugin_tags-payment-form","plugin_tags-payments","plugin_tags-stripe","plugin_category-ecommerce","plugin_contributors-demfilz","plugin_committers-demfilz"],"banners":{"banner":"https:\/\/ps.w.org\/demfilz-payment-forms-for-stripe\/assets\/banner-772x250.png?rev=3589316","banner_2x":"https:\/\/ps.w.org\/demfilz-payment-forms-for-stripe\/assets\/banner-1544x500.png?rev=3589316","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/demfilz-payment-forms-for-stripe\/assets\/icon.svg?rev=3589316","icon":"https:\/\/ps.w.org\/demfilz-payment-forms-for-stripe\/assets\/icon.svg?rev=3589316","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/demfilz-payment-forms-for-stripe\/assets\/screenshot-1.png?rev=3589316","caption":"The payment form on the front end (light theme)."},{"src":"https:\/\/ps.w.org\/demfilz-payment-forms-for-stripe\/assets\/screenshot-2.png?rev=3589316","caption":"The payment form in dark theme."},{"src":"https:\/\/ps.w.org\/demfilz-payment-forms-for-stripe\/assets\/screenshot-3.png?rev=3589316","caption":"The admin Payment Summary dashboard."},{"src":"https:\/\/ps.w.org\/demfilz-payment-forms-for-stripe\/assets\/screenshot-4.png?rev=3589316","caption":"The admin Settings tab."}],"raw_content":"<!--section=description-->\n<p>Demfilz Payment Forms for Stripe lets you collect payments anywhere on your site with a single shortcode. Visitors fill in a clean, modern form and are taken to Stripe's secure hosted checkout to enter their card details \u2014 no card data ever touches your server.<\/p>\n\n<p>The form collects these standard fields:<\/p>\n\n<ul>\n<li>Name<\/li>\n<li>Email<\/li>\n<li>Phone<\/li>\n<li>Reference Number<\/li>\n<li>Message<\/li>\n<li>Amount<\/li>\n<\/ul>\n\n<p><strong>Features<\/strong><\/p>\n\n<ul>\n<li>Drop-in shortcode: <code>[dpfs_payment_form]<\/code><\/li>\n<li>Secure Stripe Checkout (hosted) \u2014 PCI-friendly, with Apple Pay \/ Google Pay support<\/li>\n<li>Admin settings: Secret API key, Webhook signing secret, notification email, currency, minimum amount, button text<\/li>\n<li>Payment Summary dashboard: total collected, this-month figures, paid\/pending counts, a full payment list and CSV export<\/li>\n<li>Webhook-confirmed payments, with an on-page success fallback<\/li>\n<li>Email notification to your chosen address on every successful payment<\/li>\n<li>Modern, responsive, accessible design with an optional dark theme<\/li>\n<li>Self-hosted font and assets \u2014 no third-party CDN requests from the front end<\/li>\n<\/ul>\n\n<p>This plugin is not affiliated with or endorsed by Stripe. \"Stripe\" is a trademark of Stripe, Inc., used here only to describe compatibility.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin connects to the Stripe payment platform to process payments. Stripe is a third-party service; using this plugin requires a Stripe account and agreement to Stripe's terms.<\/p>\n\n<p><strong>What is sent and when:<\/strong> When a visitor submits the payment form, the plugin creates a Stripe Checkout Session by sending the entered amount, currency, name, email, phone, reference number and message to Stripe's API (<code>https:\/\/api.stripe.com<\/code>). The visitor is then redirected to Stripe's hosted checkout page to enter and submit their card details. When the visitor returns, and via a webhook from Stripe, the plugin asks Stripe for the payment status to record the result. Card numbers are entered on Stripe's pages and are never sent to or stored on your site.<\/p>\n\n<ul>\n<li>Stripe Terms of Service: https:\/\/stripe.com\/legal<\/li>\n<li>Stripe Privacy Policy: https:\/\/stripe.com\/privacy<\/li>\n<\/ul>\n\n<p>The plugin only contacts Stripe when an administrator has entered a Stripe API key and a visitor submits the form (or returns from checkout). No data is sent to any other external service.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>demfilz-payment-forms-for-stripe<\/code> folder to <code>\/wp-content\/plugins\/<\/code>, or install the zip via Plugins \u2192 Add New \u2192 Upload Plugin.<\/li>\n<li>Activate the plugin.<\/li>\n<li>Go to <strong>Stripe Payments \u2192 Settings<\/strong> and enter your Stripe <strong>Secret API Key<\/strong> (use a test key, <code>sk_test_\u2026<\/code>, while testing).<\/li>\n<li>In your Stripe Dashboard, go to <strong>Developers \u2192 Webhooks \u2192 Add endpoint<\/strong>, paste the <strong>Webhook Endpoint URL<\/strong> shown on the settings page, subscribe to the <code>checkout.session.completed<\/code> event, then copy the endpoint's <strong>Signing secret<\/strong> into the <strong>Webhook Signing Secret<\/strong> field.<\/li>\n<li>Set a <strong>Notification Email<\/strong> and your <strong>Currency<\/strong>.<\/li>\n<li>Add the shortcode <code>[dpfs_payment_form]<\/code> to any page or post.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"which%20shortcode%20attributes%20are%20available%3F\"><h3>Which shortcode attributes are available?<\/h3><\/dt>\n<dd><ul>\n<li><code>title<\/code> \u2014 heading shown above the form (default \"Make a Payment\")<\/li>\n<li><code>description<\/code> \u2014 optional sub-text under the title<\/li>\n<li><code>button<\/code> \u2014 button label (default from settings, e.g. \"Pay Now\")<\/li>\n<li><code>amount<\/code> \u2014 a fixed amount; when set, the amount field is locked<\/li>\n<li><code>currency<\/code> \u2014 three-letter code (default from settings, e.g. <code>aud<\/code>)<\/li>\n<li><code>amount_label<\/code> \u2014 accessible label for the amount field (default \"Amount\")<\/li>\n<li><code>theme<\/code> \u2014 <code>light<\/code> (default), <code>dark<\/code>, or <code>auto<\/code> (follow the visitor's system setting)<\/li>\n<\/ul>\n\n<p>Example: <code>[dpfs_payment_form title=\"Pay your invoice\" amount=\"150\" currency=\"aud\"]<\/code><\/p><\/dd>\n<dt id=\"do%20i%20need%20the%20stripe%20php%20sdk%3F\"><h3>Do I need the Stripe PHP SDK?<\/h3><\/dt>\n<dd><p>No. The plugin talks to the Stripe API directly over HTTPS, so there is nothing extra to install.<\/p><\/dd>\n<dt id=\"is%20the%20webhook%20required%3F\"><h3>Is the webhook required?<\/h3><\/dt>\n<dd><p>It is strongly recommended \u2014 it is how payments are confirmed reliably. As a fallback, the success page also confirms the payment when the visitor returns from Stripe.<\/p><\/dd>\n<dt id=\"where%20is%20card%20data%20handled%3F\"><h3>Where is card data handled?<\/h3><\/dt>\n<dd><p>Entirely on Stripe's hosted checkout page. Your site never sees or stores card numbers.<\/p><\/dd>\n<dt id=\"which%20currencies%20are%20supported%3F\"><h3>Which currencies are supported?<\/h3><\/dt>\n<dd><p>Any currency your Stripe account supports. A selection of common currencies is available in the settings, and zero-decimal currencies (such as JPY) are handled correctly.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"Add a modern Stripe payment form to any page with a shortcode, plus an admin payment summary, email alerts and webhook confirmation.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/331702","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=331702"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/demfilz"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=331702"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=331702"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=331702"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=331702"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=331702"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=331702"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}