API v3.0 TPS Device API Changelog Specification changes 1.2 -> 3.0.0-alpha2 On this page
Specification changes 1.2 -> 3.0.0-alpha2
Old spec: tps-device-api-v1.2.yaml
New spec: v3.0/tps-device-api.yaml
Generated: 2026-05-25 13:38:47 UTC
Overview changes
info.title: Device API for Contactless Readers (v1.2) -> TPS Device API (v3.0.0-alpha2)
info.version: 1.2 -> 3.0.0-alpha2
Operation changes
Added
GET /device/{terminalTypeName}/{terminalSn}/inspectToken
Changed
GET /device-api/v1/devices/{terminalTypeName}/{terminalSn} -> GET /device/{terminalTypeName}/{terminalSn}
GET /device-api/v1/update/type/{terminalTypeName}/{terminalSn} -> GET /device/{terminalTypeName}/{terminalSn}/update
POST /device-api/v1/register -> PUT /device/{terminalTypeName}/{terminalSn}
POST /device-api/v1/transaction -> POST /device/{terminalTypeName}/{terminalSn}/transaction
Parameter changes
Added parameter in POST /device-api/v1/register -> PUT /device/{terminalTypeName}/{terminalSn}: path terminalSn (required: yes, type: string)
Added parameter in POST /device-api/v1/register -> PUT /device/{terminalTypeName}/{terminalSn}: path terminalTypeName (required: yes, type: string)
Added parameter in POST /device-api/v1/transaction -> POST /device/{terminalTypeName}/{terminalSn}/transaction: path terminalSn (required: yes, type: string)
Added parameter in POST /device-api/v1/transaction -> POST /device/{terminalTypeName}/{terminalSn}/transaction: path terminalTypeName (required: yes, type: string)
Operation body changes
Operation component usage changes
GET /device-api/v1/devices/{terminalTypeName}/{terminalSn} -> GET /device/{terminalTypeName}/{terminalSn}
Parameter path:terminalSn now uses component TerminalSn
Parameter path:terminalTypeName now uses component TerminalTypeName
Response 200 component changed: RegisterTerminalResponseContent -> RegisterTerminalResponse
GET /device-api/v1/update/type/{terminalTypeName}/{terminalSn} -> GET /device/{terminalTypeName}/{terminalSn}/update
Parameter path:terminalSn now uses component TerminalSn
Parameter path:terminalTypeName now uses component TerminalTypeName
Response 200 component changed: UpdateResponseContent -> UpdateResponse
POST /device-api/v1/register -> PUT /device/{terminalTypeName}/{terminalSn}
Parameter path:terminalSn now uses component TerminalSn
Parameter path:terminalTypeName now uses component TerminalTypeName
Request body component changed: RegisterTerminalRequestContent -> RegisterTerminalRequest
Response 200 component changed: RegisterTerminalResponseContent -> RegisterTerminalResponse
POST /device-api/v1/transaction -> POST /device/{terminalTypeName}/{terminalSn}/transaction
Parameter path:terminalSn now uses component TerminalSn
Parameter path:terminalTypeName now uses component TerminalTypeName
Request body component changed: TransactionEventRequestContent -> CreateTransactionRequest
Response 200 component changed: TransactionEventResponseContent -> GetTransactionResponse
Component changes
Added component: parameters.TerminalSn (in: path; required: yes; type: string)
Added component: parameters.TerminalTypeName (in: path; required: yes; type: string)
Added component: parameters.icc_public (in: query; required: no; type: string)
Added component: parameters.pan_expiry_date (in: query; required: no; type: string)
Added component: parameters.pan_first6 (in: query; required: no; type: string)
Added component: parameters.pan_last4 (in: query; required: no; type: string)
Added component: parameters.pan_sequence_number (in: query; required: no; type: string)
Added component: parameters.par (in: query; required: no; type: string)
Added component: parameters.transit_psp_token1 (in: query; required: no; type: string)
Added component: requestBodies.CreateTransactionRequest
Fields
cardData (type object; required yes; content component CardData)
deviceData (type object; required no; content component DeviceData)
metaData (type object; required no; content component MetaData)
productData (type array; required no; items component ProductData)
transactionData (type object; required yes; content component TransactionData)
tripData (type object; required no; content component TripData)
Added component: requestBodies.RegisterTerminalRequest
Fields
applicationVersion (component requestBodies.RegisterTerminalRequest; type string; required yes)
keyEncryptionCertificateChain (component requestBodies.RegisterTerminalRequest; type array; required no)
keyEncryptionCertificateRequest (component requestBodies.RegisterTerminalRequest; type string; required no)
requestUuid (component requestBodies.RegisterTerminalRequest; type string; required yes)
timestamp (component requestBodies.RegisterTerminalRequest; type string; required yes; format date-time)
Removed component: requestBodies.RegisterTerminalRequestBody
Removed component: requestBodies.SendTransactionsRequestBody
Added component: responses.CreateTransactionResponse
Fields
cardData (type object; required yes; content component CardData)
deviceData (type object; required yes; content component DeviceData)
productData (type array; required no; items component ProductData)
transactionData (type object; required yes; content component TransactionData)
transactionResultData (type object; required no; content component TransactionResultData)
tripData (type object; required no; content component TripData)
Added component: responses.InspectTokenResponse
Fields
Token (component responses.InspectTokenResponse; type array; required no)
Removed component: responses.SendTransactionsResponse
Changed component: responses.AuthenticationErrorResponse
Added fields
systemCode (component responses.AuthenticationErrorResponse; type integer; required no; format int32)
systemCodeDescription (component responses.AuthenticationErrorResponse; type string; required no)
Changed component: responses.ErrorResponse
Notes
Structural content changed (component responses.ErrorResponse)
Changed component: responses.GetRegistrationResponse
Added fields
deviceId (component responses.GetRegistrationResponse; type string; required no)
deviceKeys (component responses.GetRegistrationResponse; type array; required no)
merchantId (component responses.GetRegistrationResponse; type string; required no)
Changed component: responses.RegisterTerminalResponse
Added fields
deviceId (component responses.RegisterTerminalResponse; type string; required no)
deviceKeys (component responses.RegisterTerminalResponse; type array; required no)
merchantId (component responses.RegisterTerminalResponse; type string; required no)
Changed component: responses.UpdateConfigurationResponse
Changed fields
records: (type array; required yes) -> (type array; required yes) (component responses.UpdateConfigurationResponse)