Skip to content

Payment Gateway

Square
API integration

Ship Payment Gateway features without building the integration. Full Square API access via Proxy, normalized data through Unified APIs, and 280+ MCP-ready tools for AI agents — all extensible to your exact use case.

Talk to us
Square

Use Cases

Why integrate with Square

Common scenarios for SaaS companies building Square integrations for their customers.

01

Sync Square employee rosters into your SaaS product automatically

SaaS companies serving SMB merchants can pull employee profiles, job titles, pay rates, and location assignments directly from Square — eliminating manual CSV uploads and ensuring their product always reflects the merchant's current workforce.

02

Automate onboarding and offboarding workflows based on Square hiring events

When a merchant adds or terminates an employee in Square, your product can detect the change and automatically provision or revoke access, assign training, or update compliance records without any manual intervention.

03

Map employees to locations for multi-site workforce tools

For SaaS products that serve multi-location retailers, restaurants, or franchises, syncing Square's location-to-employee assignments ensures scheduling, communications, and compliance features always reflect where each worker is stationed.

04

Streamline benefits enrollment with real-time census data from Square

Benefits administration and HR compliance platforms can pull demographic data, hire dates, and employment status from Square to automate census collection and manage enrollment windows — replacing the back-and-forth of spreadsheet requests with merchants.

05

Power time-off-aware scheduling with Square leave type data

Workforce management SaaS products can read time-off types and employee assignments from Square to ensure published schedules respect approved PTO and only include active employees at the correct locations.

What You Can Build

Ship these features with Truto + Square

Concrete product features your team can ship faster by leveraging Truto’s Square integration instead of building from scratch.

01

Auto-populated org chart from Square team data

Automatically build and maintain company org structures by syncing employees, their job titles, and manager relationships from Square into your product.

02

Location-aware employee directory

Display a live, filterable employee directory organized by Square location, so users always see who's assigned where across multiple stores or sites.

03

New hire detection and automated task assignment

Detect when a new employee appears in Square and automatically trigger onboarding workflows like training assignments, document requests, or access provisioning in your product.

04

Termination-triggered access revocation

Automatically revoke product access or flag compliance actions when an employee's status changes to inactive or terminated in Square.

05

Automated benefits census sync

Pull company and employee data from Square on a recurring basis to keep benefits enrollment records current without requiring merchants to export and upload spreadsheets.

06

Time-off type mapping for scheduling engines

Sync Square's configured time-off types into your scheduling or workforce planning product so managers can build rosters that account for PTO, sick leave, and other leave categories.

SuperAI

Square AI agent tools

Comprehensive AI agent toolset with fine-grained control. Integrates with MCP clients like Cursor and Claude, or frameworks like LangChain.

list_all_square_payments

List Square payments taken by the seller. Returns: id, amount_money, status, source_type, created_at.

get_single_square_payment_by_id

Get a Square payment by id. Returns the full payment object including amount_money, status, source_type, and receipt details. Required: id.

create_a_square_payment

Create a Square payment by charging a payment source (card nonce, card on file, or other). Returns the created payment object including id, status, and amount_money. Requires source_id, idempotency_key, and amount_money.

update_a_square_payment_by_id

Update a Square payment by id (e.g., adjust amounts, tip, or app fee on a delayed-capture payment). Returns the updated payment object. Requires id and idempotency_key.

square_payments_cancel

Cancel an uncompleted Square payment, releasing any held funds. Returns the canceled payment object with status CANCELED. Required: payment_id.

square_payments_complete

Complete (capture) an authorized Square payment. Returns the completed payment object with status COMPLETED. Required: payment_id.

square_payments_cancel_by_idempotency_key

Cancel a Square payment by the idempotency_key used when it was created, useful when the original create call timed out. Returns an empty object on success. Required: idempotency_key.

list_all_square_refunds

List payment refunds in Square. Returns an array of refund objects including id, amount_money, status, and created_at.

get_single_square_refund_by_id

Get a Square payment refund by id. Returns the refund object including amount_money, status, payment_id, and created_at. Required: id.

create_a_square_refund

Create a refund for a Square payment. Returns the created refund object including id, amount_money, status, and payment_id.

create_a_square_order

Create a new order in Square. Returns the created order including its id, location_id, line_items, totals, and state. Requires order with a location_id.

list_all_square_orders

Search Square orders across one or more locations. Returns: orders matching the query with their id, location_id, line_items, totals, and state. Requires location_ids.

get_single_square_order_by_id

Get a Square order by id. Returns the order object including id, location_id, line_items, totals, tenders, fulfillments, and state.

update_a_square_order_by_id

Update an open Square order by id. Returns the updated order including its line_items, totals, and version. Requires id and order with the current version.

square_orders_pay

Pay for a Square order using one or more payment IDs to settle the balance. Returns the paid order with its state set to COMPLETED. Requires order_id, idempotency_key, and payment_ids.

square_orders_clone

Clone an existing Square order as a draft to use as a template for a new order. Returns the newly created order with a new id. Requires order_id.

square_orders_calculate

Calculate totals, taxes, and discounts for a Square order without persisting it. Returns the order with computed total_money, total_tax_money, and total_discount_money. Requires order with a location_id.

square_orders_batch_get

Retrieve multiple Square orders in one call by their ids. Returns: orders array with each order's id, location_id, line_items, totals, and state. Requires location_id and order_ids.

list_all_square_order_custom_attribute_definitions

List order custom attribute definitions in Square. Returns the custom attribute definitions visible to the caller, including each definition's key, name, description, schema, and visibility.

get_single_square_order_custom_attribute_definition_by_id

Get a single order custom attribute definition in Square by id. Returns the definition including its key, name, description, schema, visibility, and version. Required: id.

create_a_square_order_custom_attribute_definition

Create an order custom attribute definition in Square. Returns the created custom attribute definition including its key, name, schema, visibility, and version. Required: custom_attribute_definition.

update_a_square_order_custom_attribute_definition_by_id

Update an order custom attribute definition in Square by id. Returns the updated custom attribute definition. Required: id, custom_attribute_definition.

delete_a_square_order_custom_attribute_definition_by_id

Delete an order custom attribute definition in Square by id. Required: id.

list_all_square_order_custom_attributes

List custom attributes set on a Square order. Returns the custom_attributes array with each attribute's key, value, and metadata. Required: order_id.

