Square
Connect Square with production credentials — the Application ID, access token and Location ID, the location's currency, and the webhook ESTAGE adds.
Square takes card payments in a Square card form on your page — on order forms, paid meetings and the online store — into your own Square account. It charges in the currency of the Square location you connect.
| Where | What Square does |
|---|---|
| Order forms | One-time products, subscriptions, free trials and coupons. Returning buyers can pay with a saved card. |
| Paid meetings | The booking is paid on the page. A cancelled booking is flagged Refund by hand, and you refund it in Square. |
| Online store | The storefront checkout, in the location's currency. |
Before you start
- A Square account and an application in the Square Developer Console. The application is where the credentials come from.
- Production credentials only. ESTAGE connects to Square's production environment, so sandbox credentials don't work. To test, make a small real purchase and refund it.
- One location. Payments go to the location whose ID you enter, in that location's currency.
- Business Details. Square can't be ticked on an order form until every required field in Business Details is saved.
Getting your credentials
- Sign in to the Square Developer Console and open your application.
- Choose Credentials in the left pane, then Production at the top of the page.
- Copy the Application ID.
- In the Production Access token box, select Show and copy the token.
- Open Locations and copy the ID of the location that should receive the payments.
Square's guides: Access tokens and Locations.
Connecting Square
- In Genesis, open Settings → Payment Processing.
- On the Square card, select Connect.
- Paste the Application ID, the Access Token and the Location ID.
- Select Connect My Account.
Square connected appears and the card shows ACTIVE. If Square refuses the access token, the error begins with Square: and says why.
From your CRM it's the same: Settings → Payments, Connect on Square, the same three fields, then Connect.
The webhook
ESTAGE registers a webhook on your Square account as you connect; there's nothing to paste. Through it ESTAGE records:
- refunds you make in Square on store orders;
- each paid invoice of a subscription, so the order links to the latest one.
A refund you make in Square for an order-form purchase or a paid booking isn't sent to ESTAGE: the order and the access it granted stay as they were. If the access should end, remove it on the buyer's contact record in the CRM.
Turning Square on for products
- In the CRM, open Products and then the product.
- On the Pricing tab, add Square under Payment providers. The Currency menu disappears: the product takes the currency of your Square location.
- Enter the price, then select Update. For a monthly or annual product, saving creates its plan in your Square account.
- In the order form, tick Square in step 2.
A store product works the same way: with Square among its Payment providers, it's priced in the location's currency.
Testing and going live
There's no test mode, so try it with real money:
- Connect Square with your production credentials and turn it on for an inexpensive product.
- On your published site, buy it with a real card.
- Check the order in the CRM under Orders, then refund the payment in Square. The order in ESTAGE stays as it is.
To move to another Square account or location, disconnect Square, connect it with the new credentials, then add Square back under Payment providers on each product and select Update.
Things worth knowing
- Square sells in one currency — its location's. Choosing Square beside another provider prices the product in Square's currency, and a store cart in any other currency is refused with Square location takes …, the cart is in ….
- Refunds are made in Square. A store order records the refund by itself; for other orders, see The webhook.
- Paid bookings aren't refunded automatically. Cancelling one flags it Refund by hand in Bookings; refund it in Square.
Related: Payment Processing · Online store