company logo

Help center

Go to Teddy
All collectionsSetup and SettingsSettingsPayment Info (Square)

Payment Info (Square)

Connecting Teddy to Square via OAuth, what Square handles versus what Teddy handles, and disconnecting.

Payment Info (Square integration)

Payment Info (/settings/payment-info) is where you connect Teddy to Square — Square is the payment processor Teddy actually uses to charge cards, process refunds, and manage payment terminals. (The separate Card Processing sidebar item is a "Coming Soon" placeholder and not a working feature yet — Payment Info is where the real payment processing lives.)

The page title inside is "Square Payment Integration." Its subtitle says: "Connect your Square account to process payments directly from Teddy."

Two tabs

At the top of the page:

  1. Integration (default) — the connection status, merchant info, linked locations, and payment terminals

  2. Payments — a historical view of payments processed through the integration

The Integration tab is the one you'll actually configure. The Payments tab is for looking up past transactions.

Connecting Square for the first time

The connection flow uses Square's OAuth — meaning you never enter your Square password or credentials in Teddy. Instead, Teddy redirects you to Square's own login page, you sign in there, and Square sends you back with an authorization token.

Important privacy note: Teddy never sees or stores your Square password. All authentication happens on Square's side.

The general flow is:

  1. Open /settings/payment-info in Teddy

  2. Tap the Connect Square button (shown when no connection exists yet)

  3. Teddy opens a Square login page in a new tab

  4. Sign in with your Square merchant credentials on Square's page

  5. Square asks you to authorize the specific permissions Teddy needs

  6. Tap Allow

  7. Square redirects you back to Teddy with a connection confirmation

Once connected, the Integration tab shows the full connection status.

Reading a connected status

When Square is connected, you'll see a big Square Connected indicator and several fields:

  • Merchant ID — your unique Square merchant ID (e.g., S60JT6W7MNDNC)

  • Connected: — the date and time the integration was first authorized (e.g., February 20, 2026 at 09:10 AM)

  • Locations: N — how many Square locations are linked. A location is a physical business address registered with Square. Each location has:

  • Location name

  • Physical address (city, zip)

  • Capabilities list (e.g., CREDIT CARD PROCESSING, AUTOMATIC TRANSFERS)

  • A Link Device button for pairing payment terminals

  • Payment Terminals: N — how many Square terminal devices are paired. Each terminal card shows:

  • Terminal name and device type (e.g., TERMINAL_API)

  • Which location it's assigned to

  • A short pairing Code

  • A PAIRED indicator

Authorized Permissions

Below the locations and terminals, Teddy shows the full list of permissions you granted Square. These are technical scope names like:

  • MERCHANT PROFILE READ / MERCHANT PROFILE WRITE

  • PAYMENTS READ / PAYMENTS WRITE / PAYMENTS WRITE ADDITIONAL RECIPIENTS

  • BANK ACCOUNTS READ

  • SETTLEMENTS READ

  • ORDERS READ / ORDERS WRITE

  • ITEMS READ

  • CUSTOMERS READ / CUSTOMERS WRITE

  • DEVICE CREDENTIAL MANAGEMENT

  • DEVICES READ

  • INVENTORY READ / INVENTORY WRITE

  • INVOICES READ / INVOICES WRITE

  • CASH DRAWER READ

You don't need to understand each one. The short version: Teddy has read/write access to your Square merchant profile, payments, orders, customers, and payment terminals, which is what's needed to take payments and issue refunds from inside Teddy.

Linking a payment terminal

If you have a physical Square terminal device (like a Square Terminal or Square Register), you'll want to pair it with Teddy so it can accept card payments for appointments.

  1. Find the Link Device button next to the relevant location in the Integration tab

  2. Teddy generates a pairing code

  3. On your physical terminal, enter the code through Square's pairing flow

  4. The terminal registers with Teddy and appears in the Payment Terminals list with a PAIRED status

Once paired, that terminal is selectable when you're charging a client from an appointment or the Charge flow inside Teddy.

What Square handles vs. what Teddy handles

This split is worth understanding:

Square handles:

  • The actual card reading and transaction processing

  • PCI compliance (you never touch raw card data)

  • Deposits to your bank account

  • Square-side refunds and chargebacks

  • Payment terminal hardware

Teddy handles:

  • Associating a charge with a specific appointment and client

  • Remembering which Square terminal is at which location

  • Surfacing the Charge Now button on the appointment detail panel

  • Recording revenue in the Reports Overview

In other words, Teddy is a thin coordination layer over Square. If payment processing ever feels broken, the first question is almost always "is Square itself still working?" — check your Square dashboard directly.

Disconnecting Square

At the bottom of the Integration tab is a Disconnect Square button. Tap it to revoke the OAuth connection.

Consequences of disconnecting:

  • Teddy loses the ability to charge cards or issue refunds from inside the app

  • The Charge Now button on appointments stops working

  • Paired terminals become unusable through Teddy (they still work directly through Square)

  • Past transaction records stay intact — disconnecting doesn't delete history

Disconnect if you're switching Square accounts (for example, changing legal business entities) or if you're migrating away from Square entirely.

Privacy and security notes

  • Teddy never stores your Square password. OAuth means your credentials live only on Square's side.

  • Card data is never touched by Teddy. Cards go directly to Square's PCI-compliant infrastructure.

  • Your clients' saved cards are stored by Square, not Teddy. When you "save a card on file" for a client, you're actually creating a customer record in Square with a tokenized card reference.

  • Deposits go to whatever bank account is linked on the Square side. Change that in the Square dashboard, not in Teddy.

If the connection drops

OAuth tokens can occasionally expire or get revoked (for example, if Square detects unusual activity). If you notice that Charge Now suddenly isn't working:

  1. Go to /settings/payment-info

  2. Check if the Integration tab still shows "Square Connected"

  3. If it shows a disconnected state, reconnect by going through the OAuth flow again

  4. If it shows connected but charges still fail, check the Square dashboard directly for any holds or issues

Tip: Do a test charge with Square for $1 immediately after connecting, then refund it. Five minutes of verification here saves hours of "why won't this charge go through" during a real appointment six weeks from now.


Did this answer your question?
😞
😐
😁