get_single_square_order_custom_attribute_by_id

Get a single custom attribute set on a Square order by id. Returns the custom_attribute object with its key, value, and metadata. Required: order_id and id.

square_order_custom_attributes_upsert

Create or update a custom attribute on a Square order. Returns the resulting custom_attribute object. Required: order_id and custom_attribute_key.

delete_a_square_order_custom_attribute_by_id

Delete a custom attribute from a Square order by key. Returns an empty response on success. Required: order_id and custom_attribute_key.

list_all_square_catalog_objects

List catalog objects in Square. Returns an array of catalog objects with their id, type, version, and type-specific data.

get_single_square_catalog_object_by_id

Get a Square catalog object by id. Returns the catalog object including its type, version, and type-specific data. Required: id.

square_catalog_objects_upsert

Create or update a Square catalog object. Returns the upserted catalog_object including its id, type, and version. Requires idempotency_key and object.

delete_a_square_catalog_object_by_id

Delete a Square catalog object and all of its related/nested objects by id. Returns the list of deleted_object_ids. Required: id.

square_catalog_objects_search

Search Square catalog objects using complex filters. Returns matching catalog objects with their id, type, and version.

square_catalog_objects_search_items

Search Square catalog items (ITEM and ITEM_VARIATION) by text, category, stock level, custom attributes, and more. Returns matching catalog items.

square_catalog_objects_batch_upsert

Create or update up to 10,000 Square catalog objects in batches. Returns the upserted objects with id_mappings between client-supplied ids and server ids. Requires idempotency_key and batches.

square_catalog_objects_batch_get

Retrieve a set of Square catalog objects by their ids. Returns the matching catalog objects and optionally any related objects. Requires object_ids.

square_catalog_objects_batch_delete

Delete a set of Square catalog objects by their ids in a single batch. Returns deleted_object_ids and a deleted_at timestamp. Requires object_ids.

square_catalog_objects_info

Get information about Square catalog API limits and configuration for the merchant account. Returns limits and standard_unit_description_group.

square_catalog_objects_update_item_modifier_lists

Update the modifier lists enabled for one or more Square catalog items. Returns the updated_at timestamp. Requires item_ids.

square_catalog_objects_update_item_taxes

Update the taxes applied to one or more Square catalog items. Returns the updated_at timestamp. Requires item_ids.

create_a_square_catalog_image

Create a catalog image in Square and optionally attach it to an existing catalog object. Returns the created image object including its id and image_data (name, url, caption).

update_a_square_catalog_image_by_id

Update an existing Square catalog image identified by id. Returns the updated image object including its id and image_data (name, url, caption). Required: id.

get_single_square_inventory_by_id

Get inventory counts for a Square catalog object across all locations. Returns: catalog_object_id, catalog_object_type, state, location_id, quantity, calculated_at. Required: id.

square_inventory_batch_get_counts

Batch-retrieve Square inventory counts for the specified catalog objects and locations. Returns: catalog_object_id, catalog_object_type, state, location_id, quantity, calculated_at.

square_inventory_batch_get_changes

Batch-retrieve Square inventory change history for the specified catalog objects and locations. Returns: type, physical_count, adjustment, transfer entries describing each inventory change.

square_inventory_batch_create_changes

Batch-create Square inventory physical counts, adjustments, and transfers in a single call. Returns the applied changes including their generated ids and resulting inventory states. Requires idempotency_key and changes.

square_inventory_get_adjustment

Get a single Square inventory adjustment by id. Returns: id, reference_id, from_state, to_state, location_id, catalog_object_id, quantity, occurred_at. Required: adjustment_id.

square_inventory_get_physical_count

Get a single Square inventory physical count by id. Returns: id, reference_id, catalog_object_id, state, location_id, quantity, occurred_at. Required: physical_count_id.

square_inventory_get_transfer

Get a single Square inventory transfer by id. Returns: id, reference_id, state, from_location_id, to_location_id, catalog_object_id, quantity, occurred_at. Required: transfer_id.

square_inventory_changes

List inventory change history for a Square catalog object. Returns: type, physical_count, adjustment, transfer entries describing each inventory change. Required: catalog_object_id.

list_all_square_customers

List customer profiles in Square. Returns an array of customer objects including id, given_name, family_name, email_address, phone_number, and created_at.

get_single_square_customer_by_id

Get a single Square customer profile by id. Returns the customer object including id, given_name, family_name, email_address, phone_number, address, and preferences. Required: id.

create_a_square_customer

Create a new customer profile in Square. Returns the created customer object including id, created_at, and the profile fields supplied in the request.

update_a_square_customer_by_id

Update an existing Square customer profile by id. Returns the updated customer object including id, updated_at, and the modified profile fields. Required: id.

delete_a_square_customer_by_id

Delete a Square customer profile by id. Returns an empty response on success. Required: id.

square_customers_search

Search for Square customer profiles using filter and sort criteria. Returns an array of matching customer objects including id, given_name, family_name, email_address, and phone_number.

square_customers_batch_create

Create multiple Square customer profiles in a single request. Returns a map of responses keyed by request id, each containing the created customer object or any error encountered.

square_customers_batch_get

Retrieve multiple Square customer profiles in a single request. Returns a map of responses keyed by customer id, each containing the customer object or any error.

square_customers_batch_update

Update multiple Square customer profiles in a single request. Returns a map of responses keyed by customer id, each containing the updated customer object or any error.

square_customers_batch_delete

Delete multiple Square customer profiles in a single request. Returns a map of responses keyed by customer id indicating success or any error encountered.

square_customers_add_group

Add a Square customer to a customer group. Returns an empty response on success. Required: customer_id and group_id.

square_customers_remove_group

Remove a Square customer from a customer group. Returns an empty response on success. Required: customer_id and group_id.

square_customers_create_card

Add a card on file to a Square customer profile. Returns the created card object including id, card_brand, last_4, exp_month, exp_year, and cardholder_name. Required: customer_id and card_nonce.

square_customers_delete_card

Remove a card on file from a Square customer profile. Returns an empty response on success. Required: customer_id and card_id.

list_all_square_customer_groups

List customer groups in Square. Returns the groups array with each group's id, name, and timestamps.

get_single_square_customer_group_by_id

Get a Square customer group by id. Returns the group object including id, name, and timestamps. Required: id.

create_a_square_customer_group

Create a new customer group in Square. Returns the created group object including its id, name, and timestamps.

