Use Square to take, retrieve, list, cancel, complete, or refund payments; manage customer profiles; create, retrieve, search, or pay for orders; and create, publish, cancel, or delete invoices.
The actions also manage catalog objects and images, read inventory counts, and look up locations. Configure a Square access token and the target environment. Payment and refund actions change live commerce records; use the correct environment and the action's idempotency fields before running them.
Take and refund payments, manage customers, build catalog items and images, create and search orders, and issue invoices. Authenticate with a Square access token (personal access token).
Take a payment using a payment source such as a card nonce or a card on file
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) sourceIdstring Yes ID of the payment source (card nonce, card-on-file ID, or wallet token) amountnumber Yes Amount in the smallest currency denomination (e.g. 1000 = $10.00) currencystring Yes Three-letter ISO 4217 currency code (e.g. USD) idempotencyKeystring No Unique key to make the request idempotent (auto-generated if omitted) customerIdstring No ID of the customer associated with the payment locationIdstring No ID of the location where the payment is taken (defaults to the main location) orderIdstring No ID of the order associated with the payment referenceIdstring No Optional external reference for the payment notestring No Optional note attached to the payment autocompleteboolean No Whether to immediately capture the payment (defaults to true)
Parameter Type Description paymentobject Square Payment object ↳ id string Unique ID for the payment ↳ status string Payment status (APPROVED, PENDING, COMPLETED, CANCELED, or FAILED) ↳ amount_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ total_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ approved_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ app_fee_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ refunded_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ tip_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ source_type string Source of the payment (CARD, BANK_ACCOUNT, WALLET, etc.) ↳ card_details json Details about a card payment ↳ location_id string ID of the location where the payment was taken ↳ order_id string ID of the associated order ↳ customer_id string ID of the associated customer ↳ reference_id string Optional external reference for the payment ↳ receipt_number string Receipt number for the payment ↳ receipt_url string URL of the payment receipt ↳ note string Optional note attached to the payment ↳ refund_ids array IDs of refunds associated with the payment ↳ processing_fee array Processing fees applied to the payment ↳ created_at string Timestamp when the payment was created (RFC 3339) ↳ updated_at string Timestamp when the payment was last updated (RFC 3339) ↳ version_token string Optimistic concurrency token for the payment metadatajson Payment summary metadata ↳ id string Square payment ID ↳ status string Current payment status ↳ order_id string Associated order ID
Retrieve details for a single payment by its ID
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) paymentIdstring Yes ID of the payment to retrieve
Parameter Type Description paymentobject Square Payment object ↳ id string Unique ID for the payment ↳ status string Payment status (APPROVED, PENDING, COMPLETED, CANCELED, or FAILED) ↳ amount_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ total_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ approved_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ app_fee_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ refunded_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ tip_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ source_type string Source of the payment (CARD, BANK_ACCOUNT, WALLET, etc.) ↳ card_details json Details about a card payment ↳ location_id string ID of the location where the payment was taken ↳ order_id string ID of the associated order ↳ customer_id string ID of the associated customer ↳ reference_id string Optional external reference for the payment ↳ receipt_number string Receipt number for the payment ↳ receipt_url string URL of the payment receipt ↳ note string Optional note attached to the payment ↳ refund_ids array IDs of refunds associated with the payment ↳ processing_fee array Processing fees applied to the payment ↳ created_at string Timestamp when the payment was created (RFC 3339) ↳ updated_at string Timestamp when the payment was last updated (RFC 3339) ↳ version_token string Optimistic concurrency token for the payment metadatajson Payment summary metadata ↳ id string Square payment ID ↳ status string Current payment status ↳ order_id string Associated order ID
List payments taken by the account, optionally filtered by location and time range
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) locationIdstring No Filter payments by location ID beginTimestring No RFC 3339 timestamp for the beginning of the reporting period endTimestring No RFC 3339 timestamp for the end of the reporting period limitnumber No Maximum number of results to return per page cursorstring No Pagination cursor from a previous response
Parameter Type Description paymentsarray Array of payment objects ↳ id string Unique ID for the payment ↳ status string Payment status (APPROVED, PENDING, COMPLETED, CANCELED, or FAILED) ↳ amount_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ total_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ approved_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ app_fee_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ refunded_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ tip_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ source_type string Source of the payment (CARD, BANK_ACCOUNT, WALLET, etc.) ↳ card_details json Details about a card payment ↳ location_id string ID of the location where the payment was taken ↳ order_id string ID of the associated order ↳ customer_id string ID of the associated customer ↳ reference_id string Optional external reference for the payment ↳ receipt_number string Receipt number for the payment ↳ receipt_url string URL of the payment receipt ↳ note string Optional note attached to the payment ↳ refund_ids array IDs of refunds associated with the payment ↳ processing_fee array Processing fees applied to the payment ↳ created_at string Timestamp when the payment was created (RFC 3339) ↳ updated_at string Timestamp when the payment was last updated (RFC 3339) ↳ version_token string Optimistic concurrency token for the payment metadatajson List pagination metadata ↳ count number Number of items returned in this page ↳ cursor string Pagination cursor to fetch the next page, if more results exist
Cancel (void) an authorized payment that has not been captured
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) paymentIdstring Yes ID of the payment to cancel
Parameter Type Description paymentobject Square Payment object ↳ id string Unique ID for the payment ↳ status string Payment status (APPROVED, PENDING, COMPLETED, CANCELED, or FAILED) ↳ amount_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ total_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ approved_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ app_fee_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ refunded_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ tip_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ source_type string Source of the payment (CARD, BANK_ACCOUNT, WALLET, etc.) ↳ card_details json Details about a card payment ↳ location_id string ID of the location where the payment was taken ↳ order_id string ID of the associated order ↳ customer_id string ID of the associated customer ↳ reference_id string Optional external reference for the payment ↳ receipt_number string Receipt number for the payment ↳ receipt_url string URL of the payment receipt ↳ note string Optional note attached to the payment ↳ refund_ids array IDs of refunds associated with the payment ↳ processing_fee array Processing fees applied to the payment ↳ created_at string Timestamp when the payment was created (RFC 3339) ↳ updated_at string Timestamp when the payment was last updated (RFC 3339) ↳ version_token string Optimistic concurrency token for the payment metadatajson Payment summary metadata ↳ id string Square payment ID ↳ status string Current payment status ↳ order_id string Associated order ID
Capture (complete) a payment that was authorized with delayed capture
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) paymentIdstring Yes ID of the payment to complete versionTokenstring No Optional version token for optimistic concurrency control
Parameter Type Description paymentobject Square Payment object ↳ id string Unique ID for the payment ↳ status string Payment status (APPROVED, PENDING, COMPLETED, CANCELED, or FAILED) ↳ amount_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ total_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ approved_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ app_fee_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ refunded_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ tip_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ source_type string Source of the payment (CARD, BANK_ACCOUNT, WALLET, etc.) ↳ card_details json Details about a card payment ↳ location_id string ID of the location where the payment was taken ↳ order_id string ID of the associated order ↳ customer_id string ID of the associated customer ↳ reference_id string Optional external reference for the payment ↳ receipt_number string Receipt number for the payment ↳ receipt_url string URL of the payment receipt ↳ note string Optional note attached to the payment ↳ refund_ids array IDs of refunds associated with the payment ↳ processing_fee array Processing fees applied to the payment ↳ created_at string Timestamp when the payment was created (RFC 3339) ↳ updated_at string Timestamp when the payment was last updated (RFC 3339) ↳ version_token string Optimistic concurrency token for the payment metadatajson Payment summary metadata ↳ id string Square payment ID ↳ status string Current payment status ↳ order_id string Associated order ID
Refund all or part of a completed payment
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) paymentIdstring Yes ID of the payment to refund amountnumber Yes Amount to refund in the smallest currency denomination (e.g. 100 = $1.00) currencystring Yes Three-letter ISO 4217 currency code (e.g. USD) idempotencyKeystring No Unique key to make the request idempotent (auto-generated if omitted) reasonstring No Reason for the refund
Parameter Type Description refundobject Square PaymentRefund object ↳ id string Unique ID for the refund ↳ status string Refund status (PENDING, COMPLETED, REJECTED, or FAILED) ↳ amount_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ processing_fee array Processing fees refunded ↳ payment_id string ID of the payment being refunded ↳ order_id string ID of the associated order ↳ location_id string ID of the associated location ↳ reason string Reason for the refund ↳ created_at string Timestamp when the refund was created (RFC 3339) ↳ updated_at string Timestamp when the refund was last updated (RFC 3339) metadatajson Refund summary metadata ↳ id string Square refund ID ↳ status string Current refund status ↳ payment_id string Refunded payment ID
Retrieve a single payment refund by its ID
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) refundIdstring Yes ID of the refund to retrieve
Parameter Type Description refundobject Square PaymentRefund object ↳ id string Unique ID for the refund ↳ status string Refund status (PENDING, COMPLETED, REJECTED, or FAILED) ↳ amount_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ processing_fee array Processing fees refunded ↳ payment_id string ID of the payment being refunded ↳ order_id string ID of the associated order ↳ location_id string ID of the associated location ↳ reason string Reason for the refund ↳ created_at string Timestamp when the refund was created (RFC 3339) ↳ updated_at string Timestamp when the refund was last updated (RFC 3339) metadatajson Refund summary metadata ↳ id string Square refund ID ↳ status string Current refund status ↳ payment_id string Refunded payment ID
List payment refunds, optionally filtered by location, status, and time range
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) locationIdstring No Filter refunds by location ID statusstring No Filter by refund status (PENDING, COMPLETED, REJECTED, or FAILED) beginTimestring No RFC 3339 timestamp for the beginning of the reporting period endTimestring No RFC 3339 timestamp for the end of the reporting period limitnumber No Maximum number of results to return per page cursorstring No Pagination cursor from a previous response
Parameter Type Description refundsarray Array of refund objects ↳ id string Unique ID for the refund ↳ status string Refund status (PENDING, COMPLETED, REJECTED, or FAILED) ↳ amount_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ processing_fee array Processing fees refunded ↳ payment_id string ID of the payment being refunded ↳ order_id string ID of the associated order ↳ location_id string ID of the associated location ↳ reason string Reason for the refund ↳ created_at string Timestamp when the refund was created (RFC 3339) ↳ updated_at string Timestamp when the refund was last updated (RFC 3339) metadatajson List pagination metadata ↳ count number Number of items returned in this page ↳ cursor string Pagination cursor to fetch the next page, if more results exist
Create a new customer profile in the Square customer directory
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) givenNamestring No First name of the customer familyNamestring No Last name of the customer companyNamestring No Business name of the customer nicknamestring No Nickname of the customer emailAddressstring No Email address of the customer phoneNumberstring No Phone number of the customer birthdaystring No Birthday in YYYY-MM-DD or MM-DD format notestring No Note about the customer referenceIdstring No Optional external reference for the customer addressjson No Square address object for the customer idempotencyKeystring No Unique key to make the request idempotent (auto-generated if omitted)
Parameter Type Description customerobject Square Customer object ↳ id string Unique ID for the customer ↳ given_name string First name of the customer ↳ family_name string Last name of the customer ↳ nickname string Nickname of the customer ↳ company_name string Business name of the customer ↳ email_address string Email address of the customer ↳ phone_number string Phone number of the customer ↳ address object Physical address ↳ address_line_1 string First line of the address ↳ address_line_2 string Second line of the address ↳ address_line_3 string Third line of the address ↳ locality string City or town ↳ sublocality string Neighborhood or district ↳ administrative_district_level_1 string State, province, or region ↳ postal_code string Postal or ZIP code ↳ country string Two-letter ISO 3166-1 alpha-2 country code ↳ first_name string First name of the addressee ↳ last_name string Last name of the addressee ↳ birthday string Birthday in YYYY-MM-DD or MM-DD format ↳ reference_id string Optional external reference for the customer ↳ note string Note about the customer ↳ creation_source string How the customer profile was created ↳ preferences json Customer communication preferences ↳ group_ids array IDs of customer groups the customer belongs to ↳ segment_ids array IDs of customer segments the customer belongs to ↳ version number Optimistic concurrency version of the customer ↳ created_at string Timestamp when the customer was created (RFC 3339) ↳ updated_at string Timestamp when the customer was last updated (RFC 3339) metadatajson Customer summary metadata ↳ id string Square customer ID ↳ email_address string Customer email address ↳ given_name string Customer first name ↳ family_name string Customer last name
Retrieve a single customer profile by its ID
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) customerIdstring Yes ID of the customer to retrieve
Parameter Type Description customerobject Square Customer object ↳ id string Unique ID for the customer ↳ given_name string First name of the customer ↳ family_name string Last name of the customer ↳ nickname string Nickname of the customer ↳ company_name string Business name of the customer ↳ email_address string Email address of the customer ↳ phone_number string Phone number of the customer ↳ address object Physical address ↳ address_line_1 string First line of the address ↳ address_line_2 string Second line of the address ↳ address_line_3 string Third line of the address ↳ locality string City or town ↳ sublocality string Neighborhood or district ↳ administrative_district_level_1 string State, province, or region ↳ postal_code string Postal or ZIP code ↳ country string Two-letter ISO 3166-1 alpha-2 country code ↳ first_name string First name of the addressee ↳ last_name string Last name of the addressee ↳ birthday string Birthday in YYYY-MM-DD or MM-DD format ↳ reference_id string Optional external reference for the customer ↳ note string Note about the customer ↳ creation_source string How the customer profile was created ↳ preferences json Customer communication preferences ↳ group_ids array IDs of customer groups the customer belongs to ↳ segment_ids array IDs of customer segments the customer belongs to ↳ version number Optimistic concurrency version of the customer ↳ created_at string Timestamp when the customer was created (RFC 3339) ↳ updated_at string Timestamp when the customer was last updated (RFC 3339) metadatajson Customer summary metadata ↳ id string Square customer ID ↳ email_address string Customer email address ↳ given_name string Customer first name ↳ family_name string Customer last name
List customer profiles in the Square customer directory
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) limitnumber No Maximum number of results to return per page (max 100) cursorstring No Pagination cursor from a previous response sortFieldstring No Field to sort by (DEFAULT or CREATED_AT) sortOrderstring No Sort order (ASC or DESC)
Parameter Type Description customersarray Array of customer objects ↳ id string Unique ID for the customer ↳ given_name string First name of the customer ↳ family_name string Last name of the customer ↳ nickname string Nickname of the customer ↳ company_name string Business name of the customer ↳ email_address string Email address of the customer ↳ phone_number string Phone number of the customer ↳ address object Physical address ↳ address_line_1 string First line of the address ↳ address_line_2 string Second line of the address ↳ address_line_3 string Third line of the address ↳ locality string City or town ↳ sublocality string Neighborhood or district ↳ administrative_district_level_1 string State, province, or region ↳ postal_code string Postal or ZIP code ↳ country string Two-letter ISO 3166-1 alpha-2 country code ↳ first_name string First name of the addressee ↳ last_name string Last name of the addressee ↳ birthday string Birthday in YYYY-MM-DD or MM-DD format ↳ reference_id string Optional external reference for the customer ↳ note string Note about the customer ↳ creation_source string How the customer profile was created ↳ preferences json Customer communication preferences ↳ group_ids array IDs of customer groups the customer belongs to ↳ segment_ids array IDs of customer segments the customer belongs to ↳ version number Optimistic concurrency version of the customer ↳ created_at string Timestamp when the customer was created (RFC 3339) ↳ updated_at string Timestamp when the customer was last updated (RFC 3339) metadatajson List pagination metadata ↳ count number Number of items returned in this page ↳ cursor string Pagination cursor to fetch the next page, if more results exist
Search customer profiles using filters such as email, phone, or creation date
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) queryjson No Square customer query object with optional filter and sort (e.g. {"filter":{"email_address":{"exact":"a@b.com "}}}) limitnumber No Maximum number of results to return per page cursorstring No Pagination cursor from a previous response
Parameter Type Description customersarray Array of matching customer objects ↳ id string Unique ID for the customer ↳ given_name string First name of the customer ↳ family_name string Last name of the customer ↳ nickname string Nickname of the customer ↳ company_name string Business name of the customer ↳ email_address string Email address of the customer ↳ phone_number string Phone number of the customer ↳ address object Physical address ↳ address_line_1 string First line of the address ↳ address_line_2 string Second line of the address ↳ address_line_3 string Third line of the address ↳ locality string City or town ↳ sublocality string Neighborhood or district ↳ administrative_district_level_1 string State, province, or region ↳ postal_code string Postal or ZIP code ↳ country string Two-letter ISO 3166-1 alpha-2 country code ↳ first_name string First name of the addressee ↳ last_name string Last name of the addressee ↳ birthday string Birthday in YYYY-MM-DD or MM-DD format ↳ reference_id string Optional external reference for the customer ↳ note string Note about the customer ↳ creation_source string How the customer profile was created ↳ preferences json Customer communication preferences ↳ group_ids array IDs of customer groups the customer belongs to ↳ segment_ids array IDs of customer segments the customer belongs to ↳ version number Optimistic concurrency version of the customer ↳ created_at string Timestamp when the customer was created (RFC 3339) ↳ updated_at string Timestamp when the customer was last updated (RFC 3339) metadatajson List pagination metadata ↳ count number Number of items returned in this page ↳ cursor string Pagination cursor to fetch the next page, if more results exist
Update fields on an existing customer profile
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) customerIdstring Yes ID of the customer to update givenNamestring No First name of the customer familyNamestring No Last name of the customer companyNamestring No Business name of the customer nicknamestring No Nickname of the customer emailAddressstring No Email address of the customer phoneNumberstring No Phone number of the customer birthdaystring No Birthday in YYYY-MM-DD or MM-DD format notestring No Note about the customer referenceIdstring No Optional external reference for the customer addressjson No Square address object for the customer
Parameter Type Description customerobject Square Customer object ↳ id string Unique ID for the customer ↳ given_name string First name of the customer ↳ family_name string Last name of the customer ↳ nickname string Nickname of the customer ↳ company_name string Business name of the customer ↳ email_address string Email address of the customer ↳ phone_number string Phone number of the customer ↳ address object Physical address ↳ address_line_1 string First line of the address ↳ address_line_2 string Second line of the address ↳ address_line_3 string Third line of the address ↳ locality string City or town ↳ sublocality string Neighborhood or district ↳ administrative_district_level_1 string State, province, or region ↳ postal_code string Postal or ZIP code ↳ country string Two-letter ISO 3166-1 alpha-2 country code ↳ first_name string First name of the addressee ↳ last_name string Last name of the addressee ↳ birthday string Birthday in YYYY-MM-DD or MM-DD format ↳ reference_id string Optional external reference for the customer ↳ note string Note about the customer ↳ creation_source string How the customer profile was created ↳ preferences json Customer communication preferences ↳ group_ids array IDs of customer groups the customer belongs to ↳ segment_ids array IDs of customer segments the customer belongs to ↳ version number Optimistic concurrency version of the customer ↳ created_at string Timestamp when the customer was created (RFC 3339) ↳ updated_at string Timestamp when the customer was last updated (RFC 3339) metadatajson Customer summary metadata ↳ id string Square customer ID ↳ email_address string Customer email address ↳ given_name string Customer first name ↳ family_name string Customer last name
Delete a customer profile from the Square customer directory
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) customerIdstring Yes ID of the customer to delete
Parameter Type Description deletedboolean Whether the customer was deleted idstring ID of the deleted customer
List all locations associated with the Square account
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token)
Parameter Type Description locationsarray Array of location objects ↳ id string Unique ID for the location ↳ name string Name of the location ↳ address object Physical address ↳ address_line_1 string First line of the address ↳ address_line_2 string Second line of the address ↳ address_line_3 string Third line of the address ↳ locality string City or town ↳ sublocality string Neighborhood or district ↳ administrative_district_level_1 string State, province, or region ↳ postal_code string Postal or ZIP code ↳ country string Two-letter ISO 3166-1 alpha-2 country code ↳ first_name string First name of the addressee ↳ last_name string Last name of the addressee ↳ timezone string IANA timezone of the location ↳ status string Location status (ACTIVE or INACTIVE) ↳ type string Location type (PHYSICAL or MOBILE) ↳ merchant_id string ID of the merchant that owns the location ↳ country string Country code of the location ↳ language_code string Language code of the location ↳ currency string Currency used by the location ↳ phone_number string Phone number of the location ↳ business_name string Business name shown to customers ↳ business_email string Email of the business ↳ description string Description of the location ↳ capabilities array Capabilities of the location (e.g. CREDIT_CARD_PROCESSING) ↳ created_at string Timestamp when the location was created (RFC 3339) metadatajson List metadata ↳ count number Number of locations returned
Retrieve a single location by its ID
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) locationIdstring Yes ID of the location to retrieve (use "main" for the main location)
Parameter Type Description locationobject Square Location object ↳ id string Unique ID for the location ↳ name string Name of the location ↳ address object Physical address ↳ address_line_1 string First line of the address ↳ address_line_2 string Second line of the address ↳ address_line_3 string Third line of the address ↳ locality string City or town ↳ sublocality string Neighborhood or district ↳ administrative_district_level_1 string State, province, or region ↳ postal_code string Postal or ZIP code ↳ country string Two-letter ISO 3166-1 alpha-2 country code ↳ first_name string First name of the addressee ↳ last_name string Last name of the addressee ↳ timezone string IANA timezone of the location ↳ status string Location status (ACTIVE or INACTIVE) ↳ type string Location type (PHYSICAL or MOBILE) ↳ merchant_id string ID of the merchant that owns the location ↳ country string Country code of the location ↳ language_code string Language code of the location ↳ currency string Currency used by the location ↳ phone_number string Phone number of the location ↳ business_name string Business name shown to customers ↳ business_email string Email of the business ↳ description string Description of the location ↳ capabilities array Capabilities of the location (e.g. CREDIT_CARD_PROCESSING) ↳ created_at string Timestamp when the location was created (RFC 3339) metadatajson Location summary metadata ↳ id string Square location ID ↳ name string Location name
Create an order with line items, taxes, discounts, and fulfillments
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) orderjson Yes Square order object including location_id and line_items (e.g. {"location_id":"L1","line_items":[{"name":"Coffee","quantity":"1","base_price_money":{"amount":250,"currency":"USD"}}]}) idempotencyKeystring No Unique key to make the request idempotent (auto-generated if omitted)
Parameter Type Description orderobject Square Order object ↳ id string Unique ID for the order ↳ location_id string ID of the location for the order ↳ reference_id string Optional external reference for the order ↳ customer_id string ID of the associated customer ↳ state string Order state (OPEN, COMPLETED, or CANCELED) ↳ version number Optimistic concurrency version of the order ↳ line_items array Line items in the order ↳ taxes array Taxes applied to the order ↳ discounts array Discounts applied to the order ↳ fulfillments array Fulfillments for the order ↳ net_amounts json Net money amounts for the order ↳ total_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ total_tax_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ total_discount_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ total_service_charge_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ total_tip_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ created_at string Timestamp when the order was created (RFC 3339) ↳ updated_at string Timestamp when the order was last updated (RFC 3339) ↳ closed_at string Timestamp when the order was closed (RFC 3339) metadatajson Order summary metadata ↳ id string Square order ID ↳ state string Current order state ↳ location_id string Order location ID
Retrieve a single order by its ID
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) orderIdstring Yes ID of the order to retrieve
Parameter Type Description orderobject Square Order object ↳ id string Unique ID for the order ↳ location_id string ID of the location for the order ↳ reference_id string Optional external reference for the order ↳ customer_id string ID of the associated customer ↳ state string Order state (OPEN, COMPLETED, or CANCELED) ↳ version number Optimistic concurrency version of the order ↳ line_items array Line items in the order ↳ taxes array Taxes applied to the order ↳ discounts array Discounts applied to the order ↳ fulfillments array Fulfillments for the order ↳ net_amounts json Net money amounts for the order ↳ total_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ total_tax_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ total_discount_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ total_service_charge_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ total_tip_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ created_at string Timestamp when the order was created (RFC 3339) ↳ updated_at string Timestamp when the order was last updated (RFC 3339) ↳ closed_at string Timestamp when the order was closed (RFC 3339) metadatajson Order summary metadata ↳ id string Square order ID ↳ state string Current order state ↳ location_id string Order location ID
Search orders across one or more locations using filters and sorting
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) locationIdsarray Yes Array of location IDs to search within queryjson No Square order query object with optional filter and sort (e.g. {"filter":{"state_filter":{"states":["OPEN"]}}}) limitnumber No Maximum number of results to return per page cursorstring No Pagination cursor from a previous response
Parameter Type Description ordersarray Array of matching order objects ↳ id string Unique ID for the order ↳ location_id string ID of the location for the order ↳ reference_id string Optional external reference for the order ↳ customer_id string ID of the associated customer ↳ state string Order state (OPEN, COMPLETED, or CANCELED) ↳ version number Optimistic concurrency version of the order ↳ line_items array Line items in the order ↳ taxes array Taxes applied to the order ↳ discounts array Discounts applied to the order ↳ fulfillments array Fulfillments for the order ↳ net_amounts json Net money amounts for the order ↳ total_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ total_tax_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ total_discount_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ total_service_charge_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ total_tip_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ created_at string Timestamp when the order was created (RFC 3339) ↳ updated_at string Timestamp when the order was last updated (RFC 3339) ↳ closed_at string Timestamp when the order was closed (RFC 3339) metadatajson List pagination metadata ↳ count number Number of items returned in this page ↳ cursor string Pagination cursor to fetch the next page, if more results exist
Pay for an order using one or more already-approved payments
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) orderIdstring Yes ID of the order to pay for paymentIdsarray No IDs of approved payments to apply to the order orderVersionnumber No Version of the order being paid (for optimistic concurrency) idempotencyKeystring No Unique key to make the request idempotent (auto-generated if omitted)
Parameter Type Description orderobject Square Order object ↳ id string Unique ID for the order ↳ location_id string ID of the location for the order ↳ reference_id string Optional external reference for the order ↳ customer_id string ID of the associated customer ↳ state string Order state (OPEN, COMPLETED, or CANCELED) ↳ version number Optimistic concurrency version of the order ↳ line_items array Line items in the order ↳ taxes array Taxes applied to the order ↳ discounts array Discounts applied to the order ↳ fulfillments array Fulfillments for the order ↳ net_amounts json Net money amounts for the order ↳ total_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ total_tax_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ total_discount_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ total_service_charge_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ total_tip_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ created_at string Timestamp when the order was created (RFC 3339) ↳ updated_at string Timestamp when the order was last updated (RFC 3339) ↳ closed_at string Timestamp when the order was closed (RFC 3339) metadatajson Order summary metadata ↳ id string Square order ID ↳ state string Current order state ↳ location_id string Order location ID
Create a draft invoice for an existing order and customer
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) invoicejson Yes Square invoice object including location_id, order_id, primary_recipient, and payment_requests (e.g. {"location_id":"L1","order_id":"O1","primary_recipient":{"customer_id":"C1"},"payment_requests":[{"request_type":"BALANCE","due_date":"2026-07-01"}]}) idempotencyKeystring No Unique key to make the request idempotent (auto-generated if omitted)
Parameter Type Description invoiceobject Square Invoice object ↳ id string Unique ID for the invoice ↳ version number Optimistic concurrency version of the invoice ↳ location_id string ID of the location for the invoice ↳ order_id string ID of the order the invoice bills for ↳ status string Invoice status (DRAFT, UNPAID, SCHEDULED, PARTIALLY_PAID, PAID, etc.) ↳ invoice_number string Human-readable invoice number ↳ title string Title of the invoice ↳ description string Description of the invoice ↳ public_url string URL where the customer can view and pay the invoice ↳ primary_recipient json Primary recipient of the invoice ↳ payment_requests array Payment requests for the invoice ↳ next_payment_amount_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ scheduled_at string Timestamp when the invoice is scheduled to be sent (RFC 3339) ↳ timezone string Timezone used for invoice dates ↳ delivery_method string How the invoice is delivered (EMAIL, SHARE_MANUALLY, SMS) ↳ created_at string Timestamp when the invoice was created (RFC 3339) ↳ updated_at string Timestamp when the invoice was last updated (RFC 3339) metadatajson Invoice summary metadata ↳ id string Square invoice ID ↳ status string Current invoice status ↳ version number Invoice version
Retrieve a single invoice by its ID
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) invoiceIdstring Yes ID of the invoice to retrieve
Parameter Type Description invoiceobject Square Invoice object ↳ id string Unique ID for the invoice ↳ version number Optimistic concurrency version of the invoice ↳ location_id string ID of the location for the invoice ↳ order_id string ID of the order the invoice bills for ↳ status string Invoice status (DRAFT, UNPAID, SCHEDULED, PARTIALLY_PAID, PAID, etc.) ↳ invoice_number string Human-readable invoice number ↳ title string Title of the invoice ↳ description string Description of the invoice ↳ public_url string URL where the customer can view and pay the invoice ↳ primary_recipient json Primary recipient of the invoice ↳ payment_requests array Payment requests for the invoice ↳ next_payment_amount_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ scheduled_at string Timestamp when the invoice is scheduled to be sent (RFC 3339) ↳ timezone string Timezone used for invoice dates ↳ delivery_method string How the invoice is delivered (EMAIL, SHARE_MANUALLY, SMS) ↳ created_at string Timestamp when the invoice was created (RFC 3339) ↳ updated_at string Timestamp when the invoice was last updated (RFC 3339) metadatajson Invoice summary metadata ↳ id string Square invoice ID ↳ status string Current invoice status ↳ version number Invoice version
List invoices for a specific location
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) locationIdstring Yes ID of the location to list invoices for limitnumber No Maximum number of results to return per page cursorstring No Pagination cursor from a previous response
Parameter Type Description invoicesarray Array of invoice objects ↳ id string Unique ID for the invoice ↳ version number Optimistic concurrency version of the invoice ↳ location_id string ID of the location for the invoice ↳ order_id string ID of the order the invoice bills for ↳ status string Invoice status (DRAFT, UNPAID, SCHEDULED, PARTIALLY_PAID, PAID, etc.) ↳ invoice_number string Human-readable invoice number ↳ title string Title of the invoice ↳ description string Description of the invoice ↳ public_url string URL where the customer can view and pay the invoice ↳ primary_recipient json Primary recipient of the invoice ↳ payment_requests array Payment requests for the invoice ↳ next_payment_amount_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ scheduled_at string Timestamp when the invoice is scheduled to be sent (RFC 3339) ↳ timezone string Timezone used for invoice dates ↳ delivery_method string How the invoice is delivered (EMAIL, SHARE_MANUALLY, SMS) ↳ created_at string Timestamp when the invoice was created (RFC 3339) ↳ updated_at string Timestamp when the invoice was last updated (RFC 3339) metadatajson List pagination metadata ↳ count number Number of items returned in this page ↳ cursor string Pagination cursor to fetch the next page, if more results exist
Search invoices across one or more locations
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) locationIdstring Yes ID of the location to search within (Square allows one location per search) limitnumber No Maximum number of results to return per page cursorstring No Pagination cursor from a previous response
Parameter Type Description invoicesarray Array of matching invoice objects ↳ id string Unique ID for the invoice ↳ version number Optimistic concurrency version of the invoice ↳ location_id string ID of the location for the invoice ↳ order_id string ID of the order the invoice bills for ↳ status string Invoice status (DRAFT, UNPAID, SCHEDULED, PARTIALLY_PAID, PAID, etc.) ↳ invoice_number string Human-readable invoice number ↳ title string Title of the invoice ↳ description string Description of the invoice ↳ public_url string URL where the customer can view and pay the invoice ↳ primary_recipient json Primary recipient of the invoice ↳ payment_requests array Payment requests for the invoice ↳ next_payment_amount_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ scheduled_at string Timestamp when the invoice is scheduled to be sent (RFC 3339) ↳ timezone string Timezone used for invoice dates ↳ delivery_method string How the invoice is delivered (EMAIL, SHARE_MANUALLY, SMS) ↳ created_at string Timestamp when the invoice was created (RFC 3339) ↳ updated_at string Timestamp when the invoice was last updated (RFC 3339) metadatajson List pagination metadata ↳ count number Number of items returned in this page ↳ cursor string Pagination cursor to fetch the next page, if more results exist
Publish a draft invoice so it is sent to the customer and becomes payable
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) invoiceIdstring Yes ID of the invoice to publish versionnumber Yes Current version of the invoice (use the version returned by Create Invoice) idempotencyKeystring No Unique key to make the request idempotent (auto-generated if omitted)
Parameter Type Description invoiceobject Square Invoice object ↳ id string Unique ID for the invoice ↳ version number Optimistic concurrency version of the invoice ↳ location_id string ID of the location for the invoice ↳ order_id string ID of the order the invoice bills for ↳ status string Invoice status (DRAFT, UNPAID, SCHEDULED, PARTIALLY_PAID, PAID, etc.) ↳ invoice_number string Human-readable invoice number ↳ title string Title of the invoice ↳ description string Description of the invoice ↳ public_url string URL where the customer can view and pay the invoice ↳ primary_recipient json Primary recipient of the invoice ↳ payment_requests array Payment requests for the invoice ↳ next_payment_amount_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ scheduled_at string Timestamp when the invoice is scheduled to be sent (RFC 3339) ↳ timezone string Timezone used for invoice dates ↳ delivery_method string How the invoice is delivered (EMAIL, SHARE_MANUALLY, SMS) ↳ created_at string Timestamp when the invoice was created (RFC 3339) ↳ updated_at string Timestamp when the invoice was last updated (RFC 3339) metadatajson Invoice summary metadata ↳ id string Square invoice ID ↳ status string Current invoice status ↳ version number Invoice version
Cancel a published invoice that is unpaid or partially paid
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) invoiceIdstring Yes ID of the invoice to cancel versionnumber Yes Current version of the invoice
Parameter Type Description invoiceobject Square Invoice object ↳ id string Unique ID for the invoice ↳ version number Optimistic concurrency version of the invoice ↳ location_id string ID of the location for the invoice ↳ order_id string ID of the order the invoice bills for ↳ status string Invoice status (DRAFT, UNPAID, SCHEDULED, PARTIALLY_PAID, PAID, etc.) ↳ invoice_number string Human-readable invoice number ↳ title string Title of the invoice ↳ description string Description of the invoice ↳ public_url string URL where the customer can view and pay the invoice ↳ primary_recipient json Primary recipient of the invoice ↳ payment_requests array Payment requests for the invoice ↳ next_payment_amount_money object Monetary amount with a currency ↳ amount number Amount in the smallest denomination of the currency (e.g. cents for USD) ↳ currency string Three-letter ISO 4217 currency code (e.g. USD) ↳ scheduled_at string Timestamp when the invoice is scheduled to be sent (RFC 3339) ↳ timezone string Timezone used for invoice dates ↳ delivery_method string How the invoice is delivered (EMAIL, SHARE_MANUALLY, SMS) ↳ created_at string Timestamp when the invoice was created (RFC 3339) ↳ updated_at string Timestamp when the invoice was last updated (RFC 3339) metadatajson Invoice summary metadata ↳ id string Square invoice ID ↳ status string Current invoice status ↳ version number Invoice version
Delete a draft invoice
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) invoiceIdstring Yes ID of the draft invoice to delete versionnumber No Current version of the invoice (required if the invoice has been updated)
Parameter Type Description deletedboolean Whether the invoice was deleted idstring ID of the deleted invoice
Create or update a catalog object such as an item, variation, or category
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) objectjson Yes Square catalog object to create or update. Use ID "#name" for new objects (e.g. {"type":"ITEM","id":"#Coffee","item_data":{"name":"Coffee"}}) idempotencyKeystring No Unique key to make the request idempotent (auto-generated if omitted)
Parameter Type Description objectobject Square CatalogObject ↳ type string Type of catalog object (ITEM, ITEM_VARIATION, CATEGORY, IMAGE, etc.) ↳ id string Unique ID for the catalog object ↳ version number Optimistic concurrency version of the object ↳ updated_at string Timestamp when the object was last updated (RFC 3339) ↳ is_deleted boolean Whether the object is deleted ↳ present_at_all_locations boolean Whether the object is present at all locations ↳ item_data json Item-specific data (when type is ITEM) ↳ item_variation_data json Variation-specific data (when type is ITEM_VARIATION) ↳ category_data json Category-specific data (when type is CATEGORY) ↳ image_data json Image-specific data (when type is IMAGE) metadatajson Catalog object summary metadata ↳ id string Square catalog object ID ↳ type string Catalog object type ↳ version number Catalog object version
Retrieve a single catalog object by its ID
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) objectIdstring Yes ID of the catalog object to retrieve includeRelatedObjectsboolean No Whether to include related objects such as an item variations
Parameter Type Description objectobject Square CatalogObject ↳ type string Type of catalog object (ITEM, ITEM_VARIATION, CATEGORY, IMAGE, etc.) ↳ id string Unique ID for the catalog object ↳ version number Optimistic concurrency version of the object ↳ updated_at string Timestamp when the object was last updated (RFC 3339) ↳ is_deleted boolean Whether the object is deleted ↳ present_at_all_locations boolean Whether the object is present at all locations ↳ item_data json Item-specific data (when type is ITEM) ↳ item_variation_data json Variation-specific data (when type is ITEM_VARIATION) ↳ category_data json Category-specific data (when type is CATEGORY) ↳ image_data json Image-specific data (when type is IMAGE) metadatajson Catalog object summary metadata ↳ id string Square catalog object ID ↳ type string Catalog object type ↳ version number Catalog object version
List catalog objects, optionally filtered by type
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) typesstring No Comma-separated catalog object types to return (e.g. ITEM,CATEGORY). Defaults to all top-level types cursorstring No Pagination cursor from a previous response
Parameter Type Description objectsarray Array of catalog objects ↳ type string Type of catalog object (ITEM, ITEM_VARIATION, CATEGORY, IMAGE, etc.) ↳ id string Unique ID for the catalog object ↳ version number Optimistic concurrency version of the object ↳ updated_at string Timestamp when the object was last updated (RFC 3339) ↳ is_deleted boolean Whether the object is deleted ↳ present_at_all_locations boolean Whether the object is present at all locations ↳ item_data json Item-specific data (when type is ITEM) ↳ item_variation_data json Variation-specific data (when type is ITEM_VARIATION) ↳ category_data json Category-specific data (when type is CATEGORY) ↳ image_data json Image-specific data (when type is IMAGE) metadatajson List pagination metadata ↳ count number Number of items returned in this page ↳ cursor string Pagination cursor to fetch the next page, if more results exist
Search catalog objects by type and query filters
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) objectTypesarray No Array of catalog object types to search (e.g. ["ITEM","CATEGORY"]) queryjson No Square catalog query object (e.g. {"text_query":{"keywords":["coffee"]}} or {"prefix_query":{...}}) limitnumber No Maximum number of results to return per page cursorstring No Pagination cursor from a previous response
Parameter Type Description objectsarray Array of matching catalog objects ↳ type string Type of catalog object (ITEM, ITEM_VARIATION, CATEGORY, IMAGE, etc.) ↳ id string Unique ID for the catalog object ↳ version number Optimistic concurrency version of the object ↳ updated_at string Timestamp when the object was last updated (RFC 3339) ↳ is_deleted boolean Whether the object is deleted ↳ present_at_all_locations boolean Whether the object is present at all locations ↳ item_data json Item-specific data (when type is ITEM) ↳ item_variation_data json Variation-specific data (when type is ITEM_VARIATION) ↳ category_data json Category-specific data (when type is CATEGORY) ↳ image_data json Image-specific data (when type is IMAGE) metadatajson List pagination metadata ↳ count number Number of items returned in this page ↳ cursor string Pagination cursor to fetch the next page, if more results exist
Upload an image and attach it to the catalog, optionally to a specific item
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) filefile Yes The image file to upload (UserFile object) fileNamestring No Optional filename override for the image objectIdstring No ID of the catalog object (e.g. an item) to attach the image to captionstring No Caption (alt text) for the image idempotencyKeystring No Unique key to make the request idempotent (auto-generated if omitted)
Parameter Type Description objectobject Square CatalogObject ↳ type string Type of catalog object (ITEM, ITEM_VARIATION, CATEGORY, IMAGE, etc.) ↳ id string Unique ID for the catalog object ↳ version number Optimistic concurrency version of the object ↳ updated_at string Timestamp when the object was last updated (RFC 3339) ↳ is_deleted boolean Whether the object is deleted ↳ present_at_all_locations boolean Whether the object is present at all locations ↳ item_data json Item-specific data (when type is ITEM) ↳ item_variation_data json Variation-specific data (when type is ITEM_VARIATION) ↳ category_data json Category-specific data (when type is CATEGORY) ↳ image_data json Image-specific data (when type is IMAGE) metadatajson Catalog object summary metadata ↳ id string Square catalog object ID ↳ type string Catalog object type ↳ version number Catalog object version
Delete a catalog object and its children (e.g. an item and its variations)
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) objectIdstring Yes ID of the catalog object to delete
Parameter Type Description deletedboolean Whether the catalog object was deleted deleted_object_idsarray IDs of all catalog objects deleted (including children) deleted_atstring Timestamp when the deletion occurred (RFC 3339)
Retrieve current inventory counts for catalog items across locations
Inputs and outputsParameter Type Required Description apiKeystring Yes Square access token (personal access token) catalogObjectIdsarray No IDs of the catalog item variations to retrieve counts for locationIdsarray No IDs of the locations to retrieve counts for (defaults to all locations) statesarray No Inventory states to filter by (e.g. IN_STOCK, SOLD, IN_TRANSIT) updatedAfterstring No Only return counts updated after this RFC 3339 timestamp limitnumber No Maximum number of results to return per page (1-1000) cursorstring No Pagination cursor from a previous response
Parameter Type Description countsarray Array of inventory count objects ↳ catalog_object_id string ID of the catalog object (item variation) being counted ↳ catalog_object_type string Type of the counted catalog object (usually ITEM_VARIATION) ↳ state string Inventory state (e.g. IN_STOCK, SOLD, WASTE) ↳ location_id string ID of the location for this count ↳ quantity string Number of units in the given state at the location ↳ calculated_at string Timestamp when the count was calculated (RFC 3339) metadatajson List pagination metadata ↳ count number Number of items returned in this page ↳ cursor string Pagination cursor to fetch the next page, if more results exist