Appointments Booking for Square puts your Square Appointments booking flow on your own WordPress pages with one shortcode. Clients book without leaving your website, and every appointment is created in your Square account, exactly like a booking made on Square’s own booking page.
Nothing to re-enter: services, prices, durations, team members, opening hours and intake questions are read live from Square. You keep managing everything in your Square Dashboard.
Features
- Four-step booking flow: service → option → date and time → contact details.
- Live Square data: services, variations, team members and availability for the location you choose.
- Square intake questions: the customer questions you set up in Square Appointments are asked at checkout.
- Every Square Appointments plan: connect with a personal access token (Plus and Premium) or with OAuth and your own Square application (required for the free plan).
- Two themes: Card and Square Classic, with your accent color and your theme’s fonts.
- Shortcode builder: pick a service or a team member by name and copy the shortcode.
- Several widgets per page, each with its own preselection.
- Terms and cancellation policy: optional terms checkbox with a pop-up, and your Square cancellation policy at checkout.
- Built-in protection: security token, anti-spam field and per-visitor limits on the booking form.
- Sandbox mode to test with Square’s sandbox before going live.
- Five languages: English, French, German, Spanish and Italian, for the booking widget and the settings. The widget follows the site language.
- Clean uninstall: every option and cached value is removed.
Shortcode
[absq_booking]
Optional attributes:
service_id — open a specific service (Square catalog item ID).
staff_id — book with a specific team member.
theme — card or square-classic for this page only.
Example: [absq_booking service_id="SERVICE_ID" staff_id="TEAM_MEMBER_ID" theme="square-classic"]
The shortcode builder in Settings → Square Booking fills in the IDs for you.
Pro and Tracking editions
The paid editions, available on square-appointment-wp.com, add Square payments (card on file or pay in full), more themes with fonts and colors, custom step labels, custom intake questions and multisite. The Tracking edition also sends every booking to Google Ads and Meta as a conversion.
External services
This plugin connects to Square, a third-party service, to show your services and availability and to create bookings. It does not work without a Square account.
Square API — connect.squareup.com (production) or connect.squareupsandbox.com (sandbox mode)
- When: when a visitor opens a page with the booking widget, when they pick a service or a date, and when they confirm a booking; also when an administrator tests the connection or uses the shortcode builder.
- What is sent: your access token, location ID and the requested service, team member and dates. When a visitor books: their first and last name, email, phone number, appointment note, intake answers and the selected time.
- Square terms of service: https://squareup.com/legal/general/ua
- Square privacy notice: https://squareup.com/legal/general/privacy
Square OAuth — connect.squareup.com/oauth2 or connect.squareupsandbox.com/oauth2
- When: only if you choose the OAuth connection. The administrator is sent to Square to authorize the application; tokens are then exchanged and refreshed once a day.
- What is sent: your Square application ID and secret, the authorization code and the refresh token.
Your terms page — the URL you enter in Terms page URL
- When: when a visitor opens the terms pop-up (cached for 12 hours). A page on your own site is read directly without any request.
- What is sent: a standard HTTP request to that URL.
The plugin does not send data to square-appointment-wp.com or any other service.