update_a_square_customer_group_by_id

Update a Square customer group by id. Returns the updated group object. Required: id.

delete_a_square_customer_group_by_id

Delete a Square customer group by id. Returns an empty response on success. Required: id.

list_all_square_customer_segments

List customer segments defined in a Square seller account. Returns: id, name, created_at, updated_at.

get_single_square_customer_segment_by_id

Get a single Square customer segment by id. Returns: id, name, created_at, updated_at. Required: id.

list_all_square_customer_custom_attribute_definitions

List customer custom attribute definitions in Square. Returns the collection of custom_attribute_definitions defined on the seller's customer profiles.

get_single_square_customer_custom_attribute_definition_by_id

Get a Square customer custom attribute definition by id. Returns the custom_attribute_definition object. Required: id.

create_a_square_customer_custom_attribute_definition

Create a customer custom attribute definition in Square. Returns the created custom_attribute_definition.

update_a_square_customer_custom_attribute_definition_by_id

Update a Square customer custom attribute definition by id. Returns the updated custom_attribute_definition. Required: id.

delete_a_square_customer_custom_attribute_definition_by_id

Delete a Square customer custom attribute definition by id. Required: id.

list_all_square_customer_custom_attributes

List custom attributes assigned to a Square customer profile. Returns the customer's custom attribute values. Required: customer_id.

get_single_square_customer_custom_attribute_by_id

Get a single custom attribute assigned to a Square customer profile by id. Returns the custom attribute including its key and value. Required: customer_id, id.

square_customer_custom_attributes_upsert

Create or update a custom attribute for a Square customer profile. Returns the resulting custom attribute. Required: customer_id, custom_attribute_key.

delete_a_square_customer_custom_attribute_by_id

Delete a custom attribute from a Square customer profile. Returns an empty response on success. Required: customer_id, custom_attribute_key.

square_customer_custom_attributes_bulk_upsert

Create or update custom attributes for multiple Square customer profiles in a single request. Returns the resulting custom attribute values per customer.

list_all_square_cards

List cards on file in Square. Returns card objects including id, card_brand, last_4, exp_month, exp_year, and cardholder_name.

get_single_square_card_by_id

Get a Square card on file by id. Returns the card object including id, card_brand, last_4, exp_month, exp_year, and cardholder_name. Required: id.

create_a_square_card

Create a new card on file in Square. Returns the created card object including id, card_brand, last_4, exp_month, exp_year, and cardholder_name. Requires idempotency_key, source_id, and card.

square_cards_disable

Disable a Square card on file so it can no longer be used for payments. Returns the updated card object with enabled set to false. Required: card_id.

list_all_square_disputes

List Square disputes for the authenticated merchant. Returns the disputes collection with each dispute's id, state, amount, and reason.

get_single_square_dispute_by_id

Get a single Square dispute by id. Returns the dispute object including its state, amount, reason, and related payment. Required: id.

square_disputes_accept

Accept a Square dispute, conceding the disputed amount to the cardholder. Returns the updated dispute object. Required: dispute_id.

square_disputes_submit_evidence

Submit all uploaded evidence for a Square dispute to the card network. Returns the updated dispute object. Required: dispute_id.

square_disputes_create_evidence_text

Upload text evidence to a Square dispute. Returns the created evidence object including its id and evidence_type. Required: dispute_id.

square_disputes_create_evidence_file

Upload a file evidence record to a Square dispute. Returns the created evidence object including its id. Required: dispute_id.

square_disputes_list_evidence

List evidence attached to a Square dispute. Returns evidence records with their id and evidence_type. Required: dispute_id.

square_disputes_get_evidence

Get a single evidence record attached to a Square dispute. Returns the evidence object including its id and evidence_type. Required: dispute_id, evidence_id.

square_disputes_delete_evidence

Delete an evidence record from a Square dispute. Required: dispute_id, evidence_id.

list_all_square_checkout_payment_links

List Square checkout payment links. Returns the collection of payment_link objects.

get_single_square_checkout_payment_link_by_id

Get a Square checkout payment link by id. Returns the payment_link object. Required: id.

create_a_square_checkout_payment_link

Create a Square checkout payment link. Returns the created payment_link object.

update_a_square_checkout_payment_link_by_id

Update a Square checkout payment link by id. Returns the updated payment_link object. Required: id.

delete_a_square_checkout_payment_link_by_id

Delete a Square checkout payment link by id. Required: id.

get_single_square_checkout_location_setting_by_id

Get Square Online Checkout location settings for a specific location. Returns the location_settings object. Required: id.

update_a_square_checkout_location_setting_by_id

Update Square Online Checkout location settings for a specific location. Returns the updated location_settings object. Required: id.

get_single_square_checkout_merchant_setting_by_id

Get the Square online checkout merchant-level settings. Returns the merchant_settings object configured for the seller account.

update_a_square_checkout_merchant_setting_by_id

Update the Square online checkout merchant-level settings. Returns the updated merchant_settings object.

list_all_square_subscriptions

Search Square subscriptions using filters and sort criteria. Returns a list of subscription objects including id, location_id, customer_id, plan_variation_id, status, and billing anchor details.

get_single_square_subscription_by_id

Get a Square subscription by id. Returns the subscription object including id, location_id, customer_id, plan_variation_id, status, start_date, and charged_through_date. Required: id.

create_a_square_subscription

Create a new Square subscription that enrolls a customer in a subscription plan. Returns the created subscription object including id, status, and billing details. Required: idempotency_key, location_id, plan_variation_id, and customer_id.

update_a_square_subscription_by_id

Update an existing Square subscription identified by id. Returns the updated subscription object. Required: id and a subscription payload with the fields to change.

square_subscriptions_cancel

Schedule cancellation of a Square subscription at the end of the current billing cycle. Returns the subscription with a scheduled cancel action. Required: subscription_id.

square_subscriptions_pause

Schedule a pause on a Square subscription. Returns the subscription including the newly created pause action. Required: subscription_id.

square_subscriptions_resume

Schedule resumption of a paused Square subscription. Returns the subscription including the newly created resume action. Required: subscription_id.

square_subscriptions_swap_plan

Schedule a plan-variation swap on a Square subscription. Returns the subscription including the newly created swap-plan action. Required: subscription_id and new_plan_variation_id.

square_subscriptions_change_billing_anchor_date

