mirror of
https://github.com/gcatanese/adyen-openapi.git
synced 2026-03-10 08:01:24 +00:00
1144 lines
43 KiB
YAML
1144 lines
43 KiB
YAML
openapi: 3.1.0
|
|
servers:
|
|
- url: https://postfmapi-test.adyen.com/postfmapi/terminal/v1
|
|
info:
|
|
version: '1'
|
|
x-publicVersion: true
|
|
title: POS Terminal Management API
|
|
description: 'This API provides endpoints for managing your point-of-sale (POS)
|
|
payment terminals. You can use the API to obtain information about a specific
|
|
terminal, retrieve overviews of your terminals and stores, and assign terminals
|
|
to a merchant account or store.
|
|
|
|
|
|
For more information, refer to [Classic assign terminals](https://docs.adyen.com/point-of-sale/automating-terminal-management/assign-terminals-api/classic-assign-terminals-api/).
|
|
|
|
|
|
>From January 1, 2025 POS Terminal Management API is deprecated and support stops
|
|
on April 1, 2025. To automate the management of your terminal fleet, use our [Management
|
|
API](https://docs.adyen.com/api-explorer/Management/latest/overview).
|
|
|
|
|
|
## Authentication
|
|
|
|
Each request to the Terminal Management API must be signed with an API key. For
|
|
this, obtain an API Key from your Customer Area, as described in [How to get the
|
|
API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key).
|
|
Then set this key to the `X-API-Key` header value, for example:
|
|
|
|
|
|
```
|
|
|
|
curl
|
|
|
|
-H "Content-Type: application/json" \
|
|
|
|
-H "X-API-Key: Your_API_key" \
|
|
|
|
...
|
|
|
|
```
|
|
|
|
Note that when going live, you need to generate new web service user credentials
|
|
to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).
|
|
|
|
|
|
## Roles and permissions
|
|
|
|
To use the POS Terminal Management API, you need the **POS Terminal Management
|
|
API role** added to your API credential. Your Adyen contact will set up the roles
|
|
for you.
|
|
|
|
## Versioning
|
|
|
|
Terminal Management API supports [versioning](https://docs.adyen.com/development-resources/versioning)
|
|
using a version suffix in the endpoint URL. This suffix has the following format:
|
|
"vXX", where XX is the version number.
|
|
|
|
|
|
For example:
|
|
|
|
```
|
|
|
|
https://postfmapi-test.adyen.com/postfmapi/terminal/v1/getTerminalsUnderAccount
|
|
|
|
```
|
|
|
|
When using versioned endpoints, Boolean response values are returned in string
|
|
format: `"true"` or `"false"`.
|
|
|
|
If you omit the version from the endpoint URL, Boolean response values are returned
|
|
like this: `true` or `false`.
|
|
|
|
## Going live
|
|
|
|
To access the live endpoints, you need an API key from your live Customer Area.
|
|
|
|
Use this API key to make requests to:
|
|
|
|
|
|
```text
|
|
|
|
https://postfmapi-live.adyen.com/postfmapi/terminal/v1
|
|
|
|
```
|
|
|
|
|
|
'
|
|
termsOfService: https://www.adyen.com/legal/terms-and-conditions
|
|
contact:
|
|
name: Adyen Developer Experience team
|
|
url: https://github.com/Adyen/adyen-openapi
|
|
tags:
|
|
- name: General
|
|
paths:
|
|
/assignTerminals:
|
|
post:
|
|
tags:
|
|
- General
|
|
summary: Assign terminals
|
|
description: 'Assigns one or more payment terminals to a merchant account or
|
|
a store. You can also use this endpoint to reassign terminals between merchant
|
|
accounts or stores, and to unassign a terminal and return it to company inventory.
|
|
|
|
|
|
>From January 1, 2025 POS Terminal Management API is deprecated and support
|
|
stops on April 1, 2025. To automate the management of your terminal fleet,
|
|
use our [Management API](https://docs.adyen.com/api-explorer/Management/latest/overview).'
|
|
deprecated: true
|
|
x-deprecatedInVersion: '1'
|
|
x-deprecatedMessage: Use [Management API](https://docs.adyen.com/api-explorer/Management/latest/overview).
|
|
operationId: post-assignTerminals
|
|
x-sortIndex: 1
|
|
x-methodName: assignTerminals
|
|
security:
|
|
- BasicAuth: []
|
|
- ApiKeyAuth: []
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
examples:
|
|
assignTerminalCompany:
|
|
$ref: '#/components/examples/post-assignTerminals-assignTerminalCompany'
|
|
assignTerminalMerchant:
|
|
$ref: '#/components/examples/post-assignTerminals-assignTerminalMerchant'
|
|
assignTerminalStore:
|
|
$ref: '#/components/examples/post-assignTerminals-assignTerminalStore'
|
|
schema:
|
|
$ref: '#/components/schemas/AssignTerminalsRequest'
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
assignTerminalCompany:
|
|
$ref: '#/components/examples/post-assignTerminals-assignTerminalCompany-200'
|
|
assignTerminalMerchant:
|
|
$ref: '#/components/examples/post-assignTerminals-assignTerminalMerchant-200'
|
|
assignTerminalStore:
|
|
$ref: '#/components/examples/post-assignTerminals-assignTerminalStore-200'
|
|
schema:
|
|
$ref: '#/components/schemas/AssignTerminalsResponse'
|
|
description: OK - the request has succeeded.
|
|
'400':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
generic:
|
|
$ref: '#/components/examples/generic-400'
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Bad Request - a problem reading or understanding the request.
|
|
'401':
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Unauthorized - authentication required.
|
|
'403':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
generic:
|
|
$ref: '#/components/examples/generic-403'
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Forbidden - insufficient permissions to process the request.
|
|
'422':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
generic:
|
|
$ref: '#/components/examples/generic-422'
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Unprocessable Entity - a request validation error.
|
|
'500':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
generic:
|
|
$ref: '#/components/examples/generic-500'
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Internal Server Error - the server could not process the request.
|
|
/findTerminal:
|
|
post:
|
|
tags:
|
|
- General
|
|
summary: Get the account or store of a terminal
|
|
description: 'Returns the company account, merchant account, or store that a
|
|
payment terminal is assigned to.
|
|
|
|
|
|
>From January 1, 2025 POS Terminal Management API is deprecated and support
|
|
stops on April 1, 2025. To automate the management of your terminal fleet,
|
|
use our [Management API](https://docs.adyen.com/api-explorer/Management/latest/overview).'
|
|
deprecated: true
|
|
x-deprecatedInVersion: '1'
|
|
x-deprecatedMessage: Use [Management API](https://docs.adyen.com/api-explorer/Management/latest/overview).
|
|
operationId: post-findTerminal
|
|
x-sortIndex: 1
|
|
x-methodName: findTerminal
|
|
security:
|
|
- BasicAuth: []
|
|
- ApiKeyAuth: []
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
examples:
|
|
findTerminal:
|
|
$ref: '#/components/examples/post-findTerminal-findTerminal'
|
|
schema:
|
|
$ref: '#/components/schemas/FindTerminalRequest'
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
findTerminal:
|
|
$ref: '#/components/examples/post-findTerminal-findTerminal-200'
|
|
schema:
|
|
$ref: '#/components/schemas/FindTerminalResponse'
|
|
description: OK - the request has succeeded.
|
|
'400':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
generic:
|
|
$ref: '#/components/examples/generic-400'
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Bad Request - a problem reading or understanding the request.
|
|
'401':
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Unauthorized - authentication required.
|
|
'403':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
generic:
|
|
$ref: '#/components/examples/generic-403'
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Forbidden - insufficient permissions to process the request.
|
|
'422':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
generic:
|
|
$ref: '#/components/examples/generic-422'
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Unprocessable Entity - a request validation error.
|
|
'500':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
generic:
|
|
$ref: '#/components/examples/generic-500'
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Internal Server Error - the server could not process the request.
|
|
/getStoresUnderAccount:
|
|
post:
|
|
tags:
|
|
- General
|
|
summary: Get the stores of an account
|
|
description: 'Returns a list of stores associated with a company account or
|
|
a merchant account, including the status of each store.
|
|
|
|
|
|
>From January 1, 2025 POS Terminal Management API is deprecated and support
|
|
stops on April 1, 2025. To automate the management of your terminal fleet,
|
|
use our [Management API](https://docs.adyen.com/api-explorer/Management/latest/overview).'
|
|
deprecated: true
|
|
x-deprecatedInVersion: '1'
|
|
x-deprecatedMessage: Use [Management API](https://docs.adyen.com/api-explorer/Management/latest/overview).
|
|
operationId: post-getStoresUnderAccount
|
|
x-sortIndex: 1
|
|
x-methodName: getStoresUnderAccount
|
|
security:
|
|
- BasicAuth: []
|
|
- ApiKeyAuth: []
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
examples:
|
|
getStoresCompany:
|
|
$ref: '#/components/examples/post-getStoresUnderAccount-getStoresCompany'
|
|
getStoresMerchant:
|
|
$ref: '#/components/examples/post-getStoresUnderAccount-getStoresMerchant'
|
|
schema:
|
|
$ref: '#/components/schemas/GetStoresUnderAccountRequest'
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
getStoresCompany:
|
|
$ref: '#/components/examples/post-getStoresUnderAccount-getStoresCompany-200'
|
|
getStoresMerchant:
|
|
$ref: '#/components/examples/post-getStoresUnderAccount-getStoresMerchant-200'
|
|
schema:
|
|
$ref: '#/components/schemas/GetStoresUnderAccountResponse'
|
|
description: OK - the request has succeeded.
|
|
'400':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
generic:
|
|
$ref: '#/components/examples/generic-400'
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Bad Request - a problem reading or understanding the request.
|
|
'401':
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Unauthorized - authentication required.
|
|
'403':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
generic:
|
|
$ref: '#/components/examples/generic-403'
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Forbidden - insufficient permissions to process the request.
|
|
'422':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
generic:
|
|
$ref: '#/components/examples/generic-422'
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Unprocessable Entity - a request validation error.
|
|
'500':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
generic:
|
|
$ref: '#/components/examples/generic-500'
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Internal Server Error - the server could not process the request.
|
|
/getTerminalDetails:
|
|
post:
|
|
tags:
|
|
- General
|
|
summary: Get the details of a terminal
|
|
description: 'Returns the details of a payment terminal, including where the
|
|
terminal is assigned to. The response returns the same details that are provided
|
|
in the terminal list in your Customer Area and in the Terminal Fleet report.
|
|
|
|
|
|
>From January 1, 2025 POS Terminal Management API is deprecated and support
|
|
stops on April 1, 2025. To automate the management of your terminal fleet,
|
|
use our [Management API](https://docs.adyen.com/api-explorer/Management/latest/overview).'
|
|
deprecated: true
|
|
x-deprecatedInVersion: '1'
|
|
x-deprecatedMessage: Use [Management API](https://docs.adyen.com/api-explorer/Management/latest/overview).
|
|
operationId: post-getTerminalDetails
|
|
x-sortIndex: 1
|
|
x-methodName: getTerminalDetails
|
|
security:
|
|
- BasicAuth: []
|
|
- ApiKeyAuth: []
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
examples:
|
|
getTerminalDetails:
|
|
$ref: '#/components/examples/post-getTerminalDetails-getTerminalDetails'
|
|
schema:
|
|
$ref: '#/components/schemas/GetTerminalDetailsRequest'
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
getTerminalDetails:
|
|
$ref: '#/components/examples/post-getTerminalDetails-getTerminalDetails-200'
|
|
schema:
|
|
$ref: '#/components/schemas/GetTerminalDetailsResponse'
|
|
description: OK - the request has succeeded.
|
|
'400':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
generic:
|
|
$ref: '#/components/examples/generic-400'
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Bad Request - a problem reading or understanding the request.
|
|
'401':
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Unauthorized - authentication required.
|
|
'403':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
generic:
|
|
$ref: '#/components/examples/generic-403'
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Forbidden - insufficient permissions to process the request.
|
|
'422':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
generic:
|
|
$ref: '#/components/examples/generic-422'
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Unprocessable Entity - a request validation error.
|
|
'500':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
generic:
|
|
$ref: '#/components/examples/generic-500'
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Internal Server Error - the server could not process the request.
|
|
/getTerminalsUnderAccount:
|
|
post:
|
|
tags:
|
|
- General
|
|
summary: Get the list of terminals
|
|
description: 'Returns a list of payment terminals associated with a company
|
|
account, merchant account, or store. The response shows whether the terminals
|
|
are in the inventory, or in-store (ready for boarding or already boarded).
|
|
|
|
|
|
>From January 1, 2025 POS Terminal Management API is deprecated and support
|
|
stops on April 1, 2025. To automate the management of your terminal fleet,
|
|
use our [Management API](https://docs.adyen.com/api-explorer/Management/latest/overview).'
|
|
deprecated: true
|
|
x-deprecatedInVersion: '1'
|
|
x-deprecatedMessage: Use [Management API](https://docs.adyen.com/api-explorer/Management/latest/overview).
|
|
operationId: post-getTerminalsUnderAccount
|
|
x-sortIndex: 1
|
|
x-methodName: getTerminalsUnderAccount
|
|
security:
|
|
- BasicAuth: []
|
|
- ApiKeyAuth: []
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
examples:
|
|
getTerminalsCompany:
|
|
$ref: '#/components/examples/post-getTerminalsUnderAccount-getTerminalsCompany'
|
|
getTerminalsMerchant:
|
|
$ref: '#/components/examples/post-getTerminalsUnderAccount-getTerminalsMerchant'
|
|
getTerminalsStore:
|
|
$ref: '#/components/examples/post-getTerminalsUnderAccount-getTerminalsStore'
|
|
schema:
|
|
$ref: '#/components/schemas/GetTerminalsUnderAccountRequest'
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
getTerminalsCompany:
|
|
$ref: '#/components/examples/post-getTerminalsUnderAccount-getTerminalsCompany-200'
|
|
getTerminalsMerchant:
|
|
$ref: '#/components/examples/post-getTerminalsUnderAccount-getTerminalsMerchant-200'
|
|
getTerminalsStore:
|
|
$ref: '#/components/examples/post-getTerminalsUnderAccount-getTerminalsStore-200'
|
|
schema:
|
|
$ref: '#/components/schemas/GetTerminalsUnderAccountResponse'
|
|
description: OK - the request has succeeded.
|
|
'400':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
generic:
|
|
$ref: '#/components/examples/generic-400'
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Bad Request - a problem reading or understanding the request.
|
|
'401':
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Unauthorized - authentication required.
|
|
'403':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
generic:
|
|
$ref: '#/components/examples/generic-403'
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Forbidden - insufficient permissions to process the request.
|
|
'422':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
generic:
|
|
$ref: '#/components/examples/generic-422'
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Unprocessable Entity - a request validation error.
|
|
'500':
|
|
content:
|
|
application/json:
|
|
examples:
|
|
generic:
|
|
$ref: '#/components/examples/generic-500'
|
|
schema:
|
|
$ref: '#/components/schemas/ServiceError'
|
|
description: Internal Server Error - the server could not process the request.
|
|
components:
|
|
schemas:
|
|
Address:
|
|
additionalProperties: false
|
|
properties:
|
|
city:
|
|
type: string
|
|
countryCode:
|
|
type: string
|
|
postalCode:
|
|
type: string
|
|
stateOrProvince:
|
|
type: string
|
|
streetAddress:
|
|
type: string
|
|
streetAddress2:
|
|
type: string
|
|
type: object
|
|
AssignTerminalsRequest:
|
|
additionalProperties: false
|
|
properties:
|
|
companyAccount:
|
|
description: Your company account. To return terminals to the company inventory,
|
|
specify only this parameter and the `terminals`.
|
|
type: string
|
|
merchantAccount:
|
|
description: Name of the merchant account. Specify this parameter to assign
|
|
terminals to this merchant account or to a store under this merchant account.
|
|
type: string
|
|
merchantInventory:
|
|
description: 'Boolean that indicates if you are assigning the terminals
|
|
to the merchant inventory. Do not use when assigning terminals to a store.
|
|
Required when assigning the terminal to a merchant account.
|
|
|
|
|
|
- Set this to **true** to assign the terminals to the merchant inventory.
|
|
This also means that the terminals cannot be boarded.
|
|
|
|
|
|
- Set this to **false** to assign the terminals to the merchant account
|
|
as in-store terminals. This makes the terminals ready to be boarded and
|
|
to process payments through the specified merchant account.'
|
|
type: boolean
|
|
store:
|
|
description: The store code of the store that you want to assign the terminals
|
|
to.
|
|
type: string
|
|
terminals:
|
|
description: 'Array containing a list of terminal IDs that you want to assign
|
|
or reassign to the merchant account or store, or that you want to return
|
|
to the company inventory.
|
|
|
|
|
|
For example, `["V400m-324689776","P400Plus-329127412"]`.'
|
|
items:
|
|
type: string
|
|
type: array
|
|
required:
|
|
- companyAccount
|
|
- terminals
|
|
type: object
|
|
AssignTerminalsResponse:
|
|
additionalProperties: false
|
|
properties:
|
|
results:
|
|
additionalProperties:
|
|
type: string
|
|
description: "Array that returns a list of the terminals, and for each terminal\
|
|
\ the result of assigning it to an account or store.\n\nThe results can\
|
|
\ be: \n\n - `Done`: The terminal has been assigned.\n\n - `AssignmentScheduled`:\
|
|
\ The terminal will be assigned asynschronously.\n\n - `RemoveConfigScheduled`:\
|
|
\ The terminal was previously assigned and boarded. Wait for the terminal\
|
|
\ to synchronize with the Adyen platform. For more information, refer\
|
|
\ to [Reassigning boarded terminals](https://docs.adyen.com/point-of-sale/managing-terminals/assign-terminals#reassign-boarded-terminals).\n\
|
|
\n - `Error`: There was an error when assigning the terminal. "
|
|
type: object
|
|
required:
|
|
- results
|
|
type: object
|
|
FindTerminalRequest:
|
|
additionalProperties: false
|
|
properties:
|
|
terminal:
|
|
description: "The unique terminal ID in the format `[Device model]-[Serial\
|
|
\ number]`. \n\nFor example, **V400m-324689776**."
|
|
type: string
|
|
required:
|
|
- terminal
|
|
type: object
|
|
FindTerminalResponse:
|
|
additionalProperties: false
|
|
properties:
|
|
companyAccount:
|
|
description: The company account that the terminal is associated with. If
|
|
this is the only account level shown in the response, the terminal is
|
|
assigned to the inventory of the company account.
|
|
type: string
|
|
merchantAccount:
|
|
description: The merchant account that the terminal is associated with.
|
|
If the response doesn't contain a `store` the terminal is assigned to
|
|
this merchant account.
|
|
type: string
|
|
merchantInventory:
|
|
description: 'Boolean that indicates if the terminal is assigned to the
|
|
merchant inventory. This is returned when the terminal is assigned to
|
|
a merchant account.
|
|
|
|
|
|
- If **true**, this indicates that the terminal is in the merchant inventory.
|
|
This also means that the terminal cannot be boarded.
|
|
|
|
|
|
- If **false**, this indicates that the terminal is assigned to the merchant
|
|
account as an in-store terminal. This means that the terminal is ready
|
|
to be boarded, or is already boarded.'
|
|
type: boolean
|
|
store:
|
|
description: The store code of the store that the terminal is assigned to.
|
|
type: string
|
|
terminal:
|
|
description: The unique terminal ID.
|
|
type: string
|
|
required:
|
|
- companyAccount
|
|
- terminal
|
|
type: object
|
|
GetStoresUnderAccountRequest:
|
|
additionalProperties: false
|
|
properties:
|
|
companyAccount:
|
|
description: The company account. If you only specify this parameter, the
|
|
response includes the stores of all merchant accounts that are associated
|
|
with the company account.
|
|
type: string
|
|
merchantAccount:
|
|
description: The merchant account. With this parameter, the response only
|
|
includes the stores of the specified merchant account.
|
|
type: string
|
|
required:
|
|
- companyAccount
|
|
type: object
|
|
GetStoresUnderAccountResponse:
|
|
additionalProperties: false
|
|
properties:
|
|
stores:
|
|
description: Array that returns a list of all stores for the specified merchant
|
|
account, or for all merchant accounts under the company account.
|
|
items:
|
|
$ref: '#/components/schemas/Store'
|
|
type: array
|
|
type: object
|
|
GetTerminalDetailsRequest:
|
|
additionalProperties: false
|
|
properties:
|
|
terminal:
|
|
description: "The unique terminal ID in the format `[Device model]-[Serial\
|
|
\ number]`. \n\nFor example, **V400m-324689776**."
|
|
type: string
|
|
required:
|
|
- terminal
|
|
type: object
|
|
GetTerminalDetailsResponse:
|
|
additionalProperties: false
|
|
properties:
|
|
bluetoothIp:
|
|
description: The Bluetooth IP address of the terminal.
|
|
type: string
|
|
bluetoothMac:
|
|
description: The Bluetooth MAC address of the terminal.
|
|
type: string
|
|
companyAccount:
|
|
description: The company account that the terminal is associated with. If
|
|
this is the only account level shown in the response, the terminal is
|
|
assigned to the inventory of the company account.
|
|
type: string
|
|
country:
|
|
description: The country where the terminal is used.
|
|
type: string
|
|
deviceModel:
|
|
description: The model name of the terminal.
|
|
type: string
|
|
dhcpEnabled:
|
|
description: Indicates whether assigning IP addresses through a DHCP server
|
|
is enabled on the terminal.
|
|
type: boolean
|
|
displayLabel:
|
|
description: The label shown on the status bar of the display. This label
|
|
(if any) is specified in your Customer Area.
|
|
type: string
|
|
ethernetIp:
|
|
description: The terminal's IP address in your Ethernet network.
|
|
type: string
|
|
ethernetMac:
|
|
description: The terminal's MAC address in your Ethernet network.
|
|
type: string
|
|
firmwareVersion:
|
|
description: The software release currently in use on the terminal.
|
|
type: string
|
|
iccid:
|
|
description: The integrated circuit card identifier (ICCID) of the SIM card
|
|
in the terminal.
|
|
type: string
|
|
lastActivityDateTime:
|
|
description: Date and time of the last activity on the terminal. Not included
|
|
when the last activity was more than 14 days ago.
|
|
format: date-time
|
|
type: string
|
|
lastTransactionDateTime:
|
|
description: Date and time of the last transaction on the terminal. Not
|
|
included when the last transaction was more than 14 days ago.
|
|
format: date-time
|
|
type: string
|
|
linkNegotiation:
|
|
description: "The Ethernet link negotiation that the terminal uses: \n\n\
|
|
- `auto`: Auto-negotiation\n\n- `100full`: 100 Mbps full duplex"
|
|
type: string
|
|
merchantAccount:
|
|
description: The merchant account that the terminal is associated with.
|
|
If the response doesn't contain a `store` the terminal is assigned to
|
|
this merchant account.
|
|
type: string
|
|
merchantInventory:
|
|
description: 'Boolean that indicates if the terminal is assigned to the
|
|
merchant inventory. This is returned when the terminal is assigned to
|
|
a merchant account.
|
|
|
|
|
|
- If **true**, this indicates that the terminal is in the merchant inventory.
|
|
This also means that the terminal cannot be boarded.
|
|
|
|
|
|
- If **false**, this indicates that the terminal is assigned to the merchant
|
|
account as an in-store terminal. This means that the terminal is ready
|
|
to be boarded, or is already boarded.'
|
|
type: boolean
|
|
permanentTerminalId:
|
|
description: The permanent terminal ID.
|
|
type: string
|
|
serialNumber:
|
|
description: The serial number of the terminal.
|
|
type: string
|
|
simStatus:
|
|
description: 'On a terminal that supports 3G or 4G connectivity, indicates
|
|
the status of the SIM card in the terminal: ACTIVE or INVENTORY.'
|
|
type: string
|
|
store:
|
|
description: The store code of the store that the terminal is assigned to.
|
|
type: string
|
|
storeDetails:
|
|
description: The store that the terminal is assigned to.
|
|
$ref: '#/components/schemas/Store'
|
|
terminal:
|
|
description: The unique terminal ID.
|
|
type: string
|
|
terminalStatus:
|
|
description: "The status of the terminal: \n\n- `OnlineToday`, `OnlineLast1Day`,\
|
|
\ `OnlineLast2Days` etcetera to `OnlineLast7Days`: Indicates when in the\
|
|
\ past week the terminal was last online. \n\n- `SwitchedOff`: Indicates\
|
|
\ it was more than a week ago that the terminal was last online. \n\n\
|
|
- `ReAssignToInventoryPending`, `ReAssignToStorePending`, `ReAssignToMerchantInventoryPending`:\
|
|
\ Indicates the terminal is scheduled to be reassigned."
|
|
enum:
|
|
- OnlineLast1Day
|
|
- OnlineLast2Days
|
|
- OnlineLast3Days
|
|
- OnlineLast4Days
|
|
- OnlineLast5Days
|
|
- OnlineLast6Days
|
|
- OnlineLast7Days
|
|
- OnlineToday
|
|
- ReAssignToInventoryPending
|
|
- ReAssignToMerchantInventoryPending
|
|
- ReAssignToStorePending
|
|
- SwitchedOff
|
|
type: string
|
|
wifiIp:
|
|
description: The terminal's IP address in your Wi-Fi network.
|
|
type: string
|
|
wifiMac:
|
|
description: The terminal's MAC address in your Wi-Fi network.
|
|
type: string
|
|
required:
|
|
- companyAccount
|
|
- terminal
|
|
type: object
|
|
GetTerminalsUnderAccountRequest:
|
|
additionalProperties: false
|
|
properties:
|
|
companyAccount:
|
|
description: Your company account. If you only specify this parameter, the
|
|
response includes all terminals at all account levels.
|
|
type: string
|
|
merchantAccount:
|
|
description: The merchant account. This is required if you are retrieving
|
|
the terminals assigned to a store.If you don't specify a `store` the response
|
|
includes the terminals assigned to the specified merchant account and
|
|
the terminals assigned to the stores under this merchant account.
|
|
type: string
|
|
store:
|
|
description: The store code of the store. With this parameter, the response
|
|
only includes the terminals assigned to the specified store.
|
|
type: string
|
|
required:
|
|
- companyAccount
|
|
type: object
|
|
GetTerminalsUnderAccountResponse:
|
|
additionalProperties: false
|
|
properties:
|
|
companyAccount:
|
|
description: Your company account.
|
|
type: string
|
|
inventoryTerminals:
|
|
description: Array that returns a list of all terminals that are in the
|
|
inventory of the company account.
|
|
items:
|
|
type: string
|
|
type: array
|
|
merchantAccounts:
|
|
description: Array that returns a list of all merchant accounts belonging
|
|
to the company account.
|
|
items:
|
|
$ref: '#/components/schemas/MerchantAccount'
|
|
type: array
|
|
required:
|
|
- companyAccount
|
|
type: object
|
|
MerchantAccount:
|
|
additionalProperties: false
|
|
properties:
|
|
inStoreTerminals:
|
|
description: List of terminals assigned to this merchant account as in-store
|
|
terminals. This means that the terminal is ready to be boarded, or is
|
|
already boarded.
|
|
items:
|
|
type: string
|
|
type: array
|
|
inventoryTerminals:
|
|
description: List of terminals assigned to the inventory of this merchant
|
|
account.
|
|
items:
|
|
type: string
|
|
type: array
|
|
merchantAccount:
|
|
description: The merchant account.
|
|
type: string
|
|
stores:
|
|
description: Array of stores under this merchant account.
|
|
items:
|
|
$ref: '#/components/schemas/Store'
|
|
type: array
|
|
required:
|
|
- merchantAccount
|
|
type: object
|
|
ServiceError:
|
|
additionalProperties: false
|
|
properties:
|
|
errorCode:
|
|
description: The error code mapped to the error message.
|
|
type: string
|
|
errorType:
|
|
description: The category of the error.
|
|
type: string
|
|
message:
|
|
description: A short explanation of the issue.
|
|
type: string
|
|
pspReference:
|
|
description: The PSP reference of the payment.
|
|
type: string
|
|
status:
|
|
description: The HTTP response status.
|
|
format: int32
|
|
type: integer
|
|
type: object
|
|
Store:
|
|
additionalProperties: false
|
|
properties:
|
|
address:
|
|
description: The address of the store.
|
|
$ref: '#/components/schemas/Address'
|
|
description:
|
|
description: The description of the store.
|
|
type: string
|
|
inStoreTerminals:
|
|
description: The list of terminals assigned to the store.
|
|
items:
|
|
type: string
|
|
type: array
|
|
merchantAccountCode:
|
|
description: The code of the merchant account.
|
|
type: string
|
|
status:
|
|
description: "The status of the store:\n\n- `PreActive`: the store has been\
|
|
\ created, but not yet activated. \n\n- `Active`: the store has been activated.\
|
|
\ This means you can process payments for this store. \n\n- `Inactive`:\
|
|
\ the store is currently not active. \n\n- `InactiveWithModifications`:\
|
|
\ the store is currently not active, but payment modifications such as\
|
|
\ refunds are possible. \n\n- `Closed`: the store has been closed. "
|
|
type: string
|
|
store:
|
|
description: The code of the store.
|
|
type: string
|
|
required:
|
|
- store
|
|
type: object
|
|
securitySchemes:
|
|
ApiKeyAuth:
|
|
in: header
|
|
name: X-API-Key
|
|
type: apiKey
|
|
BasicAuth:
|
|
scheme: basic
|
|
type: http
|
|
examples:
|
|
generic-400:
|
|
summary: Response code 400. Bad request.
|
|
value:
|
|
status: 400
|
|
errorCode: '702'
|
|
message: Problem reading or understanding the request.
|
|
errorType: validation
|
|
generic-403:
|
|
summary: Response code 403. Forbidden.
|
|
value:
|
|
status: 403
|
|
errorCode: '010'
|
|
message: Insufficient permissions to process the request.
|
|
errorType: security
|
|
generic-422:
|
|
summary: Response code 422. Unprocessable entity.
|
|
value:
|
|
status: 422
|
|
errorCode: '901'
|
|
message: Request validation error.
|
|
errorType: validation
|
|
generic-500:
|
|
summary: Response code 500. Internal server error.
|
|
value:
|
|
status: 500
|
|
errorCode: '000'
|
|
message: The server could not process the request.
|
|
errorType: internal
|
|
post-assignTerminals-assignTerminalCompany:
|
|
summary: Assign a terminal to the company inventory
|
|
description: Assign one or more terminals to the inventory of the company account.
|
|
value:
|
|
companyAccount: YOUR_COMPANY_ACCOUNT
|
|
terminals:
|
|
- P400Plus-275479597
|
|
post-assignTerminals-assignTerminalCompany-200:
|
|
summary: Example response for request 'assignTerminalCompany'
|
|
value:
|
|
results:
|
|
P400Plus-275479597: RemoveConfigScheduled
|
|
post-assignTerminals-assignTerminalMerchant:
|
|
summary: Assign a terminal to the inventory of a merchant account
|
|
description: Assign one or more terminals to the inventory of the merchant account.
|
|
value:
|
|
companyAccount: YOUR_COMPANY_ACCOUNT
|
|
merchantAccount: YOUR_MERCHANT_ACCOUNT
|
|
merchantInventory: true
|
|
terminals:
|
|
- P400Plus-275479597
|
|
post-assignTerminals-assignTerminalMerchant-200:
|
|
summary: Example response for request 'assignTerminalMerchant'
|
|
value:
|
|
results:
|
|
P400Plus-275479597: RemoveConfigScheduled
|
|
post-assignTerminals-assignTerminalStore:
|
|
summary: Assign a terminal to a store
|
|
description: Assign one or more terminals to the specified store.
|
|
value:
|
|
companyAccount: YOUR_COMPANY_ACCOUNT
|
|
merchantAccount: YOUR_MERCHANT_ACCOUNT
|
|
store: YOUR_STORE
|
|
terminals:
|
|
- P400Plus-275479597
|
|
post-assignTerminals-assignTerminalStore-200:
|
|
summary: Example response for request 'assignTerminalStore'
|
|
value:
|
|
results:
|
|
P400Plus-275479597: RemoveConfigScheduled
|
|
post-findTerminal-findTerminal:
|
|
summary: Find where a terminal is assigned to
|
|
description: Returns the company account, merchant account, or store that the
|
|
payment terminal is assigned to.
|
|
value:
|
|
terminal: M400-401972715
|
|
post-findTerminal-findTerminal-200:
|
|
summary: Example response for request 'findTerminal'
|
|
value:
|
|
companyAccount: YOUR_COMPANY_ACCOUNT
|
|
merchantAccount: YOUR_MERCHANT_ACCOUNT
|
|
merchantInventory: false
|
|
store: YOUR_STORE
|
|
terminal: M400-401972715
|
|
post-getStoresUnderAccount-getStoresCompany:
|
|
summary: Get all the stores under a company
|
|
description: Returns a list of all stores associated with the specified company
|
|
account.
|
|
value:
|
|
companyAccount: YOUR_COMPANY_ACCOUNT
|
|
post-getStoresUnderAccount-getStoresCompany-200:
|
|
summary: Example response for request 'getStoresCompany'
|
|
value:
|
|
stores:
|
|
- store: YOUR_STORE
|
|
description: YOUR_STORE
|
|
address:
|
|
city: The City
|
|
countryCode: NL
|
|
postalCode: '1234'
|
|
streetAddress: The Street
|
|
status: Active
|
|
merchantAccountCode: YOUR_MERCHANT_ACCOUNT
|
|
post-getStoresUnderAccount-getStoresMerchant:
|
|
summary: Get all the stores under a merchant account
|
|
description: Returns a list of all stores associated with the specified merchant
|
|
account.
|
|
value:
|
|
companyAccount: YOUR_COMPANY_ACCOUNT
|
|
merchantAccount: YOUR_MERCHANT_ACCOUNT
|
|
post-getStoresUnderAccount-getStoresMerchant-200:
|
|
summary: Example response for request 'getStoresMerchant'
|
|
value:
|
|
stores:
|
|
- store: YOUR_STORE
|
|
description: YOUR_STORE
|
|
address:
|
|
city: The City
|
|
countryCode: NL
|
|
postalCode: '1234'
|
|
streetAddress: The Street
|
|
status: Active
|
|
merchantAccountCode: YOUR_MERCHANT_ACCOUNT
|
|
post-getTerminalDetails-getTerminalDetails:
|
|
summary: Get information about a specific terminal
|
|
description: Returns the details of a payment terminal, including where the
|
|
terminal is assigned to.
|
|
value:
|
|
terminal: M400-401972715
|
|
post-getTerminalDetails-getTerminalDetails-200:
|
|
summary: Example response for request 'getTerminalDetails'
|
|
value:
|
|
companyAccount: YOUR_COMPANY_ACCOUNT
|
|
merchantAccount: YOUR_MERCHANT_ACCOUNT
|
|
merchantInventory: false
|
|
store: YOUR_STORE
|
|
terminal: M400-401972715
|
|
deviceModel: M400
|
|
serialNumber: 401-972-715
|
|
permanentTerminalId: '88912016'
|
|
terminalStatus: SwitchedOff
|
|
firmwareVersion: Verifone_VOS 1.57.6
|
|
country: NETHERLANDS
|
|
storeDetails:
|
|
store: YOUR_STORE
|
|
description: TestStore
|
|
address:
|
|
city: The City
|
|
countryCode: NL
|
|
postalCode: '1234'
|
|
streetAddress: The Street
|
|
ethernetMac: 60:c7:98:5a:69:cd
|
|
ethernetIp: 192.168.2.11
|
|
wifiMac: c4:ac:59:47:f3:71
|
|
wifiIp: 192.168.2.12
|
|
dhcpEnabled: false
|
|
post-getTerminalsUnderAccount-getTerminalsCompany:
|
|
summary: Get all the terminals under a company account
|
|
description: Returns a list of terminals associated with the company, indicating
|
|
where each terminal is assigned to.
|
|
value:
|
|
companyAccount: YOUR_COMPANY_ACCOUNT
|
|
post-getTerminalsUnderAccount-getTerminalsCompany-200:
|
|
summary: Example response for request 'getTerminalsCompany'
|
|
value:
|
|
companyAccount: YOUR_COMPANY_ACCOUNT
|
|
merchantAccounts:
|
|
- merchantAccount: YOUR_MERCHANT_ACCOUNT
|
|
inStoreTerminals:
|
|
- P400Plus-275479597
|
|
stores:
|
|
- store: YOUR_STORE
|
|
inStoreTerminals:
|
|
- M400-401972715
|
|
post-getTerminalsUnderAccount-getTerminalsMerchant:
|
|
summary: Get all the terminals under a merchant account
|
|
description: Returns a list of terminals associated with the merchant account,
|
|
indicating where each terminal is assigned to.
|
|
value:
|
|
companyAccount: YOUR_COMPANY_ACCOUNT
|
|
merchantAccount: YOUR_MERCHANT_ACCOUNT
|
|
post-getTerminalsUnderAccount-getTerminalsMerchant-200:
|
|
summary: Example response for request 'getTerminalsMerchant'
|
|
value:
|
|
companyAccount: YOUR_COMPANY_ACCOUNT
|
|
merchantAccounts:
|
|
- merchantAccount: YOUR_MERCHANT_ACCOUNT
|
|
inStoreTerminals:
|
|
- P400Plus-275479597
|
|
stores:
|
|
- store: YOUR_STORE
|
|
inStoreTerminals:
|
|
- M400-401972715
|
|
post-getTerminalsUnderAccount-getTerminalsStore:
|
|
summary: Get all the terminals assigned to a store
|
|
description: Returns a list of terminals assigned to the specified store.
|
|
value:
|
|
companyAccount: YOUR_COMPANY_ACCOUNT
|
|
merchantAccount: YOUR_MERCHANT_ACCOUNT
|
|
store: YOUR_STORE
|
|
post-getTerminalsUnderAccount-getTerminalsStore-200:
|
|
summary: Example response for request 'getTerminalsStore'
|
|
value:
|
|
companyAccount: YOUR_COMPANY_ACCOUNT
|
|
merchantAccounts:
|
|
- merchantAccount: YOUR_MERCHANT_ACCOUNT
|
|
stores:
|
|
- store: YOUR_STORE
|
|
inStoreTerminals:
|
|
- M400-401972715
|