FAQ

Last updated: 2026-03-22

Frequently Asked Questions

Common questions from integrators working with the Access API V2 getTerminalId and getTerminalInfo endpoints.

1 Our terminal was swapped with new hardware. How do we reassign the same TID to the replacement device?

The TID is bound to the storeId + ecrId pair, not to the physical hardware serial number. When you call getTerminalId with the same storeId and ecrId as before, the API returns the same TID that was previously allocated to that slot — regardless of which physical device is now sitting there.

The steps for a hardware swap are:

  1. Contact Westpay support to decommission the old device (unlink its serial number from the TID)
  2. Call getTerminalId with the same storeId + ecrId as the replaced terminal
  3. The response returns the original TID along with a new password for the replacement device
  4. Onboard the new terminal using those credentials

You do not need to update any ECR-side TID references — the identifier stays the same.

2 Does getTerminalId always allocate a new TID, or does it return an existing one?

It returns the existing TID if one is already allocated for the given storeId + ecrId combination. A new TID is only allocated when no prior assignment exists for that pair.

This means the call is safe to repeat — for example, if your onboarding flow calls getTerminalId on retry after a timeout, you will not accidentally create duplicate TIDs. The response always includes the password needed to activate the terminal, which is regenerated on each call.

3 How do I confirm which TID is assigned to a specific terminal using getTerminalInfo?

Call getTerminalInfo with the storeId of the store you are looking up. The response array includes one entry per terminal, each containing:

  • terminalId — the assigned TID
  • ecrId — the ECR slot it belongs to
  • serial — the physical hardware serial number
  • isActive — whether the terminal is currently active

To narrow down to a single terminal, filter by both storeId and cross-reference the ecrId in the response. You can also filter by model if the store has mixed hardware types.

4 What is the difference between isActive and isDecommissioned in the getTerminalInfo response?

They represent two distinct states:

FieldMeaningReversible?
isActive: falseTerminal is temporarily disabled — not accepting transactions, but still registeredYes — can be re-activated
isDecommissioned: trueTerminal has been permanently removed from serviceNo — requires re-onboarding

A typical hardware swap sets isDecommissioned: true on the old serial number. The TID itself remains valid and gets reassigned to the new device. Use getTerminalInfo with isActive: false or check isDecommissioned to audit terminals that may need attention.

5 Can I use getTerminalInfo to get all terminals across multiple stores in one call?

Yes. All filter fields in getTerminalInfo are optional. Calling the endpoint with an empty body (or only customerId) returns every terminal under your account, spanning all stores.

For large deployments, useful filter combinations are:

  • customerId only — all terminals for a customer across all stores
  • storeId only — all terminals in a single store
  • isActive: false — terminals that are currently inactive, useful for health checks
  • lastTransactionTime — terminals that have not transacted since a given date, useful for detecting stale or unused devices

The response is a flat array; your system is responsible for grouping or paginating if needed.