REST - Changelog

v2 – XX/05/2019

Pay-At-Counter

Added

  • Two new headers have been introduced to identify the partners to which an account relates. These headers are used to ensure that merchant's integrations get attributed to the correct Paymentsense partners, so it's crucial that they are set correctly. The values will be provided by Paymentsense. They are:
    • Software-House-Id - Identifies the EPoS company whose software is generating the request. This value should not be configurable as it will remain the same for all customers using one company's software.
    • Installer-Id - Identifiers the installer of the EPoS. This may be the same as the Software-House-Id if they are also the installer. If your EPoS can be installed by resellers, they will be provided with a separate id. The value should be configurable in your EPoS so it can be correctly set on installation.
  • Added amountCashback to the transaction request object to allow cashback to be added via the API.
  • Added cardholderNotPresent to the transaction request object to allow CNP transactions (Sales and refunds only) to be initiated directly.
  • Added PRE_AUTH and COMPLETION as transaction types. A COMPLETION transaction requires an authCode in the transaction request.
  • Added userMessage to the transaction response. If populated, this should be displayed by the EPoS at the end of the transaction.
  • Added the following notifications:
    • ATTEMPTING_CANCEL
    • UNABLE_TO_CANCEL
    • CANCELLING
    • REPLACE_PAPER
    • ENTER_CASHBACK

Changed

  • Renamed tpi to tid across all endpoints.
  • DELETE /pac/terminals/{tid}/transactions/{requestId} immediately returns a 202 for all well structured requests. Notifications are used to indicate status of the cancel ("UNABLE_TO_CANCEL_TRANSACTION" and "CANCELLED_TRANSACTION").
  • PUT /pac/terminals/{tid}/transactions/{requestId}/signature immediately returns a 202 for all well structured requests. If signature verification has timed out, the userMessage field of the transaction will indicate this.
  • The format of the built-in user messages has changed to be a single list of messages keyed by messages, rather than a map of keys. This is to ease development by removing potentially unknown keys from occuring at runtime.

Removed

  • Terminal capabilities are no longer returned as part of the terminal object.

v1 – 22/08/2017

Pay-At-Counter

Added

  • When transactions reach the signature verification stage, the following fields are now provided:
    • authCode
    • applicationId
    • applicationLabel
    • cardholderVerificationMethod
    • paymentMethod
    • primaryAccountNumber
    • transactionType

Changed

  • The base url has changed to "/pac/" from "/retail/".
  • The "/pac/terminals/{tpi}/reports" endpoint does not return "409 – Report data retrieval in progress" anymore. Notifications about the state of the report are now provided. Similarly to transactions, reports should now be polled until the "REPORT_FINISHED" notification is received.
  • The location attribute contained in the 423 response for POST on /pac/terminals/{tpi}/transactions (terminal busy due to pending signature verification) now returns a string value instead of a list strings.

Pay-At-Table

Added

  • Each payment now has a "paymentId" field.

Changed

  • PUT "/pat/tables" is now the preferred action for submitting tables to Connect, POST still works as an alias but its usage is discouraged.
  • GET on "/pat/tables/{TableName}" doesn't return the "receiptLines" field anymore, unless the "receipt" query parameter is set to true.

Removed

  • GET on /pat/tables doesn't return the "receiptLines" field anymore