Square GiftCards API

The GiftCards API from Square — 6 operation(s) for giftcards.

Documentation

📖
Documentation
https://developer.squareup.com/docs/payments-overview
📖
APIReference
https://developer.squareup.com/reference/square/payments-api
📖
Documentation
https://developer.squareup.com/docs/orders-api/what-it-does
📖
APIReference
https://developer.squareup.com/reference/square/orders-api
📖
Documentation
https://developer.squareup.com/docs/catalog-api/what-it-does
📖
APIReference
https://developer.squareup.com/reference/square/catalog-api
📖
Documentation
https://developer.squareup.com/docs/inventory-api/what-it-does
📖
APIReference
https://developer.squareup.com/reference/square/inventory-api
📖
Documentation
https://developer.squareup.com/docs/customers
📖
APIReference
https://developer.squareup.com/reference/square/customers-api
📖
Documentation
https://developer.squareup.com/docs/locations-api
📖
APIReference
https://developer.squareup.com/reference/square/locations-api
📖
Documentation
https://developer.squareup.com/docs/team/overview
📖
APIReference
https://developer.squareup.com/reference/square/team-api
📖
Documentation
https://developer.squareup.com/docs/labor-api/what-it-does
📖
APIReference
https://developer.squareup.com/reference/square/labor-api
📖
Documentation
https://developer.squareup.com/docs/bookings-api/what-it-is
📖
APIReference
https://developer.squareup.com/reference/square/bookings-api
📖
Documentation
https://developer.squareup.com/docs/loyalty-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/loyalty-api
📖
Documentation
https://developer.squareup.com/docs/gift-cards/using-gift-cards-api
📖
APIReference
https://developer.squareup.com/reference/square/gift-cards-api
📖
Documentation
https://developer.squareup.com/docs/invoices-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/invoices-api
📖
Documentation
https://developer.squareup.com/docs/subscriptions-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/subscriptions-api
📖
Documentation
https://developer.squareup.com/docs/checkout-api
📖
APIReference
https://developer.squareup.com/reference/square/checkout-api
📖
Documentation
https://developer.squareup.com/docs/terminal-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/terminal-api
📖
Documentation
https://developer.squareup.com/docs/payments-refunds
📖
APIReference
https://developer.squareup.com/reference/square/refunds-api
📖
Documentation
https://developer.squareup.com/docs/disputes-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/disputes-api
📖
Documentation
https://developer.squareup.com/docs/merchants-api
📖
APIReference
https://developer.squareup.com/reference/square/merchants-api
📖
Documentation
https://developer.squareup.com/docs/cards-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/cards-api
📖
Documentation
https://developer.squareup.com/docs/vendors-api/manage-vendors-in-apps
📖
APIReference
https://developer.squareup.com/reference/square/vendors-api
📖
Documentation
https://developer.squareup.com/docs/cashdrawershift-api/reporting
📖
APIReference
https://developer.squareup.com/reference/square/cash-drawers-api
📖
Documentation
https://developer.squareup.com/docs/bank-accounts-api
📖
APIReference
https://developer.squareup.com/reference/square/bank-accounts-api
📖
Documentation
https://developer.squareup.com/docs/payouts-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/payouts-api
📖
Documentation
https://developer.squareup.com/docs/web-payments/apple-pay
📖
APIReference
https://developer.squareup.com/reference/square/apple-pay-api
📖
Documentation
https://developer.squareup.com/docs/sites-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/sites-api
📖
Documentation
https://developer.squareup.com/docs/snippets-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/snippets-api
📖
Documentation
https://developer.squareup.com/docs/oauth-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/oauth-api
📖
Documentation
https://developer.squareup.com/docs/webhooks/overview
📖
APIReference
https://developer.squareup.com/reference/square/webhook-subscriptions-api
📖
Documentation
https://developer.squareup.com/docs/events-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/events-api
📖
Documentation
https://developer.squareup.com/docs/devices-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/devices-api
📖
Documentation
https://developer.squareup.com/docs/customer-groups-api/what-it-does
📖
APIReference
https://developer.squareup.com/reference/square/customer-groups-api
📖
Documentation
https://developer.squareup.com/docs/customer-segments-api/what-it-does
📖
APIReference
https://developer.squareup.com/reference/square/customer-segments-api
📖
Documentation
https://developer.squareup.com/docs/gift-cards/using-gift-card-activities-api
📖
APIReference
https://developer.squareup.com/reference/square/gift-card-activities-api
📖
Documentation
https://developer.squareup.com/docs/customer-custom-attributes-api/overview
📖
APIReference
https://developer.squareup.com/reference/square/customer-custom-attributes-api