Change the billing anchor date of a Square subscription. Returns the subscription including the newly scheduled change action. Required: subscription_id.

square_subscriptions_list_events

List events for a Square subscription in chronological order. Returns subscription event objects including id, subscription_event_type, effective_date, and plan_variation_id. Required: subscription_id.

square_subscriptions_delete_action

Delete a scheduled action on a Square subscription. Returns the updated subscription with the action removed. Required: subscription_id and action_id.

list_all_square_invoices

List Square invoices for a given location. Returns: id, version, location_id, primary_recipient, payment_requests, status, created_at, updated_at. Required: location_id.

get_single_square_invoice_by_id

Get a Square invoice by id. Returns the full invoice object including version, location_id, primary_recipient, payment_requests, status, and timestamps. Required: id.

create_a_square_invoice

Create a draft Square invoice for an existing order. Returns the created invoice object including its id, version, status (DRAFT), and payment_requests. Requires invoice.

update_a_square_invoice_by_id

Update a draft Square invoice or a published invoice with a scheduled payment request. Returns the updated invoice object including its new version. Required: id, invoice.

delete_a_square_invoice_by_id

Delete a Square invoice that is in DRAFT state. Returns an empty response on success. Required: id.

square_invoices_search

Search Square invoices by location and optional customer filters. Returns: matching invoices with id, version, location_id, status, primary_recipient, and payment_requests. Requires query.filter.location_ids.

square_invoices_publish

Publish a Square invoice, transitioning it from DRAFT and triggering the configured delivery method. Returns the published invoice with updated status and version. Requires invoice_id, version, and idempotency_key.

square_invoices_cancel

Cancel a Square invoice that is not in a terminal state (PAID, REFUNDED, CANCELED, or FAILED). Returns the canceled invoice with updated status and version. Requires invoice_id and version.

square_invoices_create_attachment

Upload an attachment to a Square invoice. Returns the created attachment including its id, filename, description, filesize, hash, mime_type, and uploaded_at. Required: invoice_id.

square_invoices_delete_attachment

Remove an attachment from a Square invoice. Returns an empty response on success. Required: invoice_id and attachment_id.

list_all_square_merchants

List Square merchants associated with the authenticated account. Returns merchant objects including id, business_name, country, language_code, currency, and status.

get_single_square_merchant_by_id

Get a single Square merchant by id. Returns the merchant object including id, business_name, country, language_code, currency, and status. Required: id.

list_all_square_merchant_custom_attribute_definitions

List custom attribute definitions for merchants in Square. Returns the collection of custom attribute definitions including their key, schema, name, description, and visibility.

get_single_square_merchant_custom_attribute_definition_by_id

Get a merchant custom attribute definition in Square by id. Returns the definition including its key, schema, name, description, and visibility. Required: id.

create_a_square_merchant_custom_attribute_definition

Create a merchant custom attribute definition in Square. Returns the created definition including its key, schema, name, description, and visibility.

update_a_square_merchant_custom_attribute_definition_by_id

Update a merchant custom attribute definition in Square by id. Returns the updated definition including its key, schema, name, description, and visibility. Required: id.

delete_a_square_merchant_custom_attribute_definition_by_id

Delete a merchant custom attribute definition in Square by id. Returns an empty response on success. Required: id.

list_all_square_merchant_custom_attributes

List custom attributes for a Square merchant. Returns the merchant's custom_attributes array. Required: merchant_id.

get_single_square_merchant_custom_attribute_by_id

Get a single custom attribute for a Square merchant by id. Returns the custom_attribute object. Required: merchant_id, id.

square_merchant_custom_attributes_upsert

Create or update a custom attribute on a Square merchant. Returns the upserted custom_attribute object. Required: merchant_id, custom_attribute_key.

delete_a_square_merchant_custom_attribute_by_id

Delete a custom attribute from a Square merchant. Returns an empty response on success. Required: merchant_id, custom_attribute_key.

square_merchant_custom_attributes_bulk_upsert

Create or update multiple merchant custom attributes in Square in a single request. Returns the upserted values keyed by request identifier.

list_all_square_locations

List all locations associated with a Square seller account. Returns location objects including id, name, address, timezone, status, and currency.

get_single_square_location_by_id

Get a single Square location by id. Returns the location object including name, address, timezone, business hours, status, and currency. Required: id.

create_a_square_location

Create a new location for a Square seller. Returns the created location object including its id, name, address, and status.

update_a_square_location_by_id

Update an existing Square location by id. Returns the updated location object. Required: id.

list_all_square_location_custom_attribute_definitions

List Square location custom attribute definitions. Returns each definition with its key, schema, name, description, and visibility.

get_single_square_location_custom_attribute_definition_by_id

Get a Square location custom attribute definition by id. Returns the definition including key, schema, name, description, and visibility. Required: id.

create_a_square_location_custom_attribute_definition

Create a Square location custom attribute definition. Returns the created definition with its key, schema, name, description, and visibility. Required: custom_attribute_definition.

update_a_square_location_custom_attribute_definition_by_id

Update a Square location custom attribute definition by id. Returns the updated definition. Required: id and custom_attribute_definition.

delete_a_square_location_custom_attribute_definition_by_id

Delete a Square location custom attribute definition by id. Required: id. Deletes the definition and all associated values across locations.

list_all_square_location_custom_attributes

List custom attributes for a Square location. Returns an array of custom_attribute objects including key, value, and visibility. Required: location_id.

get_single_square_location_custom_attribute_by_id

Get a single custom attribute for a Square location by id. Returns the custom_attribute object including its key, value, and visibility. Required: location_id, id.

square_location_custom_attributes_upsert

Create or update a custom attribute on a Square location. Returns the upserted custom_attribute object. Required: location_id, custom_attribute_key.

delete_a_square_location_custom_attribute_by_id

Delete a custom attribute from a Square location. Returns an empty response on success. Required: location_id, custom_attribute_key.

list_all_square_team_members

Search team members in Square with optional filters. Returns a list of team_member objects including id, reference_id, is_owner, status, given_name, family_name, email_address, phone_number, and assigned_locations.

get_single_square_team_member_by_id

Get a Square team member by id. Returns the team_member object including id, reference_id, is_owner, status, given_name, family_name, email_address, phone_number, and assigned_locations. Required: id.

create_a_square_team_member

