When Bookly handles appointment scheduling and Square serves as the staff calendar source of truth, there is an inherent sync delay between the two systems. This delay creates a window during which two clients could book the same appointment slot — one through the WooCommerce/Bookly flow and one directly through Square's native booking interface. Minimizing this window is critical for any architecture that runs parallel booking channels.
This issue surfaced during the [1] project, where the confirmed stack is WooCommerce (checkout) + Bookly (scheduling UI) + Square (staff calendar source of truth), with Zapier removed.
The default Bookly-to-Square API sync interval is approximately 15 minutes. During this window:
This is not a purely theoretical edge case — La Marie Beauty retains clients who book directly through the Square app, making the parallel-channel conflict a real operational risk.
The following questions need to be resolved by the implementing engineer (Ishak, in the La Marie Beauty context):
"I would be curious if it is like on a default timer of 15 minutes or if we do have the ability to customize like the webhook events. And that's how we can get like, I mean, it doesn't have to be like instantaneous, like, you know, within two seconds. But even something like a minute is perhaps better." — Kimberly Gehrmann, La Marie Beauty call 2025-11-11
If the sync delay cannot be reduced below an acceptable threshold, consider these compensating controls:
WooCommerce (checkout) ──► Bookly (scheduling) ──► Square (calendar source of truth)
▲
Square native app bookings
Square remains the authoritative calendar. Bookly reads availability from Square and must write confirmed appointments back to Square promptly. The sync direction is Bookly → Square, not bidirectional in the problematic sense — but Square's native booking channel creates the competing write path.
See also:
- [2]
- [3]
- [4]