Specifications

Other Resources

OpenAPI Specification

square-giftcards-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  version: '2.0'
  title: Square ApplePay GiftCards API
  description: 'Supercharge Square for sellers of every size. Our entire connected commerce platform  from elegant hardware to a rich suite of Square APIs  is yours to build with. Whether youre developing an app or composing a bespoke solution, this is the place to make it happen. '
  termsOfService: https://connect.squareup.com/tos
  contact:
    name: Square Developer Platform
    email: developers@squareup.com
    url: https://squareup.com/developers
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
  externalDocs:
    description: 'Read the official documentation here:'
    url: https://docs.connect.squareup.com/
  x-server-configuration:
    default-environment: production
    default-server: default
    environments:
    - name: production
      servers:
      - name: default
        url: https://connect.squareup.com
    - name: sandbox
      servers:
      - name: default
        url: https://connect.squareupsandbox.com
    - name: custom
      servers:
      - name: default
        url: '{custom_url}'
    parameters:
    - name: custom_url
      description: Sets the base URL requests are made to. Defaults to `https://connect.squareup.com`
      type: string
      example: https://connect.squareup.com
  x-square-generic-error-codes:
  - ACCESS_TOKEN_EXPIRED
  - ACCESS_TOKEN_REVOKED
  - API_VERSION_INCOMPATIBLE
  - APPLICATION_DISABLED
  - ARRAY_EMPTY
  - ARRAY_LENGTH_TOO_LONG
  - ARRAY_LENGTH_TOO_SHORT
  - BAD_CERTIFICATE
  - BAD_GATEWAY
  - BAD_REQUEST
  - CONFLICT
  - CONFLICTING_PARAMETERS
  - CURRENCY_MISMATCH
  - EXPECTED_ARRAY
  - EXPECTED_BASE64_ENCODED_BYTE_ARRAY
  - EXPECTED_BOOLEAN
  - EXPECTED_FLOAT
  - EXPECTED_INTEGER
  - EXPECTED_JSON_BODY
  - EXPECTED_MAP
  - EXPECTED_OBJECT
  - EXPECTED_STRING
  - FORBIDDEN
  - GATEWAY_TIMEOUT
  - GONE
  - IDEMPOTENCY_KEY_REUSED
  - INCORRECT_TYPE
  - INSUFFICIENT_SCOPES
  - INTERNAL_SERVER_ERROR
  - INVALID_ARRAY_VALUE
  - INVALID_CONTENT_TYPE
  - INVALID_CURSOR
  - INVALID_ENUM_VALUE
  - INVALID_FORM_VALUE
  - INVALID_SORT_ORDER
  - INVALID_SQUARE_VERSION_FORMAT
  - INVALID_TIME
  - INVALID_TIME_RANGE
  - INVALID_VALUE
  - LOCATION_MISMATCH
  - MAP_KEY_LENGTH_TOO_LONG
  - MAP_KEY_LENGTH_TOO_SHORT
  - MERCHANT_SUBSCRIPTION_NOT_FOUND
  - METHOD_NOT_ALLOWED
  - MISSING_REQUIRED_PARAMETER
  - NOT_ACCEPTABLE
  - NOT_FOUND
  - NOT_IMPLEMENTED
  - NO_FIELDS_SET
  - RATE_LIMITED
  - REQUEST_ENTITY_TOO_LARGE
  - REQUEST_TIMEOUT
  - SANDBOX_NOT_SUPPORTED
  - SERVICE_UNAVAILABLE
  - TOO_MANY_MAP_ENTRIES
  - UNAUTHORIZED
  - UNEXPECTED_VALUE
  - UNKNOWN_BODY_PARAMETER
  - UNKNOWN_QUERY_PARAMETER
  - UNPROCESSABLE_ENTITY
  - UNSUPPORTED_MEDIA_TYPE
  - V1_ACCESS_TOKEN
  - V1_APPLICATION
  - VALUE_EMPTY
  - VALUE_REGEX_MISMATCH
  - VALUE_TOO_HIGH
  - VALUE_TOO_LONG
  - VALUE_TOO_LOW
  - VALUE_TOO_SHORT
servers:
- url: https://connect.squareup.com
  variables: {}
