Hey Bubble community!
I’m excited to share a completely free plugin that solves a common challenge for Square integrations: securely verifying incoming webhooks directly in Bubble.
What this plugin does
The Square Webhook Verifier validates that incoming Square webhooks are authentic by:
- Verifying the cryptographic signature from Square
- Ensuring the webhook hasn’t been tampered with
- Processing everything natively within Bubble (no third-party services needed)
Why you need webhook verification
If you’re receiving webhooks from Square (for payments, refunds, inventory updates, etc.), it’s crucial to verify they’re actually coming from Square and not a malicious actor. Without verification, your app could process fake orders, invalid refunds, or have its data compromised.
Square uses HMAC-SHA256 signatures to secure webhooks - this plugin handles all the cryptographic verification for you, so you can focus on building your application.
Why use this instead of Hookdeck or other webhook services?
Third-party webhook services like Hookdeck, Pipedream, and others certainly have their place, but they come with drawbacks:
- Additional costs: Most charge based on webhook volume, which can get expensive as your app scales
- Extra latency: Your webhooks pass through their servers before reaching your app
- Another dependency: One more service that could experience downtime
- Data privacy concerns: Your webhook data passes through another company’s infrastructure
- Complex setup: Requires configuring yet another service outside of Bubble
This plugin keeps everything native within Bubble - giving you:
- Direct webhook processing with minimal latency
- No additional monthly costs based on volume
- Simplified architecture with fewer points of failure
- Complete control over your data flow
- All verification happens directly in your Bubble app
Quick setup (takes less than 5 minutes!)
- Install the free plugin from the Bubble marketplace
- Add your Square Webhook Signing Key in Settings → API Keys
- In your backend workflow, add the “Verify Square Webhook” action:
- raw_body → Request Data’s raw body
- signature_header → X-Square-Signature header
- webhook_url → your full webhook URL
- Add conditional logic to only process verified webhooks
Why I created this
I built this plugin initially for my own Square integrations after struggling with webhook security. I spent significant time researching Square’s documentation and implementing proper signature verification—a critical but often overlooked aspect of payment integrations.
Rather than keep this solution to myself, I’m sharing the Square version completely free with no limitations! I believe in contributing useful tools to the Bubble community that help us all build more secure applications.
The free version is fully functional for Square webhooks and isn’t limited in any way. It’s my way of giving back to the community while offering a premium option for those with more complex needs.
Example workflow
Here’s a simple backend workflow that verifies Square webhooks:
Need verification for other providers?
I’ll be also offering a Multi-Provider Webhook Verifier ($4/month or $20 one-time) that supports:
- Square
- Stripe
- Shopify
- Slack
- Twilio
- SendGrid
The premium version includes powerful features:
- Data extraction: Automatically pulls out event_type, event_id, and created_at timestamps
- Provider-specific handling: Each service uses different cryptographic methods and timestamp formats
- Enhanced error handling: Detailed error codes for debugging
- Consistent return structure: Standardized responses across all providers
- Ongoing updates: Support for new providers and security updates as they evolve
This saves you from building separate verification workflows for each provider and keeps everything within your Bubble app—no need for external services like Hookdeck that add complexity and cost to your stack.
The premium version is perfect for businesses that:
- Integrate with multiple payment/ecommerce providers
- Need to process webhooks at scale
- Want to reduce external dependencies
- Value having everything handled natively in Bubble
[Link to premium plugin will be available once I create a demo app and Bubble approves]
Documentation & Support
For detailed implementation instructions, visit the plugin page once it’s approved.
Demo page (head to backend workflows): Link Here
If you have any questions or feedback about the free Square Webhook Verifier, please comment below or reach out via DM!
Happy building!