Create a team member in Square. Returns the created team_member object including its id, status, given_name, family_name, email_address, phone_number, and assigned_locations. Requires team_member.

update_a_square_team_member_by_id

Update an existing team member in Square. Returns the updated team_member object including id, status, given_name, family_name, email_address, phone_number, and assigned_locations. Required: id and team_member.

square_team_members_batch_create

Bulk create team members in Square. Returns a team_members map keyed by the provided idempotency keys, each entry containing the created team_member object and any errors. Requires team_members.

square_team_members_batch_update

Bulk update team members in Square. Returns a team_members map keyed by team member id, each entry containing the updated team_member object and any errors. Requires team_members.

get_single_square_wage_setting_by_id

Get the wage setting for a Square team member by id. Returns the wage_setting object with the team member's job assignments and pay rates. Required: id.

update_a_square_wage_setting_by_id

Create or update the wage setting for a Square team member by id. Returns the updated wage_setting object. Required: id and a wage_setting payload.

list_all_square_jobs

List jobs in a Square seller account, sorted by title in ascending order. Returns: jobs array (up to 100 per page) with job details.

get_single_square_job_by_id

Get a specified Square job by id. Returns the job object with its title and tip eligibility. Required: id.

create_a_square_job

Create a job in a Square seller account, defining a title and tip eligibility. Returns the new job object. Required: job (with title) and idempotency_key.

update_a_square_job_by_id

Update the title or tip eligibility of a Square job. Changes to the title propagate to all JobAssignment, Shift, and TeamMemberWage objects referencing the job; tip eligibility changes propagate to TeamMemberWage objects. Returns the updated job. Required: id and job.

list_all_square_team_member_wages

List team member wages in Square. Returns an array of team_member_wage objects.

get_single_square_team_member_wage_by_id

Get a single Square team member wage by id. Returns the team_member_wage object. Required: id.

list_all_square_break_types

List break types defined in Square Labor. Returns the collection of break_type objects including id, location_id, break_name, expected_duration, and is_paid.

get_single_square_break_type_by_id

Get a single Square break type by id. Returns the break_type object including location_id, break_name, expected_duration, is_paid, and version. Requires id.

create_a_square_break_type

Create a new break type in Square Labor. Returns the created break_type including id, location_id, break_name, expected_duration, is_paid, and version. Requires break_type with location_id, break_name, expected_duration, and is_paid.

update_a_square_break_type_by_id

Update an existing Square break type by id. Returns the updated break_type with its new break_name, expected_duration, is_paid, and version. Requires id and break_type.

delete_a_square_break_type_by_id

Delete a Square break type by id. Returns an empty response on success. Requires id.

list_all_square_shifts

Search Square labor shifts using optional filters. Returns a list of shift objects including id, employee details, start/end times, breaks, and wage information.

get_single_square_shift_by_id

Get a single Square labor shift by id. Returns the shift object including employee, location, start/end times, breaks, and wage. Required: id.

create_a_square_shift

Create a new Square labor shift. Returns the created shift object including id, team_member_id, location_id, start_at, end_at, and wage. Requires shift.

update_a_square_shift_by_id

Update an existing Square labor shift by id. Returns the updated shift object. Required: id, shift.

delete_a_square_shift_by_id

Delete a Square labor shift by id. Required: id.

list_all_square_timecards

Search Square labor timecards. Returns a list of timecard objects including id, employee/team member, clockin/clockout times, and version.

get_single_square_timecard_by_id

Get a single Square labor timecard by id. Returns the timecard object including its team member, clockin/clockout times, and version. Requires id.

create_a_square_timecard

Create a new Square labor timecard. Returns the created timecard object including its id, team member, clockin/clockout times, and version.

update_a_square_timecard_by_id

Update an existing Square labor timecard by id. Returns the updated timecard object including its team member, clockin/clockout times, and version. Requires id.

delete_a_square_timecard_by_id

Delete a Square labor timecard by id. Requires id.

list_all_square_workweek_configs

List workweek configurations in Square Labor. Returns workweek_configs with their schedule settings.

update_a_square_workweek_config_by_id

Update a Square Labor workweek configuration by id. Returns the updated workweek_config. Required: id.

list_all_square_scheduled_shifts

Search Square scheduled shifts. Returns a list of scheduled_shifts matching the provided filters.

get_single_square_scheduled_shift_by_id

Get a single Square scheduled shift by id. Returns the scheduled_shift object. Required: id.

create_a_square_scheduled_shift

Create a new scheduled shift in Square. Returns the created scheduled_shift object.

update_a_square_scheduled_shift_by_id

Update an existing Square scheduled shift by id. Returns the updated scheduled_shift object. Required: id.

square_scheduled_shifts_publish

Publish a Square scheduled shift, making it visible to the assigned team member. Returns the published scheduled_shift object. Required: scheduled_shift_id.

square_scheduled_shifts_bulk_publish

Publish multiple Square scheduled shifts in a single request. Returns the list of published scheduled_shifts.

list_all_square_bookings

List bookings in Square. Returns an array of booking objects including id, status, start_at, location_id, customer_id, and appointment_segments.

get_single_square_booking_by_id

Get a Square booking by id. Returns the booking object including id, status, start_at, location_id, customer_id, and appointment_segments. Required: id.

create_a_square_booking

Create a booking in Square. Returns the created booking including id, status, start_at, location_id, customer_id, and appointment_segments. Requires booking with start_at and appointment_segments.

update_a_square_booking_by_id

Update a Square booking by id. Returns the updated booking object. Required: id and booking.

square_bookings_cancel

Cancel a Square booking. Returns the canceled booking with its updated status. Required: booking_id.

square_bookings_search_availability

Search availability for Square bookings within a time window and filters. Returns: availabilities with start_at, location_id, and appointment_segments. Requires query with a filter including start_at_range.

square_bookings_get_business_profile

Get the Square seller's business booking profile. Returns: seller_id, created_at, booking_enabled, customer_timezone_choice, booking_policy, and allow_user_cancel.

square_bookings_batch_get

Bulk retrieve Square bookings by id. Returns a map of bookings keyed by id with their full booking objects. Requires booking_ids.

list_all_square_booking_custom_attribute_definitions

List Square booking custom attribute definitions. Returns the custom attribute definitions including their key, name, description, schema, and visibility.

get_single_square_booking_custom_attribute_definition_by_id