tags:
- name: GiftCards
paths:
  /v2/gift-cards:
    get:
      tags:
      - GiftCards
      summary: Square List Gift Cards
      operationId: ListGiftCards
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      description: "Lists all gift cards. You can specify optional filters to retrieve \na subset of the gift cards. Results are sorted by `created_at` in ascending order."
      x-release-status: PUBLIC
      security:
      - oauth2:
        - GIFTCARDS_READ
      parameters:
      - name: type
        description: 'If a [type](entity:GiftCardType) is provided, the endpoint returns gift cards of the specified type.

          Otherwise, the endpoint returns gift cards of all types.'
        schema:
          type: string
        in: query
        required: false
      - name: state
        description: 'If a [state](entity:GiftCardStatus) is provided, the endpoint returns the gift cards in the specified state.

          Otherwise, the endpoint returns the gift cards of all states.'
        schema:
          type: string
        in: query
        required: false
      - name: limit
        description: 'If a limit is provided, the endpoint returns only the specified number of results per page.

          The maximum value is 200. The default value is 30.

          For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).'
        schema:
          type: integer
        in: query
        required: false
      - name: cursor
        description: "A pagination cursor returned by a previous call to this endpoint.\nProvide this cursor to retrieve the next set of results for the original query.\nIf a cursor is not provided, the endpoint returns the first page of the results. \nFor more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination)."
        schema:
          type: string
        in: query
        required: false
      - name: customer_id
        description: If a customer ID is provided, the endpoint returns only the gift cards linked to the specified customer.
        schema:
          type: string
        in: query
        required: false
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListGiftCardsResponse'
    post:
      tags:
      - GiftCards
      summary: Square Create Gift Card
      operationId: CreateGiftCard
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      description: 'Creates a digital gift card or registers a physical (plastic) gift card. The resulting gift card

        has a `PENDING` state. To activate a gift card so that it can be redeemed for purchases, call

        [CreateGiftCardActivity](api-endpoint:GiftCardActivities-CreateGiftCardActivity) and create an `ACTIVATE`

        activity with the initial balance. Alternatively, you can use [RefundPayment](api-endpoint:Refunds-RefundPayment)

        to refund a payment to the new gift card.'
      x-release-status: PUBLIC
      security:
      - oauth2:
        - GIFTCARDS_WRITE
      parameters: []
      requestBody:
        required: true
        description: 'An object containing the fields to POST for the request.


          See the corresponding object definition for field details.'
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateGiftCardRequest'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateGiftCardResponse'
      x-endpoint-errors:
      - error-code: TEMPORARY_ERROR
  /v2/gift-cards/from-gan:
    post:
      tags:
      - GiftCards
      summary: Square Retrieve Gift Card from GAN
      operationId: RetrieveGiftCardFromGAN
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      description: Retrieves a gift card using the gift card account number (GAN).
      x-release-status: PUBLIC
      security:
      - oauth2:
        - GIFTCARDS_READ
      parameters: []
      requestBody:
        required: true
        description: 'An object containing the fields to POST for the request.


          See the corresponding object definition for field details.'
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RetrieveGiftCardFromGANRequest'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RetrieveGiftCardFromGANResponse'
  /v2/gift-cards/from-nonce:
    post:
      tags:
      - GiftCards
      summary: Square Retrieve Gift Card from Nonce
      operationId: RetrieveGiftCardFromNonce
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      description: Retrieves a gift card using a secure payment token that represents the gift card.
      x-release-status: PUBLIC
      security:
      - oauth2:
        - GIFTCARDS_READ
      parameters: []
      requestBody:
        required: true
        description: 'An object containing the fields to POST for the request.


          See the corresponding object definition for field details.'
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RetrieveGiftCardFromNonceRequest'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RetrieveGiftCardFromNonceResponse'
      x-endpoint-errors:
      - error-code: CARD_TOKEN_EXPIRED
      - error-code: CARD_TOKEN_USED
  /v2/gift-cards/{gift_card_id}/link-customer:
    post:
      tags:
      - GiftCards
      summary: Square Link Customer to Gift Card
      operationId: LinkCustomerToGiftCard
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      description: Links a customer to a gift card, which is also referred to as adding a card on file.
      x-release-status: PUBLIC
      security:
      - oauth2:
        - GIFTCARDS_WRITE
      parameters:
      - name: gift_card_id
        description: The ID of the gift card to be linked.
        schema:
          type: string
        in: path
        required: true
      requestBody:
        required: true
        description: 'An object containing the fields to POST for the request.


          See the corresponding object definition for field details.'
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LinkCustomerToGiftCardRequest'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LinkCustomerToGiftCardResponse'
  /v2/gift-cards/{gift_card_id}/unlink-customer:
    post:
      tags:
      - GiftCards
      summary: Square Unlink Customer from Gift Card
      operationId: UnlinkCustomerFromGiftCard
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      description: Unlinks a customer from a gift card, which is also referred to as removing a card on file.
      x-release-status: PUBLIC
      security:
      - oauth2:
        - GIFTCARDS_WRITE
      parameters:
      - name: gift_card_id
        description: The ID of the gift card to be unlinked.
        schema:
          type: string
        in: path
        required: true
      requestBody:
        required: true
        description: 'An object containing the fields to POST for the request.


          See the corresponding object definition for field details.'
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UnlinkCustomerFromGiftCardRequest'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnlinkCustomerFromGiftCardResponse'
  /v2/gift-cards/{id}:
    get:
      tags:
      - GiftCards
      summary: Square Retrieve Gift Card
      operationId: RetrieveGiftCard
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      description: Retrieves a gift card using the gift card ID.
      x-release-status: PUBLIC
      security:
      - oauth2:
        - GIFTCARDS_READ
      parameters:
      - name: id
        description: The ID of the gift card to retrieve.
        schema:
          type: string
        in: path
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RetrieveGiftCardResponse'
components:
  schemas:
    UnlinkCustomerFromGiftCardRequest:
      type: object
      description: A request to unlink a customer from a gift card.
      x-release-status: PUBLIC
      x-params-example: ?gift_card_id=gftc:71ea002277a34f8a945e284b04822edb
      required:
      - customer_id
      properties:
        customer_id:
          type: string
          description: The ID of the customer to unlink from the gift card.
          minLength: 1
          maxLength: 191
      example:
        customer_id: GKY0FZ3V717AH8Q2D821PNT2ZW
    RetrieveGiftCardFromGANResponse:
      type: object
      description: 'A response that contains a `GiftCard`. This response might contain a set of `Error` objects

        if the request resulted in errors.'
      x-release-status: PUBLIC
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/Error'
          description: Any errors that occurred during the request.
        gift_card:
          $ref: '#/components/schemas/GiftCard'
          description: A gift card that was fetched, if present. It returns empty if an error occurred.
      example:
        gift_card:
          balance_money:
            amount: 5000
            currency: USD
          created_at: '2021-05-20T22:26:54.000Z'
          gan: '7783320001001635'
          gan_source: SQUARE
          id: gftc:6944163553804e439d89adb47caf806a
          state: ACTIVE
          type: DIGITAL
    ErrorCategory:
      type: string
      enum:
      - API_ERROR
      - AUTHENTICATION_ERROR
      - INVALID_REQUEST_ERROR
      - RATE_LIMIT_ERROR
      - PAYMENT_METHOD_ERROR
      - REFUND_ERROR
      - MERCHANT_SUBSCRIPTION_ERROR
      - EXTERNAL_VENDOR_ERROR
      x-enum-elements:
      - name: API_ERROR
        description: An error occurred with the Connect API itself.
      - name: AUTHENTICATION_ERROR
        description: 'An authentication error occurred. Most commonly, the request had

          a missing, malformed, or otherwise invalid `Authorization` header.'
      - name: INVALID_REQUEST_ERROR
        description: 'The request was invalid. Most commonly, a required parameter was

          missing, or a provided parameter had an invalid value.'
      - name: RATE_LIMIT_ERROR
        description: 'Your application reached the Square API rate limit. You might receive this error if your application sends a high number of requests

          to Square APIs in a short period of time.


          Your application should monitor responses for `429 RATE_LIMITED` errors and use a retry mechanism with an [exponential backoff](https://en.wikipedia.org/wiki/Exponential_backoff)

          schedule to resend the requests at an increasingly slower rate. It is also a good practice to use a randomized delay (jitter) in your retry schedule.'
      - name: PAYMENT_METHOD_ERROR
        description: 'An error occurred while processing a payment method. Most commonly,

          the details of the payment method were invalid (such as a card''s CVV

          or expiration date).'
      - name: REFUND_ERROR
        description: An error occurred while attempting to process a refund.
      - name: MERCHANT_SUBSCRIPTION_ERROR
        description: An error occurred when checking a merchant subscription status
      - name: EXTERNAL_VENDOR_ERROR
        description: An error that is returned from an external vendor's API
      description: 'Indicates which high-level category of error has occurred during a

        request to the Connect API.'
      x-release-status: PUBLIC
    ErrorCode:
      type: string
      enum:
      - INTERNAL_SERVER_ERROR
      - UNAUTHORIZED
      - ACCESS_TOKEN_EXPIRED
      - ACCESS_TOKEN_REVOKED
      - CLIENT_DISABLED
      - FORBIDDEN
      - INSUFFICIENT_SCOPES
      - APPLICATION_DISABLED
      - V1_APPLICATION
      - V1_ACCESS_TOKEN
      - CARD_PROCESSING_NOT_ENABLED
      - MERCHANT_SUBSCRIPTION_NOT_FOUND
      - BAD_REQUEST
      - MISSING_REQUIRED_PARAMETER
      - INCORRECT_TYPE
      - INVALID_TIME
      - INVALID_TIME_RANGE
      - INVALID_VALUE
      - INVALID_CURSOR
      - UNKNOWN_QUERY_PARAMETER
      - CONFLICTING_PARAMETERS
      - EXPECTED_JSON_BODY
      - INVALID_SORT_ORDER
      - VALUE_REGEX_MISMATCH
      - VALUE_TOO_SHORT
      - VALUE_TOO_LONG
      - VALUE_TOO_LOW
      - VALUE_TOO_HIGH
      - VALUE_EMPTY
      - ARRAY_LENGTH_TOO_LONG
      - ARRAY_LENGTH_TOO_SHORT
      - ARRAY_EMPTY
      - EXPECTED_BOOLEAN
      - EXPECTED_INTEGER
      - EXPECTED_FLOAT
      - EXPECTED_STRING
      - EXPECTED_OBJECT
      - EXPECTED_ARRAY
      - EXPECTED_MAP
      - EXPECTED_BASE64_ENCODED_BYTE_ARRAY
      - INVALID_ARRAY_VALUE
      - INVALID_ENUM_VALUE
      - INVALID_CONTENT_TYPE
      - INVALID_FORM_VALUE
      - CUSTOMER_NOT_FOUND
      - ONE_INSTRUMENT_EXPECTED
      - NO_FIELDS_SET
      - TOO_MANY_MAP_ENTRIES
      - MAP_KEY_LENGTH_TOO_SHORT
      - MAP_KEY_LENGTH_TOO_LONG
      - CUSTOMER_MISSING_NAME
      - CUSTOMER_MISSING_EMAIL
      - INVALID_PAUSE_LENGTH
      - INVALID_DATE
      - UNSUPPORTED_COUNTRY
      - UNSUPPORTED_CURRENCY
      - APPLE_TTP_PIN_TOKEN
      - CARD_EXPIRED
      - INVALID_EXPIRATION
      - INVALID_EXPIRATION_YEAR
      - INVALID_EXPIRATION_DATE
      - UNSUPPORTED_CARD_BRAND
      - UNSUPPORTED_ENTRY_METHOD
      - INVALID_ENCRYPTED_CARD
      - INVALID_CARD
      - PAYMENT_AMOUNT_MISMATCH
      - GENERIC_DECLINE
      - CVV_FAILURE
      - ADDRESS_VERIFICATION_FAILURE
      - INVALID_ACCOUNT
      - CURRENCY_MISMATCH
      - INSUFFICIENT_FUNDS
      - INSUFFICIENT_PERMISSIONS
      - CARDHOLDER_INSUFFICIENT_PERMISSIONS
      - INVALID_LOCATION
      - TRANSACTION_LIMIT
      - VOICE_FAILURE
      - PAN_FAILURE
      - EXPIRATION_FAILURE
      - CARD_NOT_SUPPORTED
      - INVALID_PIN
      - MISSING_PIN
      - MISSING_ACCOUNT_TYPE
      - INVALID_POSTAL_CODE
      - INVALID_FEES
      - MANUALLY_ENTERED_PAYMENT_NOT_SUPPORTED
      - PAYMENT_LIMIT_EXCEEDED
      - GIFT_CARD_AVAILABLE_AMOUNT
      - ACCOUNT_UNUSABLE
      - BUYER_REFUSED_PAYMENT
      - DELAYED_TRANSACTION_EXPIRED
      - DELAYED_TRANSACTION_CANCELED
      - DELAYED_TRANSACTION_CAPTURED
      - DELAYED_TRANSACTION_FAILED
      - CARD_TOKEN_EXPIRED
      - CARD_TOKEN_USED
      - AMOUNT_TOO_HIGH
      - UNSUPPORTED_INSTRUMENT_TYPE
      - REFUND_AMOUNT_INVALID
      - REFUND_ALREADY_PENDING
      - PAYMENT_NOT_REFUNDABLE
      - PAYMENT_NOT_REFUNDABLE_DUE_TO_DISPUTE
      - REFUND_DECLINED
      - INSUFFICIENT_PERMISSIONS_FOR_REFUND
      - INVALID_CARD_DATA
      - SOURCE_USED
      - SOURCE_EXPIRED
      - UNSUPPORTED_LOYALTY_REWARD_TIER
      - LOCATION_MISMATCH
      - IDEMPOTENCY_KEY_REUSED
      - UNEXPECTED_VALUE
      - SANDBOX_NOT_SUPPORTED
      - INVALID_EMAIL_ADDRESS
      - INVALID_PHONE_NUMBER
      - CHECKOUT_EXPIRED
      - BAD_CERTIFICATE
      - INVALID_SQUARE_VERSION_FORMAT
      - API_VERSION_INCOMPATIBLE
      - CARD_PRESENCE_REQUIRED
      - UNSUPPORTED_SOURCE_TYPE
      - CARD_MISMATCH
      - PLAID_ERROR
      - PLAID_ERROR_ITEM_LOGIN_REQUIRED
      - PLAID_ERROR_RATE_LIMIT
      - CARD_DECLINED
      - VERIFY_CVV_FAILURE
      - VERIFY_AVS_FAILURE
      - CARD_DECLINED_CALL_ISSUER
      - CARD_DECLINED_VERIFICATION_REQUIRED
      - BAD_EXPIRATION
      - CHIP_INSERTION_REQUIRED
      - ALLOWABLE_PIN_TRIES_EXCEEDED
      - RESERVATION_DECLINED
      - UNKNOWN_BODY_PARAMETER
      - NOT_FOUND
      - APPLE_PAYMENT_PROCESSING_CERTIFICATE_HASH_NOT_FOUND
      - METHOD_NOT_ALLOWED
      - NOT_ACCEPTABLE
      - REQUEST_TIMEOUT
      - CONFLICT
      - GONE
      - REQUEST_ENTITY_TOO_LARGE
      - UNSUPPORTED_MEDIA_TYPE
      - UNPROCESSABLE_ENTITY
      - RATE_LIMITED
      - NOT_IMPLEMENTED
      - BAD_GATEWAY
      - SERVICE_UNAVAILABLE
      - TEMPORARY_ERROR
      - GATEWAY_TIMEOUT
      x-enum-elements:
      - name: INTERNAL_SERVER_ERROR
        description: A general server error occurred.
        error-category: API_ERROR
      - name: UNAUTHORIZED
        description: A general authorization error occurred.
        error-category: AUTHENTICATION_ERROR
      - name: ACCESS_TOKEN_EXPIRED
        description: The provided access token has expired.
        error-category: AUTHENTICATION_ERROR
      - name: ACCESS_TOKEN_REVOKED
        description: The provided access token has been revoked.
        error-category: AUTHENTICATION_ERROR
      - name: CLIENT_DISABLED
        description: The provided client has been disabled.
        error-category: AUTHENTICATION_ERROR
      - name: FORBIDDEN
        description: A general access error occurred.
        error-category: AUTHENTICATION_ERROR
      - name: INSUFFICIENT_SCOPES
        description: 'The provided access token does not have permission

          to execute the requested action.'
        error-category: AUTHENTICATION_ERROR
      - name: APPLICATION_DISABLED
        description: The calling application was disabled.
        error-category: INVALID_REQUEST_ERROR
      - name: V1_APPLICATION
        description: 'The calling application was created prior to

          2016-03-30 and is not compatible with v2 Square API calls.'
        error-category: INVALID_REQUEST_ERROR
      - name: V1_ACCESS_TOKEN
        description: 'The calling application is using an access token

          created prior to 2016-03-30 and is not compatible with v2 Square API

          calls.'
        error-category: INVALID_REQUEST_ERROR
      - name: CARD_PROCESSING_NOT_ENABLED
        description: 'The location provided in the API call is not

          enabled for credit card processing.'
        error-category: INVALID_REQUEST_ERROR
      - name: MERCHANT_SUBSCRIPTION_NOT_FOUND
        description: A required subscription was not found for the merchant
        error-category: MERCHANT_SUBSCRIPTION_ERROR
      - name: BAD_REQUEST
        description: A general error occurred with the request.
        error-category: INVALID_REQUEST_ERROR
      - name: MISSING_REQUIRED_PARAMETER
        description: 'The request is missing a required path, query, or

          body parameter.'
        error-category: INVALID_REQUEST_ERROR
      - name: INCORRECT_TYPE
        description: 'The value provided in the request is the wrong

          type. For example, a string instead of an integer.'
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_TIME
        description: 'Formatting for the provided time value is

          incorrect.'
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_TIME_RANGE
        description: 'The time range provided in the request is invalid.

          For example, the end time is before the start time.'
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_VALUE
        description: 'The provided value is invalid. For example,

          including `%` in a phone number.'
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_CURSOR
        description: 'The pagination cursor included in the request is

          invalid.'
        error-category: INVALID_REQUEST_ERROR
      - name: UNKNOWN_QUERY_PARAMETER
        description: 'The query parameters provided is invalid for the

          requested endpoint.'
        error-category: INVALID_REQUEST_ERROR
      - name: CONFLICTING_PARAMETERS
        description: 'One or more of the request parameters conflict with

          each other.'
        error-category: INVALID_REQUEST_ERROR
      - name: EXPECTED_JSON_BODY
        description: The request body is not a JSON object.
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_SORT_ORDER
        description: 'The provided sort order is not a valid key.

          Currently, sort order must be `ASC` or `DESC`.'
        error-category: INVALID_REQUEST_ERROR
      - name: VALUE_REGEX_MISMATCH
        description: 'The provided value does not match an expected

          regular expression.'
        error-category: INVALID_REQUEST_ERROR
      - name: VALUE_TOO_SHORT
        description: 'The provided string value is shorter than the

          minimum length allowed.'
        error-category: INVALID_REQUEST_ERROR
      - name: VALUE_TOO_LONG
        description: 'The provided string value is longer than the

          maximum length allowed.'
        error-category: INVALID_REQUEST_ERROR
      - name: VALUE_TOO_LOW
        description: 'The provided value is less than the supported

          minimum.'
        error-category: INVALID_REQUEST_ERROR
      - name: VALUE_TOO_HIGH
        description: 'The provided value is greater than the supported

          maximum.'
        error-category: INVALID_REQUEST_ERROR
      - name: VALUE_EMPTY
        description: 'The provided value has a default (empty) value

          such as a blank string.'
        error-category: INVALID_REQUEST_ERROR
      - name: ARRAY_LENGTH_TOO_LONG
        description: The provided array has too many elements.
        error-category: INVALID_REQUEST_ERROR
      - name: ARRAY_LENGTH_TOO_SHORT
        description: The provided array has too few elements.
        error-category: INVALID_REQUEST_ERROR
      - name: ARRAY_EMPTY
        description: The provided array is empty.
        error-category: INVALID_REQUEST_ERROR
      - name: EXPECTED_BOOLEAN
        description: 'The endpoint expected the provided value to be a

          boolean.'
        error-category: INVALID_REQUEST_ERROR
      - name: EXPECTED_INTEGER
        description: 'The endpoint expected the provided value to be an

          integer.'
        error-category: INVALID_REQUEST_ERROR
      - name: EXPECTED_FLOAT
        description: 'The endpoint expected the provided value to be a

          float.'
        error-category: INVALID_REQUEST_ERROR
      - name: EXPECTED_STRING
        description: 'The endpoint expected the provided value to be a

          string.'
        error-category: INVALID_REQUEST_ERROR
      - name: EXPECTED_OBJECT
        description: 'The endpoint expected the provided value to be a

          JSON object.'
        error-category: INVALID_REQUEST_ERROR
      - name: EXPECTED_ARRAY
        description: 'The endpoint expected the provided value to be an

          array or list.'
        error-category: INVALID_REQUEST_ERROR
      - name: EXPECTED_MAP
        description: 'The endpoint expected the provided value to be a

          map or associative array.'
        error-category: INVALID_REQUEST_ERROR
      - name: EXPECTED_BASE64_ENCODED_BYTE_ARRAY
        description: 'The endpoint expected the provided value to be an

          array encoded in base64.'
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_ARRAY_VALUE
        description: 'One or more objects in the array does not match the

          array type.'
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_ENUM_VALUE
        description: 'The provided static string is not valid for the

          field.'
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_CONTENT_TYPE
        description: Invalid content type header.
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_FORM_VALUE
        description: 'Only relevant for applications created prior to

          2016-03-30. Indicates there was an error while parsing form values.'
        error-category: INVALID_REQUEST_ERROR
      - name: CUSTOMER_NOT_FOUND
        description: The provided customer id can't be found in the merchant's customers list.
        error-category: INVALID_REQUEST_ERROR
      - name: ONE_INSTRUMENT_EXPECTED
        description: A general error occurred.
        error-category: INVALID_REQUEST_ERROR
      - name: NO_FIELDS_SET
        description: A general error occurred.
        error-category: INVALID_REQUEST_ERROR
      - name: TOO_MANY_MAP_ENTRIES
        description: Too many entries in the map field.
        error-category: INVALID_REQUEST_ERROR
      - name: MAP_KEY_LENGTH_TOO_SHORT
        description: The length of one of the provided keys in the map is too short.
        error-category: INVALID_REQUEST_ERROR
      - name: MAP_KEY_LENGTH_TOO_LONG
        description: The length of one of the provided keys in the map is too long.
        error-category: INVALID_REQUEST_ERROR
      - name: CUSTOMER_MISSING_NAME
        description: The provided customer does not have a recorded name.
        error-category: INVALID_REQUEST_ERROR
      - name: CUSTOMER_MISSING_EMAIL
        description: The provided customer does not have a recorded email.
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_PAUSE_LENGTH
        description: The subscription cannot be paused longer than the duration of the current phase.
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_DATE
        description: The subscription cannot be paused/resumed on the given date.
        error-category: INVALID_REQUEST_ERROR
      - name: UNSUPPORTED_COUNTRY
        description: The API request references an unsupported country.
        error-category: INVALID_REQUEST_ERROR
      - name: UNSUPPORTED_CURRENCY
        description: The API request references an unsupported currency.
        error-category: INVALID_REQUEST_ERROR
      - name: APPLE_TTP_PIN_TOKEN
        description: 'The payment was declined by the card issuer during an Apple Tap to Pay (TTP)

          transaction with a request for the card''s PIN. This code will be returned alongside

          `CARD_DECLINED_VERIFICATION_REQUIRED` as a supplemental error, and will include an

          issuer-provided token in the `details` field that is needed to initiate the PIN

          collection flow on the iOS device.'
        error-category: PAYMENT_METHOD_ERROR
      - name: CARD_EXPIRED
        description: The card issuer declined the request because the card is expired.
        error-category: PAYMENT_METHOD_ERROR
      - name: INVALID_EXPIRATION
        description: 'The expiration date for the payment card is invalid. For example,

          it indicates a date in the past.'
        error-category: PAYMENT_METHOD_ERROR
      - name: INVALID_EXPIRATION_YEAR
        description: 'The expiration year for the payment card is invalid. For example,

          it indicates a year in the past or contains invalid characters.'
        error-category: INVALID_REQUEST_ERROR
      - name: INVALID_EXPIRATION_DATE
        description: 'The expiration date for the payment card is invalid. For example,

          it contains invalid characters.'
        error-category: INVALID_REQUEST_ERROR
      - name: UNSUPPORTED_CARD_BRAND
        description: The credit card provided is not from a supported issuer.
        error-category: PAYMENT_METHOD_ERROR
      - name: UNSUPPORTED_ENTRY_METHOD
        description: The entry method for the credit card (swipe, dip, tap) is not supported.
        error-category: PAYMENT_METHOD_ERROR
      - name: INVALID_ENCRYPTED_CARD
        description: The encrypted card information is invalid.
        error-category: PAYMENT_METHOD_ERROR
      - name: INVALID_CARD
        description: The credit card cannot be validated based on the provided details.
        error-category: PAYMENT_METHOD_ERROR
      - name: PAYMENT_AMOUNT_MISMATCH
        description: 'The payment was declined because there was a payment amount mismatch.

          The money amount Square was expecting does not match the amount provided.'
        error-category: PAYMENT_METHOD_ERROR
      - name: GENERIC_DECLINE
        description: 'Square received a decline without any additional information.

          If the payment information seems correct, the buyer can contact their

          issuer to ask for more information.'
        error-category: PAYMENT_METHOD_ERROR
      - name: CVV_FAILURE
        description: The card issuer declined the request because the CVV value is invalid.
        error-category: PAYMENT_METHOD_ERROR
      - name: ADDRESS_VERIFICATION_FAILURE
        description: The card issuer declined the request because the postal code is invalid.
        error-category: PAYMENT_METHOD_ERROR
      - name: INVALID_ACCOUNT
        description: The issuer was not able to locate the account on record.
        error-category: PAYMENT_METHOD_ERROR
      - name: CURRENCY_MISMATCH
        description: 'The currency associated with the payment is not valid for the provided

          funding source. For example, a gift card funded in USD cannot be used to process

          payments in GBP.'
        error-category: PAYMENT_METHOD_ERROR
      - name: INSUFFICIENT_FUNDS
        description: The funding source has insufficient funds to cover the payment.
        error-category: PAYMENT_METHOD_ERROR
      - name: INSUFFICIENT_PERMISSIONS
        description: 'The Square account does not have the permissions to acc

# --- truncated at 32 KB (85 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/square/refs/heads/main/openapi/square-giftcards-api-openapi.yml