---
title: "List processing terminals"
method: GET
path: "/processing-accounts/{processingAccountId}/processing-terminals"
tags: ["processingAccounts"]
---

# List processing terminals

`GET /processing-accounts/{processingAccountId}/processing-terminals`

Use this method to return a [paginated](https://docs.payroc.com/api/pagination) list of processing terminals associated with a processing account.  

**Note:** If you want to view the details of a specific processing terminal and you have its processingTerminalId, use our [Retrieve Processing Terminal](https://docs.payroc.com/api/schema/boarding/processing-terminals/retrieve) method.  

To list the terminals for a processing account, you need its processingAccountId. If you don't have the processingAccountId, use our [List Merchant Platforms](https://docs.payroc.com/api/schema/boarding/merchant-platforms/list) method to search for a merchant platform and its processing accounts.   

Our gateway returns the following information for each processing terminal in the list:  

- Status indicating whether the terminal is active or inactive.  
- Configuration settings, including gateway settings and application settings.  
- Features, receipt settings, and security settings.  
- Devices that use the processing terminal's configuration.  

For each processing terminal, we also return its processingTerminalId, which you can use to perform follow-on actions.

## Path parameters

- `processingAccountId` string, required

## Query parameters

- `before` string
- `after` string
- `limit` integer

## Headers

- `Authorization` string, required

## Response `200`

Successful request. Returns a list of processing terminals associated with the processing account.

- PaginatedProcessingTerminals — Contains the pagination properties that you use to navigate through a list of results.
  - `limit` integer — Maximum number of results that we return for each page.
  - `count` integer — Number of results we returned on this page. **Note:** This might not be the total number of results that match your query.
  - `hasMore` boolean — Indicates whether there is another page of results available.
  - `links` Link[] — Reference links to navigate to the previous page of results or to the next page of results.
    - `rel` string, required — Indicates the relationship between the current resource and the target resource.
    - `method` string, required — HTTP method that you need to use with the target resource.
    - `href` string, required — URL of the target resource.
  - `data` ProcessingTerminal[] — Array of processing terminal objects.
    - `processingTerminalId` string, required — Unique identifier that we assigned to the processing terminal.
    - `status` 'active' | 'inactive', required — Indicates if the processing terminal is active.
    - `timezone` 'Pacific/Midway' | 'Pacific/Honolulu' | 'America/Anchorage' | 'America/Los_Angeles' | 'America/Denver' | 'America/Phoenix' | 'America/Chicago' | 'America/Indiana/Indianapolis' | 'America/New_York', required — Indicates the timezone within which transactions will be processed for this terminal
    - `program` string — Name of the product and its setup.
    - `gateway` ProcessingTerminalGateway — Object that contains the gateway settings for the solution.
      - `gateway` 'payroc', required — Discriminator value: payroc
      - `terminalTemplateId` string, required — Unique identifier of the gateway terminal template.
    - `batchClosure` union, required — Polymorphic object that contains information about when and how the terminal closes the batch. The value of the batchCloseType field determines which variant you should use: - `automatic` - Terminal automatically closes the batch at a specific time each day. - `manual` - Merchant uses the terminal to manually close the batch.
      - object — Indicates how authorized transactions will be batched for settlement
        - `batchCloseType` 'automatic', required — Discriminator value: automatic
        - `batchCloseTime` string, required — The time, within the specified timezone, at which the batch automatically closes
      - object — Indicates how authorized transactions will be batched for settlement
        - `batchCloseType` 'manual', required — Discriminator value: manual
    - `applicationSettings` ProcessingTerminalApplicationSettings, required — Object that contains the application settings for the solution.
      - `invoiceNumberPrompt` boolean — Indicates if the terminal should prompt the clerk to provide an invoice number with a sale.
      - `clerkPrompt` boolean — Indicates if the terminal should prompt the clerk, for example, if the terminal should prompt when the clerk needs to enter an amount on the terminal.
    - `features` ProcessingTerminalFeatures, required — Object that contains the feature settings for the terminal.
      - `tips` union — Polymorphic object that indicates if the terminal accepts tips. The value of the enabled field determines which variant you should use: - `true` - Terminal allows tips. - `false` - Terminal doesn't allow tips.
        - object — Tip settings
          - `enabled` 'true', required — Discriminator value: true
          - `tipPrompt` boolean — Indicates if the terminal prompts for tips.
          - `tipAdjust` boolean — Indicates if a clerk can adjust a tip after the customer completes the sale.
          - `suggestedTips` ProcessingTerminalFeaturesTipsDiscriminatorMappingTrueSuggestedTips — Object that contains up to three tip amounts that the terminal displays during a sale.
            - `enabled` boolean — Indicates if the terminal displays tip amounts during a sale.
            - `tipPercentages` string[] — Array of the tip amounts that the terminal displays during a sale.
        - object — Tip settings
          - `enabled` 'false', required — Discriminator value: false
      - `enhancedProcessing` ProcessingTerminalFeaturesEnhancedProcessing, required — Object that contains details about level two and level three transactions.
        - `enabled` boolean, required — Indicates if the terminal can run level two and level three transactions.
        - `transactionDataLevel` 'level2' | 'level3' — Indicates if the terminal supports level two or level three transactions.
        - `shippingAddressMode` 'fullAddress' | 'postalCode' — Indicates the address information that the clerk must provide to qualify for level two or level three data. The value is one of the following: - `fullAddress` - The clerk must provide the full address for the transaction to qualify. - `postalCode` - The clerk must provide a postal code for the transaction to qualify.
      - `ebt` union, required — Polymorphic object that indicates if the terminal accepts EBT transactions. The value of the enabled field determines which variant you should use: - `true` - Terminal allows EBT transactions. - `false` - Terminal doesn't allow EBT transactions.
        - object — Object that contains details about EBT transactions.
          - `enabled` 'true', required — Discriminator value: true
          - `ebtType` 'foodStamp' | 'cash' | 'both', required — Indicates the type of EBT that the terminal supports.
          - `fnsNumber` string — Food and Nutritional Service (FNS) number that the government assigns to the merchant to allow them to accept Supplemental Nutrition Assistance Program (SNAP) transactions.
        - object — Object that contains details about EBT transactions.
          - `enabled` 'false', required — Discriminator value: false
      - `pinDebitCashback` boolean, required — Indicates if the terminal prompts for cashback on PIN debit transactions.
      - `recurringPayments` boolean — Indicates if the terminal can run repeat payments. For more information about repeat payments, go to [Payment Plans](https://docs.payroc.com/guides/take-payments/repeat-payments).
      - `paymentLinks` ProcessingTerminalFeaturesPaymentLinks — Object that contains details about payment links.
        - `enabled` boolean, required — Indicates if the terminal supports payment links.
        - `logoUrl` string — URL of the logo image that the merchant wants to display in their payment link email.
        - `footerNotes` string — String that the merchant wants to display on the footer of their payment link email.
      - `preAuthorizations` boolean — Indicates if the terminal can run pre-authorizations.
      - `offlinePayments` boolean — Indicates if the terminal can accept payments when it can't connect to the gateway. For more information about offline processing, go to [Offline Processing](https://docs.payroc.com/knowledge/card-payments/offline-processing).
    - `taxes` ProcessingTerminalTaxesItems[] — Array of tax objects that contains the taxes that apply to the merchant's transactions.
      - `taxRate` number, double, required — Rate of tax that the terminal applies to each transaction.
      - `taxLabel` string, required — Short description of the tax rate, for example, "Sales Tax".
    - `security` ProcessingTerminalSecurity — Object that contains the tokenization settings and AVS settings for the terminal.
      - `tokenization` boolean, required — Indicates if the terminal can tokenize customer's payment details. For more information about tokenization, go to [Tokenization](https://docs.payroc.com/knowledge/basic-concepts/tokenization).
      - `avsPrompt` boolean, required — Indicates if the terminal should prompt for Address Verification Service (AVS) details when running a transaction.
      - `avsLevel` 'fullAddress' | 'postalCode' — Indicates the level of AVS details that the terminal should prompt for.
      - `cvvPrompt` boolean, required — Indicates if the terminal should prompt for a Card Verfication Value (CVV) when running a transaction.
    - `receiptNotifications` ProcessingTerminalReceiptNotifications — Object that indicates if the terminal can send email receipts or text receipts.
      - `emailReceipt` boolean — Indicates if the terminal can send receipts by email.
      - `smsReceipt` boolean — Indicates if the terminal can send receipts by text message.
    - `devices` ProcessingTerminalDevicesItems[] — Array of device objects. Each object contains information about a device using the processing terminal's configuration.
      - `manufacturer` string, required — Manufacturer of the terminal.
      - `model` string, required — Model of the terminal.
      - `serialNumber` string, required — Serial number of the terminal.
      - `communicationType` 'bluetooth' | 'cellular' | 'ethernet' | 'wifi' — Indicates how the device communicates with its host.

## Other responses

- `400` — Invalid request
- `401` — Identity could not be verified
- `403` — Do not have permissions to perform this action
- `404` — Resource not found
- `406` — Not acceptable
- `500` — An error has occured

---

[API](https://skmtc.dev/payroc/apis/schema.md) · [All operations](https://skmtc.dev/payroc/apis/schema/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/payroc/schema/revisions/1d9d3e305945/schema)
