mirror of
https://github.com/gcatanese/adyen-openapi.git
synced 2026-03-09 23:51:20 +00:00
535 lines
18 KiB
YAML
535 lines
18 KiB
YAML
openapi: 3.1.0
|
|
servers:
|
|
- url: https://management-live.adyen.com/v1
|
|
description: Live Environment
|
|
- url: https://management-test.adyen.com/v1
|
|
description: Test Environment
|
|
info:
|
|
title: Payments App API
|
|
description: 'Board and manage the Adyen Payments App on your Android mobile devices.
|
|
|
|
## Authentication
|
|
|
|
Each request to the Payments App API must be signed with an API key. [Generate
|
|
your API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key)
|
|
in the Customer Area and then set this key to the `X-API-Key` header value.
|
|
|
|
|
|
## Versioning
|
|
|
|
|
|
Payments App API handles versioning as part of the endpoint URL. For example,
|
|
to send a request to this version of the `/merchants/{merchantId}/generatePaymentsAppBoardingToken`
|
|
endpoint, use:
|
|
|
|
|
|
```text
|
|
|
|
https://management-test.adyen.com/v1/merchants/{merchantId}/generatePaymentsAppBoardingToken
|
|
|
|
```
|
|
|
|
|
|
## 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://management-live.adyen.com/v{version}
|
|
|
|
```
|
|
|
|
|
|
'
|
|
termsOfService: https://www.adyen.com/legal/terms-and-conditions
|
|
contact:
|
|
name: Adyen Developer Experience team
|
|
url: https://github.com/Adyen/adyen-openapi
|
|
version: '1'
|
|
x-timestamp: '2025-02-11T15:31:29Z'
|
|
tags:
|
|
- name: Payments App
|
|
paths:
|
|
/merchants/{merchantId}/generatePaymentsAppBoardingToken:
|
|
post:
|
|
tags:
|
|
- Payments App
|
|
summary: Create a boarding token - merchant level
|
|
description: "Creates a boarding token used to authenticate the installation\
|
|
\ of a Payments App instance on an Android device. The boarding token is created\
|
|
\ for the `boardingRequestToken` of the Payments App for the merchant account\
|
|
\ identified in the path. \n\nTo make this request, your API credential must\
|
|
\ have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\
|
|
* Adyen Payments App role\n"
|
|
operationId: post-merchants-merchantId-generatePaymentsAppBoardingToken
|
|
parameters:
|
|
- name: merchantId
|
|
in: path
|
|
description: The unique identifier of the merchant account.
|
|
required: true
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/BoardingTokenRequest'
|
|
required: true
|
|
responses:
|
|
'200':
|
|
description: OK - the request has succeeded.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/BoardingTokenResponse'
|
|
'400':
|
|
description: Bad Request - a problem reading or understanding the request.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DefaultErrorResponseEntity'
|
|
'401':
|
|
description: Unauthorized - authentication required.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DefaultErrorResponseEntity'
|
|
'403':
|
|
description: Forbidden - insufficient permissions to process the request.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DefaultErrorResponseEntity'
|
|
'422':
|
|
description: Unprocessable Entity - a request validation error.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DefaultErrorResponseEntity'
|
|
'500':
|
|
description: Internal Server Error - the server could not process the request.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DefaultErrorResponseEntity'
|
|
x-methodName: generatePaymentsAppBoardingTokenForMerchant
|
|
x-sortIndex: 0
|
|
/merchants/{merchantId}/stores/{storeId}/generatePaymentsAppBoardingToken:
|
|
post:
|
|
tags:
|
|
- Payments App
|
|
summary: Create a boarding token - store level
|
|
description: 'Creates a boarding token used to authenticate the installation
|
|
of a Payments App instance on an Android device. The boarding token is created
|
|
for the `boardingRequestToken` of the Payments App for the store identified
|
|
in the path.
|
|
|
|
|
|
To make this request, your API credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):
|
|
|
|
* Adyen Payments App role
|
|
|
|
'
|
|
operationId: post-merchants-merchantId-stores-storeId-generatePaymentsAppBoardingToken
|
|
parameters:
|
|
- name: merchantId
|
|
in: path
|
|
description: The unique identifier of the merchant account.
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: storeId
|
|
in: path
|
|
description: The unique identifier of the store.
|
|
required: true
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/BoardingTokenRequest'
|
|
required: true
|
|
responses:
|
|
'200':
|
|
description: OK - the request has succeeded.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/BoardingTokenResponse'
|
|
'400':
|
|
description: Bad Request - a problem reading or understanding the request.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DefaultErrorResponseEntity'
|
|
'401':
|
|
description: Unauthorized - authentication required.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DefaultErrorResponseEntity'
|
|
'403':
|
|
description: Forbidden - insufficient permissions to process the request.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DefaultErrorResponseEntity'
|
|
'422':
|
|
description: Unprocessable Entity - a request validation error.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DefaultErrorResponseEntity'
|
|
'500':
|
|
description: Internal Server Error - the server could not process the request.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DefaultErrorResponseEntity'
|
|
x-methodName: generatePaymentsAppBoardingTokenForStore
|
|
x-sortIndex: 0
|
|
/merchants/{merchantId}/paymentsApps:
|
|
get:
|
|
tags:
|
|
- Payments App
|
|
summary: Get a list of Payments Apps - merchant level
|
|
description: 'Returns the list of Payments App instances for the merchant account
|
|
identified in the path.
|
|
|
|
|
|
To make this request, your API credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):
|
|
|
|
* Adyen Payments App role
|
|
|
|
'
|
|
operationId: get-merchants-merchantId-paymentsApps
|
|
parameters:
|
|
- name: merchantId
|
|
in: path
|
|
description: The unique identifier of the merchant account.
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: statuses
|
|
in: query
|
|
description: "The status of the Payments App. Comma-separated list of one\
|
|
\ or more values. If no value is provided, the list returns all statuses.\
|
|
\ \n\nPossible values:\n\n* **BOARDING**\n\n * **BOARDED**\n\n * **REVOKED**"
|
|
schema:
|
|
type: string
|
|
- name: limit
|
|
in: query
|
|
description: The number of items to return.
|
|
schema:
|
|
maximum: 100
|
|
type: integer
|
|
format: int32
|
|
default: 10
|
|
- name: offset
|
|
in: query
|
|
description: The number of items to skip.
|
|
schema:
|
|
type: integer
|
|
format: int64
|
|
default: 0
|
|
responses:
|
|
'200':
|
|
description: OK - the request has succeeded.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaymentsAppResponse'
|
|
'400':
|
|
description: Bad Request - a problem reading or understanding the request.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DefaultErrorResponseEntity'
|
|
'401':
|
|
description: Unauthorized - authentication required.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DefaultErrorResponseEntity'
|
|
'403':
|
|
description: Forbidden - insufficient permissions to process the request.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DefaultErrorResponseEntity'
|
|
'422':
|
|
description: Unprocessable Entity - a request validation error.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DefaultErrorResponseEntity'
|
|
'500':
|
|
description: Internal Server Error - the server could not process the request.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DefaultErrorResponseEntity'
|
|
x-methodName: listPaymentsAppForMerchant
|
|
x-sortIndex: 0
|
|
/merchants/{merchantId}/stores/{storeId}/paymentsApps:
|
|
get:
|
|
tags:
|
|
- Payments App
|
|
summary: Get a list of Payments Apps - store level
|
|
description: 'Returns the list of Payments App instances for the store identified
|
|
in the path.
|
|
|
|
|
|
To make this request, your API credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):
|
|
|
|
* Adyen Payments App role
|
|
|
|
'
|
|
operationId: get-merchants-merchantId-stores-storeId-paymentsApps
|
|
parameters:
|
|
- name: merchantId
|
|
in: path
|
|
description: The unique identifier of the merchant account.
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: storeId
|
|
in: path
|
|
description: The unique identifier of the store.
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: statuses
|
|
in: query
|
|
description: "The status of the Payments App. Comma-separated list of one\
|
|
\ or more values. If no value is provided, the list returns all statuses.\
|
|
\ \n\nPossible values:\n\n* **BOARDING**\n\n * **BOARDED**\n\n * **REVOKED**"
|
|
schema:
|
|
type: string
|
|
- name: limit
|
|
in: query
|
|
description: The number of items to return.
|
|
schema:
|
|
maximum: 100
|
|
type: integer
|
|
format: int32
|
|
default: 10
|
|
- name: offset
|
|
in: query
|
|
description: The number of items to skip.
|
|
schema:
|
|
type: integer
|
|
format: int64
|
|
default: 0
|
|
responses:
|
|
'200':
|
|
description: OK - the request has succeeded.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaymentsAppResponse'
|
|
'400':
|
|
description: Bad Request - a problem reading or understanding the request.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DefaultErrorResponseEntity'
|
|
'401':
|
|
description: Unauthorized - authentication required.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DefaultErrorResponseEntity'
|
|
'403':
|
|
description: Forbidden - insufficient permissions to process the request.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DefaultErrorResponseEntity'
|
|
'422':
|
|
description: Unprocessable Entity - a request validation error.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DefaultErrorResponseEntity'
|
|
'500':
|
|
description: Internal Server Error - the server could not process the request.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DefaultErrorResponseEntity'
|
|
x-methodName: listPaymentsAppForStore
|
|
x-sortIndex: 0
|
|
/merchants/{merchantId}/paymentsApps/{installationId}/revoke:
|
|
post:
|
|
tags:
|
|
- Payments App
|
|
summary: Revoke Payments App instance authentication
|
|
description: 'Revokes the authentication of the Payments App instance for the
|
|
`installationId` and merchant account identified in the path. This call revokes
|
|
the authentication of the Payments App instance with the `installationId`
|
|
identified in the path for both merchant accounts and stores.
|
|
|
|
|
|
To make this request, your API credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):
|
|
|
|
* Adyen Payments App role
|
|
|
|
'
|
|
operationId: post-merchants-merchantId-paymentsApps-installationId-revoke
|
|
parameters:
|
|
- name: merchantId
|
|
in: path
|
|
description: The unique identifier of the merchant account.
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: installationId
|
|
in: path
|
|
description: The unique identifier of the Payments App instance on a device.
|
|
required: true
|
|
schema:
|
|
type: string
|
|
responses:
|
|
'200':
|
|
description: OK - the request has succeeded.
|
|
content:
|
|
application/json: {}
|
|
'400':
|
|
description: Bad Request - a problem reading or understanding the request.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DefaultErrorResponseEntity'
|
|
'401':
|
|
description: Unauthorized - authentication required.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DefaultErrorResponseEntity'
|
|
'500':
|
|
description: Internal Server Error - the server could not process the request.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/DefaultErrorResponseEntity'
|
|
x-methodName: revokePaymentsApp
|
|
x-sortIndex: 0
|
|
components:
|
|
schemas:
|
|
BoardingTokenResponse:
|
|
required:
|
|
- boardingToken
|
|
- installationId
|
|
type: object
|
|
properties:
|
|
boardingToken:
|
|
type: string
|
|
description: The boarding token that allows the Payments App to board.
|
|
installationId:
|
|
type: string
|
|
description: The unique identifier of the Payments App instance.
|
|
DefaultErrorResponseEntity:
|
|
type: object
|
|
properties:
|
|
detail:
|
|
type: string
|
|
description: A human-readable explanation specific to this occurrence of
|
|
the problem.
|
|
errorCode:
|
|
type: string
|
|
description: Unique business error code.
|
|
instance:
|
|
type: string
|
|
description: A URI that identifies the specific occurrence of the problem
|
|
if applicable.
|
|
invalidFields:
|
|
type: array
|
|
description: Array of fields with validation errors when applicable.
|
|
items:
|
|
$ref: '#/components/schemas/InvalidField'
|
|
requestId:
|
|
type: string
|
|
description: The unique reference for the request.
|
|
status:
|
|
type: integer
|
|
description: The HTTP status code.
|
|
format: int32
|
|
title:
|
|
type: string
|
|
description: A short, human-readable summary of the problem type.
|
|
type:
|
|
type: string
|
|
description: A URI that identifies the validation error type. It points
|
|
to human-readable documentation for the problem type.
|
|
description: Standardized error response following RFC-7807 format
|
|
externalDocs:
|
|
url: https://www.rfc-editor.org/rfc/rfc7807
|
|
InvalidField:
|
|
required:
|
|
- message
|
|
- name
|
|
- value
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
description: The field that has an invalid value.
|
|
value:
|
|
type: string
|
|
description: The invalid value.
|
|
message:
|
|
type: string
|
|
description: Description of the validation error.
|
|
BoardingTokenRequest:
|
|
required:
|
|
- boardingRequestToken
|
|
type: object
|
|
properties:
|
|
boardingRequestToken:
|
|
type: string
|
|
description: The boardingToken request token.
|
|
PaymentsAppDto:
|
|
required:
|
|
- installationId
|
|
- merchantAccountCode
|
|
- status
|
|
type: object
|
|
properties:
|
|
installationId:
|
|
type: string
|
|
description: The unique identifier of the Payments App instance.
|
|
merchantAccountCode:
|
|
type: string
|
|
description: The account code associated with the Payments App instance.
|
|
merchantStoreCode:
|
|
type: string
|
|
description: The store code associated with the Payments App instance.
|
|
status:
|
|
type: string
|
|
description: The status of the Payments App instance.
|
|
PaymentsAppResponse:
|
|
required:
|
|
- paymentsApps
|
|
type: object
|
|
properties:
|
|
paymentsApps:
|
|
type: array
|
|
description: List of Payments Apps.
|
|
items:
|
|
$ref: '#/components/schemas/PaymentsAppDto'
|
|
securitySchemes:
|
|
ApiKeyAuth:
|
|
type: apiKey
|
|
name: X-API-Key
|
|
in: header
|
|
BasicAuth:
|
|
type: http
|
|
scheme: basic
|
|
jsonSchemaDialect: https://spec.openapis.org/oas/3.1/dialect/base
|