Connecting Stripe to WordPress should not start with copying secret keys into random settings. A reliable setup starts in test mode, connects the right Stripe account, builds one complete payment form, and proves the whole checkout flow before any customer sees it.
This guide shows how to integrate Stripe with WordPress using WP Full Pay, from installation through a controlled live launch. WP Full Pay is the payment plugin covered by this site, so the WordPress steps use its current Stripe Connect workflow.
The example uses a one-time payment form because it is the simplest end-to-end test. The same connection can later support subscription, donation, and save-card forms when those models fit your offer.
Table of contents:
Before you integrate Stripe with WordPress
A few decisions made before installation will prevent most setup loops. Prepare these items first:
- A compatible WordPress site. Confirm that the server meets the current WP Full Pay minimum requirements, and make a normal site backup before installing or updating plugins.
- A Stripe account for the correct business. Stripe availability and onboarding requirements depend on where the business operates. Check the current Stripe country list instead of trying to route an account through an unsupported location.
- An offer and price. Decide what the customer is buying, the currency, the amount, and whether the charge is one-time or recurring.
- A test page. Use a simple page that is not linked from the public navigation while the form is being configured.
- A launch checklist. Plan the confirmation page, receipt behavior, tax settings, refund process, and person responsible for monitoring transactions.
💡 Start in test mode: Stripe keeps test and live data separate. Products, prices, customers, and forms created for testing do not automatically become live objects.
How the connection works
WP Full Pay is a standalone Stripe payment plugin. It connects one Stripe account to a WordPress installation, lets you build payment forms in the WordPress dashboard, and sends the payment details required for Stripe to process a transaction.
The normal connection uses Stripe Connect. In WordPress, you choose Test or Live mode, select Connect with Stripe, and complete the Stripe onboarding screen. You do not paste publishable and secret keys into the standard connection flow.
Manual secret keys still have narrow documented uses, including custom code that uses the internal WP Full Pay API and the WP Full Members add-on. The separate Stripe API keys guide explains those credentials without turning them into the default setup method.
After the account is connected, a form can use an inline layout on the WordPress page or send the customer to a Stripe-hosted Checkout page. The best choice depends on the payment model and customer flow. The hosted versus on-site checkout guide compares the layouts in detail.
How to integrate Stripe with WordPress
Complete the workflow in this order. Keeping the account, product, price, form, and transaction in the same mode is the most important rule.
Step 1: Install and activate WP Full Pay
- In WordPress, open Plugins → Add New Plugin.
- Search for Stripe Payment Forms by WP Full Pay.
- Select Install Now, then Activate.
- Confirm that the Full Pay menu appears in the WordPress dashboard.
The plugin is also available from the official WordPress.org directory. If a paid ZIP file is used, upload it through Plugins → Add New Plugin → Upload Plugin, then activate it.
WP Full Pay in the WordPress plugin directory.
Install and activate WP Full Pay from the Add Plugins screen.
Step 2: Connect Stripe in test mode
- Open Full Pay → Settings.
- Open the Stripe account card.
- Set Account Mode to Test.
- Select Connect with Stripe. Stripe will open its own onboarding flow.
- Sign in to the intended Stripe account, complete any requested business details, and approve the connection.
- Return to WordPress and confirm that the test connection reports an enabled or complete status.
The official WP Full Pay screen keeps the Live and Test Stripe connections separate.
The current WP Full Pay Stripe Connect guide documents this mode-specific connection flow. Do not reveal or paste a Stripe secret key unless the internal API or Members add-on exception applies.
Step 3: Create a test product and price
Open the Stripe Dashboard and confirm that test data is active. In the Products area, add a product for the offer, then add a one-time price with the correct currency and amount.
- Use a clear product name that will make sense in both Stripe and WordPress.
- Select standard pricing and a one-time price for this walkthrough.
- Check the amount and currency before saving. Changing a price later may require a new Stripe Price object.
- Keep the test product clearly distinguishable from the live version.
The official one-time payment form tutorial shows the current product, price, form, shortcode, testing, and live-mode sequence.
- In WordPress, go to Full Pay → Payment Forms.
- Select Add form, choose Inline Payment or Checkout Payment for this one-time example, then enter a private form name and customer-facing display name.
- Create the form and open its Payment & Tax settings.
- Select Add products from Stripe, choose the test product and price created in the previous step, and add them to the form.
- Review the amount, currency, button label, billing fields, confirmation behavior, and email settings. Save the form.
Add the matching Stripe test product to the payment form.
📖 Need a different payment model? Compare Stripe payment form types before configuring fields that belong to another workflow.
Step 5: Embed the form on a WordPress page
Open Full Pay → Payment Forms and copy the form shortcode from the Shortcode column. Edit the test page, add a Shortcode block, paste the shortcode, and update the page.
Copy the payment form shortcode from the Payment Forms list.
View the page in a private browser window. Confirm that the form loads, the amount and currency are correct, and the page has no duplicate forms or unrelated checkout buttons. If the offer needs a compact call to action instead of a full embedded form, follow the separate Stripe payment button guide.
Step 6: Run a test transaction
Keep both WP Full Pay and Stripe in test mode. For a successful card test, Stripe documents 4242 4242 4242 4242 with any future expiration date and any valid CVC. Never enter a real card number in test mode.
- Submit the payment form with a test email address and Stripe test card.
- Confirm that the browser reaches the intended success or confirmation page.
- Open Full Pay → Transactions and verify the test transaction details.
- Verify the corresponding test payment in the Stripe Dashboard.
- Repeat the test with a documented declined-payment scenario and confirm that the customer receives a useful error without a false success message.
Stripe maintains the canonical test payment method reference. The practical WP Full Pay test transaction guide covers additional success and failure scenarios for WordPress.
Step 7: Complete the live setup
A passing test form is not automatically a live form. Test and live modes keep separate Stripe products, prices, customers, and configuration.
Confirm the Account mode before saving settings and embedding the corresponding form.
- In Full Pay → Settings → Stripe account, switch Account Mode to Live.
- Select Connect with Stripe and complete any remaining live-account onboarding. Confirm that the intended Stripe account is connected.
- Create the live product and live price in Stripe, checking the amount and currency again.
- Create or configure the live WP Full Pay form with the live product. A form tied to test objects will not work correctly in live mode.
- Replace the test shortcode on the public page with the live form shortcode.
- Complete a controlled live transaction with an authorized payment method, then verify it in WordPress and Stripe.
⚠️ Mode check: Before sharing the page, verify the live amount, currency, Stripe account, confirmation page, receipt, tax behavior, and form shortcode. A successful test does not validate a mismatched live product.
Once the connection works, choose the form that matches the actual payment relationship. Do not force a recurring offer into a one-time form or collect a payment method for later use without a clear operational need.
| Form type | Best fit | Important setup decision |
|---|
| One-time payment | A single product, service, registration, or fixed invoice-like charge | Preset amount, selectable products, or customer-entered amount |
| Subscription | Recurring services, plans, or memberships | Billing interval, trial, setup fee, cancellation, and customer portal behavior |
| Donation | One-time or recurring contributions | Suggested amounts, custom amount, frequency, and confirmation language |
| Save card | A legitimate later-charge workflow | Consent, the later charging process, and who is allowed to initiate a charge |
The official WP Full Pay form type reference explains the current capabilities and shared fields. Availability can still depend on the form layout, Stripe account, currency, country, and payment method.
Troubleshoot common integration problems
The Stripe connection is incomplete
Return to Full Pay → Settings → Stripe account, confirm the selected mode, and reopen the Stripe onboarding flow. Stripe may require additional identity, business, website, or bank details before the connection is enabled. Do not create a second Stripe account merely to bypass an incomplete status.
Stripe products do not appear in the form editor
Check the mode first. Test products are available to test forms, while live products are available to live forms. Then confirm that the product has an active price in the expected currency and that WordPress is connected to the Stripe account where it was created.
A form that references objects from the other mode can return an error. Switch back to the intended mode for testing, or create a live form using live products and replace the shortcode on the public page.
Confirm that the copied shortcode belongs to an active form and sits in a Shortcode block, not a normal paragraph. Test it on a clean page, clear page and CDN caches, and temporarily disable script optimization if it changes the checkout JavaScript. Browser console errors can help identify a theme or plugin conflict.
A payment method is missing
Stripe controls payment method eligibility using factors such as account country, customer location, currency, and transaction details. WP Full Pay cannot make every method appear for every customer. Check the current Stripe-supported payment methods guide before treating a missing method as a connection failure.
Stripe and WordPress questions
Does WordPress connect to Stripe on its own?
No. WordPress needs a payment plugin or a custom integration to create the checkout experience and communicate with Stripe. This workflow uses WP Full Pay and Stripe Connect.
Do you need Stripe API keys?
Not for the standard WP Full Pay connection. Stripe Connect is the default. Manual secret keys remain relevant for the documented internal API and Members add-on.
Does WP Full Pay integrate with WooCommerce?
No. WP Full Pay is a standalone plugin and is not a WooCommerce integration. It can run on the same WordPress site, but its forms, products, and transactions remain separate from the WooCommerce checkout.
Yes, when a focused call to action suits the page. The button still needs a correctly configured payment destination, test coverage, and a clear amount or offer. It does not remove the need to verify the complete checkout.
Stripe and WordPress go-live checklist
- ✅ The intended Stripe account is connected in Test and Live modes.
- ✅ Test and live products use the correct amount and currency.
- ✅ A successful test and a declined-payment test behave as expected.
- ✅ The public page contains the live form shortcode, not the test form.
- ✅ Confirmation, email, tax, refund, and support paths have an owner.
- ✅ The live transaction appears in both WP Full Pay and Stripe.
Once those checks pass, the integration has been tested as a complete payment flow, not just as a connected account. Keep the first public transactions under close review, and repeat the test checklist after changing the product, price, form layout, payment methods, or caching setup.
You can learn more about WP Full Pay, install the plugin, connect Stripe in test mode, and validate a complete payment before opening the form to customers.