Get a Square booking custom attribute definition by id. Returns the custom attribute definition including key, name, description, schema, and visibility. Required: id.

create_a_square_booking_custom_attribute_definition

Create a Square booking custom attribute definition. Returns the created custom attribute definition including its key, name, schema, and visibility. Requires custom_attribute_definition.

update_a_square_booking_custom_attribute_definition_by_id

Update a Square booking custom attribute definition by id. Returns the updated custom attribute definition. Required: id, custom_attribute_definition.

delete_a_square_booking_custom_attribute_definition_by_id

Delete a Square booking custom attribute definition by id. Returns an empty response on success. Required: id.

list_all_square_booking_custom_attributes

List custom attributes attached to a Square booking. Returns the booking's custom_attributes array. Required: booking_id.

get_single_square_booking_custom_attribute_by_id

Get a single custom attribute on a Square booking by key. Returns the custom_attribute object. Required: booking_id and id (the custom attribute key).

square_booking_custom_attributes_upsert

Create or update a custom attribute on a Square booking. Returns the upserted custom_attribute object. Required: booking_id and custom_attribute_key.

delete_a_square_booking_custom_attribute_by_id

Delete a custom attribute from a Square booking by key. Returns an empty response on success. Required: booking_id and custom_attribute_key.

list_all_square_team_member_booking_profiles

List team member booking profiles in Square. Returns the team_member_booking_profiles array with each profile's team member id, display name, description, and booking settings.

get_single_square_team_member_booking_profile_by_id

Get a Square team member booking profile by id. Returns the team_member_booking_profile object including team_member_id, display_name, description, and is_bookable. Required: id.

square_team_member_booking_profiles_batch_get

Retrieve multiple Square team member booking profiles in a single request. Returns the team_member_booking_profiles array for the requested team members. Required: team_member_ids.

list_all_square_location_booking_profiles

List location booking profiles in Square. Returns the booking profile configuration for each seller location.

get_single_square_location_booking_profile_by_id

Get a Square location booking profile by id. Returns the booking profile for the specified location. Required: id.

list_all_square_loyalty_programs

List loyalty programs in Square. Returns the loyalty program objects configured for the seller, including id, status, reward tiers, and accrual rules.

get_single_square_loyalty_program_by_id

Get a Square loyalty program by id. Returns the loyalty program object including its status, reward tiers, accrual rules, and terminology. Required: id.

square_loyalty_programs_calculate_points

Calculate the points a buyer would earn for a purchase under a Square loyalty program. Returns the points that would be accrued. Required: program_id.

list_all_square_loyalty_accounts

Search Square loyalty accounts by mapping (such as a phone number) or customer ids. Returns: loyalty_accounts with id, program_id, balance, lifetime_points, customer_id, and mapping details.

get_single_square_loyalty_account_by_id

Get a Square loyalty account by id. Returns the loyalty_account object including id, program_id, balance, lifetime_points, customer_id, enrolled_at, and mappings. Required: id.

create_a_square_loyalty_account

Create a Square loyalty account in a loyalty program. Returns the created loyalty_account with id, program_id, balance, lifetime_points, customer_id, and mapping. Requires loyalty_account (with program_id) and idempotency_key.

square_loyalty_accounts_accumulate_points

Accumulate points on a Square loyalty account, either from an order or by manually specifying points. Returns the resulting event with id, type, loyalty_account_id, and points details. Required: account_id, accumulate_points, idempotency_key, and location_id.

square_loyalty_accounts_adjust_points

Manually add or subtract points on a Square loyalty account. Returns the resulting event with id, type, loyalty_account_id, and adjustment details. Required: account_id, adjust_points (points and reason), and idempotency_key.

list_all_square_loyalty_rewards

Search Square loyalty rewards. Returns a list of reward objects including id, loyalty_account_id, reward_tier_id, points, order_id, status, and created_at.

get_single_square_loyalty_reward_by_id

Get a Square loyalty reward by id. Returns the reward object including loyalty_account_id, reward_tier_id, points, order_id, status, created_at, and redeemed_at. Required: id.

create_a_square_loyalty_reward

Create a Square loyalty reward for a buyer's loyalty account, deducting the tier's points cost. Returns the created reward object including id, loyalty_account_id, reward_tier_id, points, status, and created_at. Requires reward and idempotency_key.

delete_a_square_loyalty_reward_by_id

Delete a Square loyalty reward by id, returning the deducted points back to the loyalty account. Required: id. Can only be used on rewards that have not been redeemed.

square_loyalty_rewards_redeem

Redeem a Square loyalty reward, marking it as REDEEMED so it cannot be reused. Returns the loyalty event recording the redemption including id, type, created_at, loyalty_account_id, and location_id. Required: reward_id, idempotency_key, location_id.

list_all_square_loyalty_promotions

List loyalty promotions for a Square loyalty program. Returns the loyalty_promotions array including each promotion's id, name, incentive, status, and availability. Required: program_id.

get_single_square_loyalty_promotion_by_id

Get a single Square loyalty promotion by id. Returns the loyalty_promotion object including its id, name, incentive, status, and availability. Required: program_id and id.

create_a_square_loyalty_promotion

Create a new loyalty promotion under a Square loyalty program. Returns the created loyalty_promotion object including its id, status, and configuration. Required: program_id.

square_loyalty_promotions_cancel

Cancel an active Square loyalty promotion. Returns the updated loyalty_promotion object with its status set to CANCELED. Required: program_id and promotion_id.

list_all_square_loyalty_events

Search loyalty events in Square. Returns the list of loyalty events matching the provided filters.

list_all_square_gift_cards

List Square gift cards. Returns the gift_cards array with each card's id, gan, state, balance, and type.

get_single_square_gift_card_by_id

Get a Square gift card by id. Returns the gift_card object including id, gan, state, balance_money, and type. Required: id.

create_a_square_gift_card

Create a new Square gift card. Returns the created gift_card object including id, gan, state, balance_money, and type. Requires idempotency_key, location_id, and gift_card.

square_gift_cards_get_from_gan

Retrieve a Square gift card using its gift account number (GAN). Returns the gift_card object including id, gan, state, balance_money, and type. Requires gan.

square_gift_cards_get_from_nonce

Retrieve a Square gift card using a payment token (nonce). Returns the gift_card object including id, gan, state, balance_money, and type. Requires nonce.

square_gift_cards_link_customer

