How to Set Up Square Webhook Notifications with Webhookify

Square is a comprehensive commerce platform that enables businesses to accept payments in person, online, and through invoices. From point-of-sale terminals to e-commerce checkout, Square powers millions of merchants worldwide. Square's webhook system (called "event notifications") lets you receive real-time HTTP callbacks when events occur in your Square account -- payments processed, orders created, inventory changes, customer updates, and more. With Webhookify, you can transform those Square webhook events into instant, AI-powered notifications delivered to Telegram, Discord, Slack, Email, or mobile push with a cash register sound for every sale. Whether you run a retail store, restaurant, or online shop, knowing about every transaction in real time keeps you connected to your business.
This guide walks you through the complete setup for connecting Square webhooks to Webhookify so you receive instant payment and order notifications wherever you are.
Why Monitor Square Webhooks with Webhookify?
-
Instant Payment Notifications with Cash Sound: Get a push notification with a cash register sound on your phone every time a payment is completed through Square. Whether the sale happens at your physical register, online store, or through a Square invoice, you will hear it instantly.
-
Order Tracking Across Channels: Monitor orders placed through Square Online, Square POS, or third-party integrations. Webhookify alerts you on Slack or Discord when new orders come in, so your fulfillment team can act immediately.
-
Inventory Change Alerts: Track inventory count changes in real time. Get notified when stock levels drop below thresholds or when catalog items are updated, helping you prevent stockouts and manage your product catalog proactively.
-
AI-Powered Transaction Summaries: Square webhook payloads contain complex nested objects with money amounts, item details, tender information, and customer references. Webhookify's AI translates these into clear summaries like "Payment completed: $47.50 (Visa ending 4242) for Order #1234."
-
Multi-Location Monitoring: If you operate multiple Square locations, route webhooks from all locations to a single Webhookify endpoint. Each notification identifies the location, giving you a centralized view of business activity across all your stores.
Prerequisites
- A Square account (merchant account). Sign up at squareup.com if you do not have one.
- A Square Developer account and application. Create one at developer.squareup.com.
- A Webhookify account. Sign up for free at webhookify.app.
- A notification channel configured in Webhookify (Telegram bot, Discord webhook, Slack workspace, or Email address).
- Access to the Square Developer Dashboard with permissions to manage webhook subscriptions.
Step-by-Step Setup Guide
Create a Webhookify Endpoint
Log in to your Webhookify dashboard at webhookify.app and click "Create Endpoint." Name it something like "Square Payments" or "Square Store Alerts."
Webhookify generates a unique HTTPS URL:
https://hook.webhookify.app/w/your-unique-endpoint-id
Copy this URL. The endpoint is live immediately and ready to receive webhook events from Square. All incoming payloads are logged in real time on your Webhookify dashboard.
Configure Your Notification Channel
Navigate to Settings in your Webhookify dashboard and set up your preferred notification channels:
- Telegram: Connect the Webhookify bot for personal sale alerts. Ideal for business owners who want to track every transaction in real time.
- Discord: Add a Discord webhook URL for team notifications. Create a #sales channel so your entire team sees incoming orders.
- Slack: Connect your Slack workspace for professional operations. Route payment alerts to your operations or finance channel.
- Email: Enter your email for transaction records and accounting purposes.
- Mobile Push: Install the Webhookify app on iOS or Android. Enable the cash sound notification for payment events -- every time a Square payment completes, you will hear a satisfying cash register sound on your phone.
For retail and restaurant businesses, mobile push with cash sound is the most popular configuration. It gives owners and managers instant awareness of business activity throughout the day.
Set Up Webhooks in Square
Configure Square to send webhook events to your Webhookify endpoint:
- Go to the Square Developer Dashboard.
- Select your application (or create a new one if you do not have one).
- In the left sidebar, click Webhooks (under your application settings).
- Click "Add subscription" or "Subscribe to events".
- In the Notification URL field, paste your Webhookify endpoint URL.
- Choose the events you want to subscribe to (see the next step for available events).
- Select the API version (use the latest version for the newest event types).
- Click Save.
Square requires that your webhook endpoint responds with a 200 status code within 10 seconds. Webhookify endpoints respond instantly, so this requirement is always met.
If you are using the Square Sandbox environment for testing, configure the webhook under the Sandbox tab before switching to Production.
Select Events to Monitor
Square offers a wide range of webhook event types organized by product area. Select the events most relevant to your business:
Payment Events:
payment.completed-- A payment has been successfully processed.payment.created-- A new payment record has been created.payment.updated-- A payment has been modified (refund applied, status change, etc.).
Order Events:
order.created-- A new order has been placed.order.updated-- An order has been modified.order.fulfilled-- An order has been marked as fulfilled.
Invoice Events:
invoice.created-- A new invoice has been created.invoice.published-- An invoice has been sent to the customer.invoice.payment_made-- A payment has been made on an invoice.invoice.canceled-- An invoice has been canceled.
Customer Events:
customer.created-- A new customer profile has been created.customer.updated-- Customer information has been modified.customer.deleted-- A customer profile has been removed.
Catalog Events:
catalog.version.updated-- Your product catalog has been modified (items added, removed, or updated).
Inventory Events:
inventory.count.updated-- Inventory count has changed for one or more items.
For most retail businesses, subscribing to payment.completed, order.created, and inventory.count.updated covers the essential real-time monitoring needs.
Test Your Configuration
Test your webhook setup using Square's tools:
- In the Square Developer Dashboard, navigate to your webhook subscription.
- Use the "Send test event" button (if available) to send a sample event to your Webhookify URL.
- Alternatively, use the Square Sandbox to simulate a payment:
- Switch to the Sandbox environment in the Developer Dashboard.
- Use the Square Sandbox POS app or API to process a test payment.
- The webhook should fire within seconds.
- Check your Webhookify dashboard for the incoming webhook payload.
- Verify that your notification channel received the alert.
- If you enabled the cash sound on mobile, you should hear it for
payment.completedevents.
Once testing is successful in Sandbox, make sure your Production webhook is configured with the same Webhookify URL to start receiving real payment notifications.
Square Webhook Events You Can Monitor
Complete reference of Square webhook event types that Webhookify captures:
Payments:
payment.completed-- Payment successfully processedpayment.created-- New payment record createdpayment.updated-- Payment modified (refund, void, etc.)
Orders:
order.created-- New order placedorder.updated-- Order modifiedorder.fulfilled-- Order marked as fulfilled
Invoices:
invoice.created-- New invoice createdinvoice.published-- Invoice sent to customerinvoice.payment_made-- Payment received on invoiceinvoice.updated-- Invoice modifiedinvoice.canceled-- Invoice canceledinvoice.scheduled_charge_failed-- Scheduled invoice charge failed
Customers:
customer.created-- New customer profile createdcustomer.updated-- Customer info modifiedcustomer.deleted-- Customer profile removed
Catalog:
catalog.version.updated-- Catalog items added, removed, or modified
Inventory:
inventory.count.updated-- Stock count changed
Refunds:
refund.created-- Refund issuedrefund.updated-- Refund status changed
Disputes:
dispute.created-- Payment dispute (chargeback) openeddispute.state.updated-- Dispute status changed
Each payload includes the merchant ID, location ID, event timestamp, and the full data object for the affected resource.
Real-World Use Cases
-
Retail Store Owner Dashboard: Set up mobile push notifications with cash sound for every
payment.completedevent. Whether you are on the shop floor, at lunch, or at home, you will know the instant a sale is made. The notification includes the payment amount and method, giving you a running sense of daily revenue. -
Restaurant Order Management: Route
order.createdevents to a Discord or Slack channel for your kitchen and front-of-house team. When a new order comes in through Square Online or a delivery platform, the team gets an immediate alert with the order details. -
Inventory Management: Monitor
inventory.count.updatedevents to track stock levels in real time. Get a Telegram alert when inventory for a popular item drops below a threshold, so you can reorder before running out. -
Invoice Payment Tracking: Forward
invoice.payment_madeevents to email for your accounting team. Every time a customer pays an invoice, a notification with the payment amount and invoice details is sent automatically, reducing manual follow-up.
Example Notification
When a payment is completed in Square, Webhookify delivers a notification like this:
{
"merchant_id": "ML1A2B3C4D5E6F",
"type": "payment.completed",
"event_id": "evt_1a2b3c4d5e6f7g8h9i0j",
"created_at": "2026-02-21T12:45:30.000Z",
"data": {
"type": "payment",
"id": "pay_abc123def456",
"object": {
"payment": {
"id": "pay_abc123def456",
"amount_money": {
"amount": 4750,
"currency": "USD"
},
"total_money": {
"amount": 4750,
"currency": "USD"
},
"status": "COMPLETED",
"source_type": "CARD",
"card_details": {
"card": {
"card_brand": "VISA",
"last_4": "4242"
},
"status": "CAPTURED"
},
"location_id": "LOC_XYZ789",
"order_id": "ord_987654321",
"created_at": "2026-02-21T12:45:28.000Z"
}
}
}
}
Webhookify's AI summary would display:
Square Payment Completed: $47.50 USD via Visa ending 4242. Status: COMPLETED. Order: ord_987654321. Location: LOC_XYZ789.
If you have the cash sound enabled, you will hear a "cha-ching" along with this notification.
Troubleshooting
-
No events received after configuring the webhook: Verify your webhook subscription is active in the Square Developer Dashboard. Also check that you are using the correct environment -- Sandbox webhooks only fire for Sandbox transactions, and Production webhooks only fire for real transactions.
-
"Signature validation failed" errors in Square Dashboard: Square signs every webhook payload with a signature that can be validated using your webhook signature key. While Webhookify receives the payload regardless of signature validation, if you see delivery failures in Square, ensure the Notification URL is exactly correct.
-
Payment events received but order events missing: Payment and order events are separate subscriptions in Square. Make sure you subscribed to both
payment.completedandorder.createdif you want both types of notifications. Go back to the Webhooks section and add the missing subscriptions. -
Events are delayed by more than a minute: Square generally delivers webhook events within a few seconds, but during high-volume periods (like holidays), there may be slight delays. This is on Square's end and not related to Webhookify. If delays persist, check the Square Developer Status page.
-
Duplicate events received: Square may retry webhook delivery if it does not receive a 200 response quickly enough. Webhookify responds immediately, but network issues could occasionally cause retries. Each event has a unique
event_idthat you can use to identify duplicates.
Square's webhook events include a location_id field that identifies which of your Square locations generated the event. If you run multiple stores or restaurants, you can use this to differentiate between locations in your Webhookify notifications. Name your locations clearly in the Square Dashboard so the location ID is easy to reference.
Hear Every Square Sale Instantly
Create a free Webhookify endpoint and get instant Square payment notifications with a cash sound on your phone, plus alerts on Telegram, Discord, and Slack.
Get Started FreeRelated Articles
- The Ultimate Webhook Debugging Guide
- How to Set Up Webhook Notifications in Slack
- E-Commerce Webhook Monitoring: Never Miss a Sale
- Revenue Monitoring for Indie Hackers & Solo Founders
- How to Set Up Stripe Webhook Notifications
- How to Set Up Razorpay Webhook Notifications