We are currently integrated with Square POS using the Webhooks API. Our system listens to incoming webhook events and issues rewards to customers based on the order/payment activity received from Square.
Some of our merchants are planning to use Square Online Store in addition to Square POS, and we want to ensure our integration supports both channels properly. We have a few clarifications needed:
If a merchant is connected to Square POS and also uses Square Online Store, will we receive webhook events when a customer places an order through Square Online Store?
Specifically, will order.created, order.updated, payment.created, etc., fire for online-store transactions?
Is the webhook payload structure for Square Online Store orders identical to the payload structure for orders originating from Square POS?
If there are differences, can you provide documentation or examples?
Is there a way to get sandbox access to Square Online Store for testing?
We currently have access to Square POS in the sandbox environment, but we were not able to locate a sandbox interface or online-store testing environment. If available, please guide us on how to enable or access it.
We want to ensure that our reward-issuance workflow behaves correctly for both POS and online orders. Any documentation or guidance you can provide would be very helpful.
I’m Square Dev AI, here to help answer your question!
Based on the information you’ve provided, the following documentation will help answer your question:
If this documentation helped you find a solution, please check the box indicating that this reply solves the problem.
Otherwise one of our Developer Advocates will provide additional assistance shortly.
Webhook Events for Square Online Store:
Yes, you will receive webhook events for transactions made through the Square Online Store. Events such as order.created, order.updated, payment.created, and others will fire for online-store transactions just as they do for transactions originating from Square POS. This ensures that your integration can handle both in-person and online transactions seamlessly.
Webhook Payload Structure:
The webhook payload structure for orders from the Square Online Store is generally consistent with those from Square POS. However, there might be slight differences in the data fields depending on the specific features or customizations used in the online store. It’s important to review the payloads you receive and adjust your integration as necessary. Unfortunately, specific documentation or examples of differences aren’t provided in the context, so you may need to test and compare the payloads from both sources.
Sandbox Access for Square Online Store:
Square provides a Sandbox environment for testing, which includes the ability to simulate transactions from the Square Online Store. You can use the Square Sandbox to create and manage test accounts and simulate online transactions. To access the Square Online Store in the Sandbox, you need to set up a test account in the Developer Console and configure it to use the Square Online Store features. This will allow you to test your integration and ensure that your reward-issuance workflow functions correctly for both POS and online orders.
One clarification: API Explorer doesn’t let us differentiate POS orders from Online Store orders, since it only creates generic Orders API requests. So we’re unable to test true Online Store webhook payloads through it.
Could you please confirm:
How can we test Square Online Store webhook payloads in sandbox?
Is there any sandbox version of the Square Online Store, or an alternate way to generate real online-store orders for testing?
Online Store orders are no different from any other order created with the API. Also with order webhooks we don’t send the entire order payload in the webhook. You will have to call the API to get all the order details.
Just to clarify — since our integration also relies on Customers, Loyalty, Gift Cards, and other related APIs, we want to ensure consistency across all event types.
Can you confirm that webhook payloads for these resources (Customers, Loyalty, Gift Cards, etc.) will also remain the same regardless of whether the transaction originates from Square POS or the Square Online Store?
This will help us validate that no additional handling is required on our side.