Link a Square customer to a gift card. Returns the updated gift_card object with the customer linked. Required: gift_card_id and customer_id.

square_gift_cards_unlink_customer

Unlink a Square customer from a gift card. Returns the updated gift_card object with the customer removed. Required: gift_card_id and customer_id.

list_all_square_gift_card_activities

List gift card activities in Square. Returns an array of gift card activity objects.

create_a_square_gift_card_activity

Create a gift card activity in Square (e.g., to load, activate, or redeem a gift card). Returns the created gift_card_activity object.

list_all_square_terminal_checkouts

Search Square Terminal checkouts by filter and sort criteria. Returns a list of checkout objects including id, amount_money, device_options, status, and created_at.

get_single_square_terminal_checkout_by_id

Get a Square Terminal checkout by id. Returns the checkout object including id, amount_money, device_options, status, reference_id, and created_at. Required: id.

create_a_square_terminal_checkout

Create a Square Terminal checkout and send it to the specified device for processing. Returns the created checkout including id, amount_money, device_options, status, and created_at. Requires idempotency_key and checkout.

square_terminal_checkouts_cancel

Cancel a Square Terminal checkout that is in progress. Returns the updated checkout object with status set to CANCELED. Required: checkout_id.

square_terminal_checkouts_dismiss

Dismiss a Square Terminal checkout request from the device screen if it has not yet been accepted. Returns the dismissed checkout object. Required: checkout_id.

list_all_square_terminal_actions

Search Square Terminal actions by filter and sort criteria. Returns matching terminal action objects.

get_single_square_terminal_action_by_id

Get a Square Terminal action by id. Returns the terminal action object including its id, status, type, deadline_duration, and associated device or payment details. Required: id.

create_a_square_terminal_action

Create a Square Terminal action to send to a paired terminal device. Returns the created terminal action including its id, status, and type. Required: idempotency_key and action.

square_terminal_actions_cancel

Cancel a pending Square Terminal action. Returns the canceled terminal action object with its updated status. Required: action_id.

square_terminal_actions_dismiss

Dismiss a Square Terminal action that is currently displayed on the device. Returns the dismissed terminal action object with its updated status. Required: action_id.

list_all_square_terminal_refunds

Search Square Terminal refunds. Returns matching refund objects including id, status, amount_money, payment_id, reason, device_id, and timestamps.

get_single_square_terminal_refund_by_id

Get a Square Terminal refund by id. Returns the refund object including status, amount_money, payment_id, reason, device_id, and timestamps. Requires id.

create_a_square_terminal_refund

Create a Square Terminal refund request and send it to the paired device. Returns the created refund including id, status, amount_money, payment_id, and device_id. Requires idempotency_key and refund (payment_id, amount_money, reason, device_id).

square_terminal_refunds_cancel

Cancel a Square Terminal refund request that has not yet been completed. Returns the updated refund object with its new status. Requires refund_id.

square_terminal_refunds_dismiss

Dismiss a Square Terminal refund request that has not been acted on by the device. Returns the updated refund object with its new status. Requires refund_id.

list_all_square_devices

List devices associated with a Square account. Returns an array of device objects including their id and attributes.

get_single_square_device_by_id

Get a single Square device by id. Returns the device object including its id and attributes. Required: id.

list_all_square_device_codes

List Square device codes. Returns the device_codes array with each code's id, code, name, product_type, location_id, status, and timestamps.

get_single_square_device_code_by_id

Get a single Square device code by id. Returns the device_code object including code, name, product_type, location_id, status, and pair_by/created_at timestamps. Required: id.

create_a_square_device_code

Create a Square device code used to pair a device (such as a Square Terminal) to a location. Returns the created device_code including its id, code, status, and pair_by timestamp. Requires idempotency_key and device_code (with product_type).

list_all_square_cash_drawer_shifts

List cash drawer shifts for a Square location. Returns summary cash drawer shift objects including id, state, opened_at, closed_at, and opening/closing amounts. Required: location_id.

get_single_square_cash_drawer_shift_by_id

Get a Square cash drawer shift by id. Returns the full cash_drawer_shift including state, opened_at, closed_at, opening/closing/cash sales/cash refunds amounts, and related employee ids. Required: id and location_id.

square_cash_drawer_shifts_list_events

List events for a Square cash drawer shift. Returns cash drawer shift events including id, event_type, event_money, created_at, and description. Required: shift_id and location_id.

list_all_square_bank_accounts

List bank accounts linked to a Square account. Returns an array of bank account objects including id, account_number_suffix, country, currency, account_type, holder_name, and status.

get_single_square_bank_account_by_id

Get a Square bank account by id. Returns the bank account object including id, account_number_suffix, country, currency, account_type, holder_name, and status. Required: id.

square_bank_accounts_get_by_v_1_id

Get a Square bank account by its v1 identifier. Returns the bank account object including id, account_number_suffix, country, currency, account_type, holder_name, and status. Required: v1_bank_account_id.

list_all_square_payouts

List Square payouts. Returns an array of payout objects including id, status, amount_money, destination, and created_at.

get_single_square_payout_by_id

Get a Square payout by id. Returns the payout object including id, status, amount_money, destination, and created_at. Required: id.

square_payouts_list_entries

List entries for a Square payout. Returns payout entry objects including id, payout_id, effective_at, type, and gross_amount_money. Required: payout_id.

list_all_square_vendors

Search vendors in Square. Returns a list of vendor objects matching the supplied filter and sort criteria.

get_single_square_vendor_by_id

Get a Square vendor by id. Returns the vendor object including its name, contacts, address, and status. Required: id.

create_a_square_vendor

Create a vendor in Square. Returns the created vendor object including its id, name, and status. Requires a vendor payload and an idempotency_key.

update_a_square_vendor_by_id

Update an existing Square vendor by id. Returns the updated vendor object. Required: id and a vendor payload including its current version for optimistic concurrency.

square_vendors_batch_create

Create multiple vendors in Square in a single request. Returns a list of responses, one per vendor created. Required: vendors map keyed by idempotency key.

square_vendors_batch_get

Retrieve multiple Square vendors by id in a single request. Returns a list of responses, one per requested vendor. Required: vendor_ids.

square_vendors_batch_update

Update multiple Square vendors in a single request. Returns a list of responses, one per updated vendor. Required: vendors map keyed by vendor id, each entry including the vendor's current version.

list_all_square_sites

