Square is the card processor DojoMesh uses to store cards on file, run recurring billing, take one-time card payments in the member portal and issue refunds. Connecting it takes three values from Square and one settings page in DojoMesh.
Before you start
You will need:
- A Square account for your academy that is activated to take payments. If you already use a Square reader or the Square app at the front desk, this is that same account.
- An admin login to DojoMesh for your academy, at https://your-academy.dojomesh.com/platform/.
- About fifteen minutes. There is nothing to install.
DojoMesh talks to Square directly using your own account. Payments land in your Square balance and show up in your Square Dashboard under the location you choose. DojoMesh does not add a percentage on top; you pay Square's normal processing fee to Square. You do not need a Square reader or terminal for any of this.
Sign in to the Square Developer Dashboard
Go to developer.squareup.com/apps and sign in with the same email and password you use for your Square Dashboard. Square sometimes calls this area the Developer Console. It is part of your existing account, not a separate signup.
The credentials you create belong to whichever Square account you are signed in to. If you sign in with a personal Square account, member payments will go to that account instead of the academy's. Check the business name in the top corner before you continue.
Create an application
An "application" is just Square's word for a set of credentials. You only need one for DojoMesh.
- Click the + button, or Create your first application if you have never made one.
- Name it DojoMesh so you can recognise it later.
- Accept Square's developer terms and click Save.
Square opens the new application on its Credentials page. Stay there for the next two steps.
Pick Sandbox or Production
At the top of the Credentials page there is a switch between Sandbox and Production. Every credential on the page changes when you flip it, and the two sets are not interchangeable.
| Mode | What it does | Choose it when |
|---|---|---|
| Sandbox | Pretend payments. Nothing is charged and no money moves. Uses Square's test card numbers. | You want to click through the whole flow first and see how it feels before real members are involved. |
| Production | Real payments. Cards are really charged and the money lands in your Square balance. | You are ready to bill members now. Most academies go straight here. |
Whichever you pick, you must select the matching Environment inside DojoMesh in step 6. A production token with the sandbox environment selected, or the other way round, is the single most common reason a setup fails.
If you have never used Square through software before, do a quick Sandbox run first (steps 4 to 7), then come back and repeat steps 4 to 6 with Production credentials. The section Going live after testing covers the switch.
Copy the Application ID and Access Token
Still on the Credentials page, you need two values. Copy each one somewhere safe for a moment, such as a private note, and delete it once you have pasted it into DojoMesh.
| Value | Where it is | What it looks like |
|---|---|---|
| Application ID | Near the top of the Credentials page. Click the copy icon beside it. | Production: sq0idp-… Sandbox: sandbox-sq0idb-… |
| Access Token | Below the Application ID. Click Show, then copy the whole string. | A long string beginning EAAA… in both modes. |
Anyone holding it can charge cards and issue refunds on your Square account. Never email it, paste it into a chat, or include it in a screenshot when asking for help. DojoMesh support will never ask you to send it.
The Application ID is not secret. It is used in the browser to load Square's card entry form, and it only works together with your token.
Copy the Location ID
Every Square account has at least one location, and every payment has to be filed under one. DojoMesh needs to know which.
- In the left-hand menu of your application, click Locations.
- Find the location that should receive member payments. Most academies have only one.
- Copy its Location ID. It starts with L followed by a block of letters and numbers.
In Sandbox mode the list shows a single test location called something like Default Test Account. That is the one to use for testing. Its ID will not work in Production, so you will copy a different one when you go live.
Pick the location whose sales you want the academy's card payments reported under in your Square Dashboard. It does not need to be the location where your card reader lives. If your academy has two physical locations on one DojoMesh account, choose the main one; all DojoMesh payments file under a single Square location.
Enter the credentials in DojoMesh
Now switch to your DojoMesh admin panel.
- Sign in at https://your-academy.dojomesh.com/platform/. If you use your own domain, sign in there instead; the pages are the same.
- In the top menu open SettingsGym Settings.
- Scroll to the Payment Methods card.
- Tick Square Credit Card. A set of Square fields appears underneath.
- Fill in the four fields using the table below.
- Just below the Square and Stripe sections, set Card Processing Gateway to Square. This tells DojoMesh which processor handles cards on file, recurring billing and online checkout. It is already Square on a new account, but check it.
- Click Save Settings at the bottom of the page.
| DojoMesh field | What to enter |
|---|---|
| Environment | Sandbox (Testing) or Production (Live). Must match the switch you used in step 3. |
| Application ID | The sq0idp-… or sandbox-sq0idb-… value from step 4. |
| Access Token | The EAAA… value from step 4. The field hides what you type. Paste it once and do not retype it by hand. |
| Location ID | The L… value from step 5. |
If you leave any of the three IDs blank while Square is ticked, the page will refuse to save and tell you which field is missing. Paste in all three at once and save once.
Copying from a web page sometimes picks up a space at the start or end of a value. DojoMesh trims those for you, but a value that has been split across two lines in your notes will not work. Each ID should be one unbroken string.
Run a test payment
Saving the settings does not contact Square. The first real check is adding a card, because that uses all three values at once: the Application ID loads the card form, the Location ID ties it to your account, and the Access Token saves the card.
- In the top menu open FinancialCards on File.
- Click Add Card and choose a member. For a first test use your own member record or a staff member, not a real student.
- Enter a card and save it.
- Back on Cards on File, charge that card a small amount, for example one dollar.
- Open your Square Dashboard and confirm the payment appears under the location you chose.
If you are in Sandbox
Real card numbers are rejected in Sandbox. Use Square's test card instead:
| Card number | 4111 1111 1111 1111 |
|---|---|
| Expiry | Any month and year in the future |
| CVV | 111 |
| Postal code | Any valid postal code, for example 94103 |
To see the test payment on Square's side, go back to the Developer Dashboard home, find the Sandbox test accounts panel and click Open in Square Dashboard beside your test account. That opens a sandbox copy of the normal Square Dashboard where the test payment is listed.
If you are in Production
Use a real card that you own. Charge one dollar, confirm it shows in your Square Dashboard, then refund it from the payment's row in FinancialManage Payments. That single round trip proves charging and refunding both work before any member is involved.
Going live after testing
When you are done with Sandbox and ready to bill real members, you need to replace all four values in Gym Settings, not just the Environment dropdown.
- In the Square Developer Dashboard, open your DojoMesh application and flip the switch at the top to Production.
- Copy the Production Application ID and Access Token (step 4) and the Production Location ID (step 5).
- In DojoMesh Gym Settings, change Environment to Production (Live), paste the three new values over the old ones, and save.
- Run the one-dollar charge and refund from step 7 with a real card.
Any cards you saved while in Sandbox exist only in Square's test system. After switching to Production they will not charge. Delete them from Cards on File and add real cards fresh. Members can also add their own card from the portal.
Troubleshooting
| What you see | What it usually means |
|---|---|
| "Square payment processing is not configured" when opening Cards on File or Add Card | One of the three IDs is blank, the Square Credit Card box is unticked, or Card Processing Gateway is set to Stripe. Reopen Gym Settings and check all four. |
| Gym Settings will not save and says an ID is required | Square is ticked but a field is empty. Paste all three values, then save. |
| The card entry form on Add Card never appears, or is blank | The Application ID does not match the Environment. A sandbox-sq0idb- ID needs Sandbox, a sq0idp- ID needs Production. A browser ad-blocker that blocks squarecdn.com causes the same symptom; try a private window. |
| Card form appears but saving the card or charging fails with an authorization or "unauthorized" error | The Access Token is wrong, was copied incompletely, belongs to the other environment, or has been replaced in Square. Click Show on the Credentials page and paste it again. |
| Error mentioning the location, or payments succeed but do not show in your Square Dashboard | The Location ID is from the other environment, from a different Square account, or from a location that has since been deactivated. Re-copy it from the Locations page. |
| Error mentioning currency | Your academy's currency in DojoMesh must match the currency of the country your Square account is registered in. A Canadian Square account can only charge CAD, a US account only USD. Check the currency setting in Gym Settings. |
| Card declined in Sandbox | Real card numbers are always declined in Sandbox. Use the test card in step 7. |
| Everything worked for months and suddenly every charge fails | Someone clicked Replace on the Access Token in the Square Developer Dashboard, which invalidates the old one instantly, or the Square account was deactivated. Paste the current token into Gym Settings. |
Keeping your token safe
- The Access Token is stored with your academy's settings and used only on DojoMesh's servers when talking to Square. It is never sent to a member's browser and never shown on the member portal.
- Anyone who can open Gym Settings in your academy can see the Square fields. Only give admin access to people who should be able to see that page.
- If you think the token has leaked, go to the Credentials page in the Square Developer Dashboard, click Replace beside the Access Token, and paste the new one into DojoMesh straight away. The old token stops working the moment you replace it, so do both steps together.
- Do not put the token in a screenshot, a support email, a shared document, or a group chat.
Common questions
Does DojoMesh take a cut of card payments?
No. Payments go straight from the member's card to your Square account. You pay Square's standard processing rate to Square, and your flat monthly DojoMesh subscription is the only thing you pay us.
Do I need a Square reader or the Square app?
No. Everything in this guide is online. If you already have a reader at the front desk it keeps working exactly as before, and both sets of sales show up together in your Square Dashboard.
Can I use Square and Stripe at the same time?
You can enter credentials for both, but only one can be the Card Processing Gateway, and that one handles all cards on file, recurring billing and online checkout. Cash, Interac e-Transfer and cheque are unaffected by this choice.
Do I need to set up webhooks for Square?
No. DojoMesh's Square integration works entirely through the three credentials above. Webhooks are a Stripe-only step.
Does the Access Token expire?
No. It stays valid until you replace it in the Square Developer Dashboard or close the Square account. You will not need to repeat this setup on a schedule.
Will members see any of this?
Members see a normal card entry form in the portal, styled to your academy. They never see your Square credentials or the Square Developer Dashboard.
What Square permissions does DojoMesh use?
Saving customers and cards, taking payments, and issuing refunds. A personal Access Token created the way this guide describes already covers all of those, so there is nothing extra to grant.