Skip to content

Terminals

Terminals are the physical card readers a merchant uses to accept in-person payments.

Each terminal record includes its serial number, manufacturer, model, and delivery status. A terminal also reports a connection status and the last time it was seen online.

The Terminals endpoints support listing a merchant's terminals and checking a terminal's live status. The list endpoint can be filtered by search string, delivery status, serial number, manufacturer, or model. The status endpoint returns near real-time details, including battery level, printer status, and signal strength. Limited data may be returned if the terminal's internet connectivity is currently poor.

  • GET /pos-api/v1/terminals. Lists a merchant's terminals, filtered by search string, delivery status, serial number, manufacturer, or model.
  • GET /pos-api/v1/terminals/{terminalId}/status. Retrieves a terminal's current connection, battery, and printer status in near real-time.

Lists merchant's terminals

Request

GET {{baseURL}}/pos-api/v1/terminals

This endpoint lists a merchant's terminals.

See Also:
To retrieve a terminal's POS status by ID, see GET /pos-api/v1/terminals/{terminalId}/status.

Security
Bearer
Query
pageinteger, (int32)

Specifies the page number of the returned search results.

A page is considered each set of the pageSize value.

The maximum page value is the pageSize divided by the total count rounded up. The count is zero-based. For example, if pageSize is 50 and the total is 130, there are three pages. The maximum page value is 2.

Values above the maximum page value will complete successfully but not return any items.

Example: 0

Default:0
pageSizeinteger, (int32)

Specifies the number of items for each page of the returned search results.

A page is considered each set of the pageSize value.

The maximum page value is the pageSize divided by the total count rounded up. The count is zero-based. For example, if pageSize is 50 and the total is 130, there are three pages. The maximum page value is 2.

Example: 50

Default:15
orderBystring

Specifies the field the results get ordered by.

The sort order is specified by the asc value.

Example: contactName

ascboolean

Specifies the sort order.

The sort field is specified by the orderBy value.

If true, the sort order is ascending.
If false, the sort order is descending.

Example: false

Default:false
searchstring

Specifies the search string.

This performs a case insensitive, matching, or partially matching search.

Fields does not have to be specified. If the results are to be sorted, use the field orderby to specify the sort field.

Example: Peppared

Example:search=Peppared
deliveryStatusIdinteger, (int32)

Specifies a filter for the terminal's delivery status identifier.

Example: 3

Example:deliveryStatusId=3
serialNumberstring

Specifies the terminal's serial number to search for.

Example: SN00000001

Example:serialNumber=SN00000001
manufacturerIdsArray of integers, (int32)

Specifies a filter for the terminal manufacturer identifiers.

modelIdsArray of integers, (int32)

Specifies a filter for the terminal model identifiers.

curl -i -X GET \
  'https://developer.flute.com/_mock/api-reference/pos-api/v1/terminals?page=0&pageSize=15&orderBy=string&asc=false&search=Peppared&deliveryStatusId=3&serialNumber=SN00000001&manufacturerIds=0&modelIds=0' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

OK

Bodyapplication/json
itemsArray of objects or null

Terminals for the current page.

totalinteger, (int32)

Indicates the total number of terminals found.

Example: 3

Example:3
Response
{ "items": [ { "id": "b4fd53c7-bcc0-4c5c-aab8-1024983f315b", "merchantId": "8c2a42d1-9875-42e0-84a9-71f2fa5b4b9b", "serialNumber": "SN00000001", "terminalManufacturer": "SUNMI", "terminalModel": "Pro 1", "deliveryStatusId": 3, "deliveryStatusName": "Active", "createdOn": "2025-12-16T10:35:52.2487759Z", "modifiedOn": "2025-12-16T10:35:52.2487761Z", "merchantCompanyName": "Merchant", "terminalModeId": 1, "terminalModeName": "Standalone", "connectionStatusId": 2, "connectionStatus": "Offline", "lastSeenTimestamp": "2025-12-16T09:35:52.2487774Z" } ], "total": 3 }