The Simple BnB Rental plugin natively integrates with Stripe Checkout, allowing you to accept secure payments for bookings directly on your WordPress site. This guide walks you step-by-step through the correct Stripe configuration and how to connect it to the plugin.
Create a Stripe account
If you don’t have an account yet, go to: https://dashboard.stripe.com/register
Complete the free registration. Once your account is verified, you can access the Stripe Dashboard.
Enable online payments in the plugin
In your WordPress admin panel go to Settings → Payments (Stripe) and Enable online payments. This option activates Stripe integration for the plugin’s frontend checkout.
Set the charge mode
Under Charge mode, choose whether you want to charge:
• Full amount – charge the full booking amount immediately
• Deposit (%) – charge only a percentage (set in the next field)
Example: Set “Deposit (%) = 30” to take a 30% deposit and collect the remaining balance manually from the guest.
Add your Stripe keys
In the Stripe Dashboard, open:
Developers → API keys
Copy:
• Publishable key (starts with pk_live_...)
• Secret key (starts with sk_live_...)
Paste these into the corresponding plugin fields:
| Plugin field | Stripe Value |
|---|---|
| Stripe publishable key | pk_live_... |
| Stripe secret key | sk_live_... |
Tip: If you want to test the flow first, use the test keys (pk_test_… and sk_test_…). You can switch to the “live” keys once you’re ready to accept real payments.
Configure the Webhook
A webhook is required for automatically updating the reservation status after a successful payment. Stripe uses it to notify your website when a checkout session has been paid.
In your Stripe Dashboard go to: Developers → Webhooks and click + Add destination
Select the events to listen for

When creating a new Destination (previously called “Webhook endpoint”), Stripe asks which events to send.
- Select Your account – this means your site receives events from your main Stripe account.
- Leave API version as it is. Stripe automatically selects the current one.
Simple B&B Rental is compatible with both current and past versions. - In the Events section, leave All events selected.
- Search for and select checkout.session.completed.
This is the only event the plugin needs to confirm the reservation after payment.

💡 Non è necessario selezionare altri eventi: il plugin utilizza solo
checkout.session.completed.
Click Continue.
Choose the destination type

Stripe now asks where to send the events. For Simple BnB Rental you must select:
Webhook endpoint
“Send webhook events to a hosted endpoint.”
This is the correct option because the plugin receives Stripe events through a dedicated WordPress endpoint. Then click Continue.
Configure your destination (Webhook)

In this final step, Stripe asks for the URL where events should be sent.
You will see several preset fields:
• Events from: Your account
• Payload style: Snapshot
• API version: the one selected previously
• Listening to: checkout.session.completed
Destination Name
Stripe suggests a random name (e.g., “captivating-serenity”). You can keep it or replace it with something like: Simple BnB Rental – Webhoo
This is just a label and has no impact on functionality.
Endpoint URL
Paste the plugin’s webhook URL:
https://www.yourdomain.com/wp-json/simpbnb/v1/stripe/webhook
Replace yourdomain.com with your actual domain.
This is the most important part of the entire configuration.
Description (optional)
You may leave it blank or add something like:
• “Webhook for Simple BnB Rental bookings”
• “Receives checkout.session.completed event”
• “Webhook – production”
• “Webhook – test environment”
Retrieve the Webhook Signing Secret

After creating the destination, Stripe shows the detail page for your webhook. Here you will find the Signing secret box.
This value is essential: the plugin uses it to verify that every request truly comes from Stripe.
To reveal it:
- Click the eye icon to view the full secret
- Click the copy icon to copy it
Then paste it into the plugin field Stripe webhook signing secret inside Settings → Payments (Stripe)
Once saved, the webhook is active and your site will automatically confirm bookings after payment in the most reliable way.
Without a webhook, the plugin still confirms the reservation after returning from the “Success” page, but the webhook provides an extra level of safety and accuracy.