List Square Online sites associated with the seller account. Returns the sites array including each site's id, site_title, domain, and status.

get_single_square_snippet_by_id

Get the snippet associated with a Square site. Returns the snippet object for the specified site. Required: site_id.

square_snippets_upsert

Add or update the snippet for a Square site. Returns the upserted snippet object. Required: site_id.

delete_a_square_snippet_by_id

Delete the snippet from a Square site. Required: site_id.

square_events_search

Search Square events. Returns a list of event objects with their associated metadata.

square_events_list_types

List the event types that Square publishes. Returns: event_types as an array of supported event type identifiers.

square_events_enable

Enable events publishing for the Square account.

square_events_disable

Disable events publishing for the Square account.

list_all_square_webhook_subscriptions

List webhook subscriptions in Square. Returns: subscription objects including id, name, enabled, event_types, notification_url, and api_version.

get_single_square_webhook_subscription_by_id

Get a single Square webhook subscription by id. Returns the subscription object including name, enabled, event_types, notification_url, api_version, and signature_key. Requires id.

create_a_square_webhook_subscription

Create a webhook subscription in Square. Returns the created subscription including its id, name, event_types, notification_url, and signature_key. Requires subscription with name, event_types, and notification_url.

update_a_square_webhook_subscription_by_id

Update a Square webhook subscription by id. Returns the updated subscription including name, event_types, notification_url, and enabled. Requires id and the subscription object with fields to update.

delete_a_square_webhook_subscription_by_id

Delete a Square webhook subscription by id. Returns an empty response on success. Requires id.

square_webhook_subscriptions_test

Send a test event to a Square webhook subscription's notification URL. Returns: subscription_test_result with id, status_code, payload, and created_at. Requires subscription_id.

square_webhook_subscriptions_list_event_types

List the event types that webhook subscriptions can listen to in Square. Returns: event_types with their names and metadata.

list_all_square_employees

List employees in Square. Returns an array of employee objects.

get_single_square_employee_by_id

Get a Square employee by id. Returns the employee object. Required: id.

Why Truto

Why use Truto’s MCP server for Square

Other MCP servers give you a static tool list for one app. Truto gives you a managed, multi-tenant MCP infrastructure across 500+ integrations.

01

Auto-generated, always up to date

Tools are dynamically generated from curated documentation — not hand-coded. As integrations evolve, tools stay current without manual maintenance.

02

Fine-grained access control

Scope each MCP server to read-only, write-only, specific methods, or tagged tool groups. Expose only what your AI agent needs — nothing more.

03

Multi-tenant by design

Each MCP server is scoped to a single connected account with its own credentials. The URL itself is the auth token — no shared secrets, no credential leaking across tenants.

04

Works with every MCP client

Standard JSON-RPC 2.0 protocol. Paste the URL into Claude, ChatGPT, Cursor, or any MCP-compatible agent framework — tools are discovered automatically.

05

Built-in auth, rate limits, and error handling

Tool calls execute through Truto’s proxy layer with automatic OAuth refresh, rate-limit handling, and normalized error responses. No raw API plumbing in your agent.

06

Expiring and auditable servers

Create time-limited MCP servers for contractors or automated workflows. Optional dual-auth requires both the URL and a Truto API token for high-security environments.

Unified APIs

Unified APIs for Square

Skip writing code for every integration. Use Truto’s category-specific Unified APIs out of the box or customize the mappings with AI.

Unified HRIS API

Companies

Companies represent the companies in HRIS

View Docs

Employees

Represents an employee in HRIS

View Docs

Locations

Locations represent the locations in HRIS

View Docs

Timeoff Types

Represent the time off types in a company

View Docs

Unified Payment Gateway API

Customers

The customer represents a customer in Payment Gateway.

View Docs

Payments

The payment represents a payment in Payment Gateway.

View Docs

Unified E-Commerce API

Customers

The customer represent a customer in E-Commerce.

View Docs

Orders

The order represent an order in E-Commerce.

View Docs

How It Works

From zero to integrated

Go live with Square in under an hour. No boilerplate, no maintenance burden.

01

Link your customer’s Square account

Use Truto’s frontend SDK to connect your customer’s Square account. We handle all OAuth and API key flows — you don’t need to create the OAuth app.

02

We handle authentication

Don’t spend time refreshing access tokens or figuring out secure storage. We handle it and inject credentials into every API request.

03

Call our API, we call Square

Truto’s Proxy API is a 1-to-1 mapping of the Square API. You call us, we call Square, and pass the response back in the same cycle.

04

Unified response format

Every response follows a single format across all integrations. We translate Square’s pagination into unified cursor-based pagination. Data is always in the result attribute.

FAQs

Common questions about Square on Truto

Authentication, rate limits, data freshness, and everything else you need to know before you integrate.

What HRIS data can I access from Square through Truto?

Truto's Unified HRIS API maps Square data to four core resources: Companies, Employees, Locations, and Timeoff Types. This covers employee profiles, job titles, employment status, location assignments, and leave type configurations. Specific tools are built on request to match your requirements.

How does authentication work for Square integrations on Truto?

Square uses OAuth 2.0 for third-party integrations. Truto manages the full OAuth flow — token exchange, storage, and refresh — so your end users simply authorize their Square account through a connect flow and you never handle raw credentials.

Is the Square integration available out of the box or built on request?

Square is listed as a supported HRIS integration on Truto with Unified API coverage for Companies, Employees, Locations, and Timeoff Types. Specific proxy or custom tools for Square's Team API, Labor API, or Payroll API endpoints are built on request based on your use case.

What types of businesses will connect their Square accounts through my product?

Typically SMBs with 1–100 employees in retail, food & beverage, salons, fitness, and field services. These merchants use Square as their primary business operating system and expect integrations to just work without manual data entry.

Does Truto handle Square API pagination and rate limits?

Yes. Truto abstracts away Square's cursor-based pagination and manages rate limit handling, so you interact with a consistent Unified API without writing Square-specific retry or pagination logic.

Can I access Square data for employees across multiple locations?

Yes. Square's data model assigns employees to one or more locations, and this mapping is exposed through Truto's Unified HRIS API via the Employees and Locations resources, enabling multi-site roster syncing.

Square

Get Square integrated into your app

Our team understands what it takes to make a Square integration successful. A short, crisp 30 minute call with folks who understand the problem.

Talk to us