Pay at Counter changelog
This page is about the new Dojo Pay at Counter Websockets API. If you're unsure which API is best for your integration, contact your Partnership Development Manager (PDM).
These changes are the result of direct feedback from some of the first partners who have been integrating with Dojo on this new version of the Pay at Counter API. All changes are reflected in the PAC API documentation.
Major changes
The epos-id header
A new, mandatory epos-id header has been introduced as part of the updates to the PAC API. This field is particularly valuable in cases where more than one EPOS is connected to a single Dojo account.
PaymentID field
We've introduced the PaymentID field across all messages, including notifications, requests, and
responses. The PaymentID will be generated by the EPOS, and it must be unique. This PaymentID can then be used in any further requests from the EPOS, and all requests and responses from Dojo will contain this PaymentID.
Removing RefundID
To streamline identification, RefundID has been removed. All instances have been changed to
PaymentID. The decision was made to eliminate the complexity of managing two distinct IDs.
RecordPayment and RecordRefund as request/response:
RecordPayment and RecordRefund are now requests rather than
notifications. They anticipate corresponding responses (recordPaymentResponse and recordRefundResponse) from the EPOS.
If a request is not received, or an error that is not PAYMENT_ALREADY_RECORDED is sent back to Dojo, the record request
will be sent repeatedly to the EPOS.
Other changes
cancelPaymentRequestandterminalDetailsRequestnow useterminalIdinstead oftid(tidwill be accepted temporarily).connectedTerminalsResultandcancelPaymentResponsenow returnterminalIdandtidtemporarily until Dojo switches to just usingterminalId.- In the
capturePaymentRequest, theamountfield has been changed tobaseAmount.PaymentIDhas been incorporated intocancelPaymentResponseandsignatureVerificationResponse. Additionally, it is now a mandatory component insignatureVerificationRequest. - The
terminalIdfield has been designated as mandatory in bothterminalDetailsRequestandterminalDetailsResponse.
Fixes
- We've addressed a schema typo within
cancelPaymentResponse. The result field no longer appears nested within another result field, ensuring accurate data representation. - We have added a
getPaymentRequestand agetPaymentResponse. Use these when you need to call up payment information as part of your integration.
If you have any questions or require further clarification, please don't hesitate to reach out. Your feedback continues to drive our commitment to improvement.