The Dojo Pay at Counter API payment is designed for managing in-person payments made at an EPOS.
Cancel the current payment.
Request that the current payment is canceled. Only possible when the most recent TerminalNotification is PRESENT_CARD.
Accepts the following message:
Request to cancel the current payment, only possible whilst the most recent TerminalNotification is PRESENT_CARD.
Request to cancel the current payment, only possible whilst the most recent TerminalNotification is PRESENT_CARD.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
The ID of the terminal being used for the transaction
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response that marks if the cancel was successful or not.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing the result of a cancel request for a payment/refund.
The ID of the terminal being used for the transaction
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Error response is used whenever the operation cannot be performed due to various reasons. Please consult other messages descriptions to find out when to use the other certain error codes.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing an error response to a request
The error code of the error. These categorize the type of error that has taken place. With standard JSON-RPC2 errors in the range [-32600, -32700] and Dojo-related errors in the range [-32070, -32090]. Unused numbers are reserved for future use.
A short description of the error to help troubleshoot the problem.
Data related to the error that could help troubleshoot the problem.
The ID of the terminal being used for the transaction
Human readable context about the error
Additional properties are allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"method": "CancelPayment",
"params": {
"paymentId": "88884eaa-14dd-11ee-be56-0242ac120002",
"terminalId": "01234567"
}
}
Cancel the current payment.
Response that marks if the cancel was successful or not.
Accepts the following message:
Response that marks the capture has been successful and outlines how much was captured.
Response that marks if the cancel was successful or not.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing the result of a cancel request for a payment/refund.
The ID of the terminal being used for the transaction
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"cancelling": true,
"terminalId": "01234567",
"paymentId": "88884eaa-14dd-11ee-be56-0242ac120002"
}
}
Capture a payment.
Request to capture a set amount of funds up to and including the total amount currently held. Any difference will be released. Gratuity amount is then added on top of the held amount.
Accepts the following message:
Request to capture a set amount of funds up to and including the total amount currently held. Any difference will be released. Gratuity amount is a portion of the amount, not in addition to the amount. The total of the amount and gratuity must not exceed the currently held funds. To add gratuity for more than the held funds an updatePayment needs to be done first.
Request to capture a set amount of funds up to and including the total amount currently held. Any difference will be released. Gratuity amount is then added on top of the held amount.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
Base amount of funds to capture as part of the held funds. This can be not be greater that the currently held amount, and any difference between this amount and the amount held will be released. The amount is expressed in ISO4217 minor units of the currency, not including any additional amounts (e.g. gratuity).
The gratuity amount to capture as part of the held funds. Expression rules are the same as for base.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response that marks the capture has been successful and outlines how much was captured.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The amount of captured funds expressed in ISO4217 minor units of the currency, not including any additional amounts (e.g. gratuity). For example, for £5.78 is expressed as 578.
The gratuity amount of captured funds. Expression rules are the same as for base.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Error response is used whenever the operation cannot be performed due to various reasons. Please consult other messages descriptions to find out when to use the other certain error codes.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing an error response to a request
The error code of the error. These categorize the type of error that has taken place. With standard JSON-RPC2 errors in the range [-32600, -32700] and Dojo-related errors in the range [-32070, -32090]. Unused numbers are reserved for future use.
A short description of the error to help troubleshoot the problem.
Data related to the error that could help troubleshoot the problem.
The ID of the terminal being used for the transaction
Human readable context about the error
Additional properties are allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"method": "CapturePayment",
"params": {
"baseAmount": 0,
"gratuityAmount": 0,
"paymentId": "88884eaa-14dd-11ee-be56-0242ac120002"
}
}
Capture a payment.
Response that marks the capture has been successful and outlines how much was captured.
Accepts the following message:
Response that marks the capture has been successful and outlines how much was captured.
Response that marks the capture has been successful and outlines how much was captured.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The amount of captured funds expressed in ISO4217 minor units of the currency, not including any additional amounts (e.g. gratuity). For example, for £5.78 is expressed as 578.
The gratuity amount of captured funds. Expression rules are the same as for base.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"baseCapturedAmount": 0,
"gratuityCapturedAmount": 0,
"paymentId": "88884eaa-14dd-11ee-be56-0242ac120002"
}
}
Request details about terminals.
Request a list of connected terminals and their details. The terminals are identified by their terminal identifier (TID), and the details include information about a terminal's currency and its current status. The list of terminals can be filtered by status and currency.
Accepts the following message:
Request a list of connected terminals and their details. The terminals are identified by their terminal identifier (TID), and the details include information about a terminal's currency and its current status. The list of terminals can be filtered by status and currency.
Request a list of connected terminals and their details. The terminals are identified by their terminal identifier (TID), and the details include information about a terminal's currency and its current status. The list of terminals can be filtered by status and currency.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
Optional filter, to return terminals matching the current status. 'AVAILABLE' means the terminal is currently able to accept a request. 'BUSY' means the terminal is currently processing a request and so is unable to accept a new request.
The currency code as specified in ISO 4217. Check enum values to see which are supported.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Provides a list of connected terminals and their details. The terminals are identified by their terminal identifier (TID), and the details include information about a terminal's currency and its current status.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The ID of the terminal being used for the transaction
The currency code as specified in ISO 4217. Check enum values to see which are supported.
The current status of a terminal. 'AVAILABLE' means the terminal is currently able to accept a request. 'BUSY' means the terminal is currently processing a request and so is unable to accept a new request.
Additional properties are NOT allowed.
Error response is used whenever the operation cannot be performed due to various reasons. Please consult other messages descriptions to find out when to use the other certain error codes.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing an error response to a request
The error code of the error. These categorize the type of error that has taken place. With standard JSON-RPC2 errors in the range [-32600, -32700] and Dojo-related errors in the range [-32070, -32090]. Unused numbers are reserved for future use.
A short description of the error to help troubleshoot the problem.
Data related to the error that could help troubleshoot the problem.
The ID of the terminal being used for the transaction
Human readable context about the error
Additional properties are allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"method": "ConnectedTerminals",
"params": {
"status": "AVAILABLE",
"currency": "EUR"
}
}
Request details about terminals.
Provides details of the requested terminal. The details include information about a terminal's currency and its current status.
Accepts the following message:
Provides a list of connected terminals and their details. The terminals are identified by their terminal identifier (TID), and the details include information about a terminal's currency and its current status.
Provides a list of connected terminals and their details. The terminals are identified by their terminal identifier (TID), and the details include information about a terminal's currency and its current status.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The ID of the terminal being used for the transaction
The currency code as specified in ISO 4217. Check enum values to see which are supported.
The current status of a terminal. 'AVAILABLE' means the terminal is currently able to accept a request. 'BUSY' means the terminal is currently processing a request and so is unable to accept a new request.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"result": [
{
"terminalId": "01234567",
"currency": "EUR",
"status": "AVAILABLE"
}
]
}
Create a payment.
The request for the creation of a payment, being a normal sale or pre-auth.
Accepts the following message:
The request for creation of a payment, being a normal sale or pre-auth.
The request for creation of a payment, being a normal sale or pre-auth.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The base amount expressed in ISO4217 minor units of the currency, not including any additional amounts (e.g. gratuity). For example, for £5.78 is expressed as 578.
The method of capture, where auto will happen instantly, manual will need to be captured
The capture options for a create payment request, dependent on the selected CaptureMode will define the options. Currently, only auto capture has options for it.
The cashback amount. Expression rules are the same as for base.
The gratuity amount. Expression rules are the same as for base.
Additional properties are allowed.
Additional properties are NOT allowed.
Indicates whether this transaction should be completed as CNP (e.g. manual entry of card details). If the flag is true the card machine skips the 'Present Card' screen and goes directly into Key Card Number.
The currency code as specified in ISO 4217. Check enum values to see which are supported.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Optional field for additional details about the payment/refund.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response that marks the payment has been successfully created and outlines when it will expire.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
ISO 8601, extended time, 4-digit year datetime with TZ info. Format: YYYY-mm-ddTHH:MM:ss.fff(Z|+HH:MM|-HH:MM)
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Error response is used whenever the operation cannot be performed due to various reasons. Please consult other messages descriptions to find out when to use the other certain error codes.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing an error response to a request
The error code of the error. These categorize the type of error that has taken place. With standard JSON-RPC2 errors in the range [-32600, -32700] and Dojo-related errors in the range [-32070, -32090]. Unused numbers are reserved for future use.
A short description of the error to help troubleshoot the problem.
Data related to the error that could help troubleshoot the problem.
The ID of the terminal being used for the transaction
Human readable context about the error
Additional properties are allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"method": "CreatePayment",
"params": {
"baseAmount": 0,
"captureMode": "AUTO",
"captureModeOptions": {
"captureModeOptionsAuto": {
"cashbackAmount": 0,
"gratuityAmount": 0
}
},
"cardHolderNotPresent": true,
"currency": "EUR",
"paymentId": "88884eaa-14dd-11ee-be56-0242ac120002",
"reference": "Deposit for table 4 under Mr Jones",
"terminalId": "string"
}
}
Create a payment.
Response that marks the payment has been successfully created and outlines when it will expire.
Accepts the following message:
Response that marks the payment has been successful created and outlines when it will expire.
Response that marks the payment has been successfully created and outlines when it will expire.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
ISO 8601, extended time, 4-digit year datetime with TZ info. Format: YYYY-mm-ddTHH:MM:ss.fff(Z|+HH:MM|-HH:MM)
Additional properties are NOT allowed.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"paymentTimesoutAt": "2021-11-05T12:34:56.987654-05:00"
}
}
Create a refund.
The request for the creation of a refund.
Accepts the following message:
Request to begin a refund transaction.
Request to begin a refund transaction.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
Indicates whether this transaction should be completed as CNP (e.g. manual entry of card details). If the flag is true the card machine skips the 'Present Card' screen and goes directly into Key Card Number.
The currency code as specified in ISO 4217. Check enum values to see which are supported.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
The ID of the terminal being used for the transaction
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response to begin a refund transaction.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The time when the EPOS can no longer expect a RecordRefund notification.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Error response is used whenever the operation cannot be performed due to various reasons. Please consult other messages descriptions to find out when to use the other certain error codes.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing an error response to a request
The error code of the error. These categorize the type of error that has taken place. With standard JSON-RPC2 errors in the range [-32600, -32700] and Dojo-related errors in the range [-32070, -32090]. Unused numbers are reserved for future use.
A short description of the error to help troubleshoot the problem.
Data related to the error that could help troubleshoot the problem.
The ID of the terminal being used for the transaction
Human readable context about the error
Additional properties are allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"method": "CreateRefund",
"params": {
"amount": 0,
"cardHolderNotPresent": true,
"currency": "EUR",
"paymentId": "88884eaa-14dd-11ee-be56-0242ac120002",
"terminalId": "01234567"
}
}
Create a refund.
Response that marks the refund has been successfully created and outlines when it will expire.
Accepts the following message:
Response that marks if the refund has been successful created and outlines when it will be classed as timed out.
Response to begin a refund transaction.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The time when the EPOS can no longer expect a RecordRefund notification.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"method": "CreateRefund",
"result": {
"refundTimesoutAt": "string",
"paymentId": "88884eaa-14dd-11ee-be56-0242ac120002"
}
}
Generic error messages.
Error response is used whenever the operation cannot be performed due to various reasons.
Accepts the following message:
Error response is used whenever the operation cannot be performed due to various reasons. Please consult other messages descriptions to find out when to use the other certain error codes.
Error response is used whenever the operation cannot be performed due to various reasons. Please consult other messages descriptions to find out when to use the other certain error codes.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing an error response to a request
The error code of the error. These categorize the type of error that has taken place. With standard JSON-RPC2 errors in the range [-32600, -32700] and Dojo-related errors in the range [-32070, -32090]. Unused numbers are reserved for future use.
A short description of the error to help troubleshoot the problem.
Data related to the error that could help troubleshoot the problem.
The ID of the terminal being used for the transaction
Human readable context about the error
Additional properties are allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"code": -32700,
"message": "invalid accountName provided",
"data": {
"terminalId": "non_existent_terminal",
"userMessage": "Unavailable terminal or no data available for: 'non_existent_terminal'. Please check that the card machine is idle and no action is prompted on its screen, that its network and power cables are correctly connected and that it is not in Standalone Mode. Finally, restart the card machine and, if the problem persists, please contact support."
}
}
}
Message received from Dojo
Accepts the following message:
Retrieve payment details using your paymentId.
Request to get a payment using a specific paymentID. If the payment has not TIMED_OUT or completed, the response will be a not found error. Payments are stored for 24 hours.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"method": "getPayment",
"params": {
"paymentId": "88884eaa-14dd-11ee-be56-0242ac120002"
}
}
Message to send from the EPOS
Accepts the following message:
The response includes detailed, timestamped details about a payment.
A response message for a GetPayment request. Payments are stored for 24 hours.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
All the details regarding a payment from a specific paymentId.
The amount captured, not including any additional amounts (e.g. gratuity, cashback).
The amount that was held before the capture/release, not including any additional amounts (e.g. gratuity, cashback).
The amount of cashback captured.
The amount of gratuity captured.
The method of capture, where auto will happen instantly, manual will need to be captured
An object representing a single payment performed with a physical card
Payment ID from the acquirer.
Authorization code provided by the bank to approve the payment.
Method by which the card details have been entered into the payment acceptance device, usually from a physical card or other consumer payment device.
An object representing the details of the physical card
If available, the expiry date of the card in the format 'MM/YY'.
Funding type of the card.
PAN (Primary Account Number) of the card used in the transaction. Only the last 4 digits of the number are provided.
Scheme of the card used in the transaction. The scheme controls the operation of payment transactions.
Additional properties are NOT allowed.
Method used to verify that the person presenting the card is the legitimate cardholder. The most common verification methods are PIN and signature.
The ID of the terminal being used for the transaction
A unique identifier for the merchant. A single merchant can be associated with multiple terminals, point-of-sale machines, and waiters.
Additional properties are NOT allowed.
The currency code as specified in ISO 4217. Check enum values to see which are supported.
ISO 8601, extended time, 4-digit year datetime with TZ info. Format: YYYY-mm-ddTHH:MM:ss.fff(Z|+HH:MM|-HH:MM)
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
A receipt from the terminal defined by an ordered array of Receipt Line schemas.
A receipt line containing text that has optional formatting.
This is the text to be printed for this line. The string can only contain ASCII characters 0x20-0x7E (inclusive), 0x80 (Euro Symbol) and 0xA3 (Pound Symbol). The maxLength of this string depends on the formatting options used.
Defines the type of the receipt line to be text.
Optional formatting for the printed text. If using DOUBLE_WIDTH the maximum length of the text reduces to 12 characters.
Additional properties are NOT allowed.
A receipt line containing a graphic.
If this is a receipt from a terminal, this will contain the text equivalent of the printed graphic object. If this is a receipt to be printed on a terminal, then this property must be an empty string.
Defines the type of graphic to be printed.
This property has no effect on this type of receipt line, which is why it should be passed as an empty list.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"baseCapturedAmount": 0,
"baseHeldAmount": 0,
"cashbackCapturedAmount": 0,
"gratuityCapturedAmount": 0,
"captureMode": "AUTO",
"cardPresentPaymentInfo": {
"acquirerPaymentId": "string",
"authCode": "ABC123",
"entryMode": "ENTRY_MODE_UNKNOWN",
"card": {
"expiryDate": "01/23",
"fundingType": "CARD_FUNDING_TYPE_CREDIT",
"last4PAN": 1125,
"scheme": "CARD_SCHEME_AMEX"
},
"cardholderVerificationMethod": "CARDHOLDER_VERIFICATION_METHOD_UNKNOWN",
"terminalId": "01234567",
"merchantId": "string"
},
"cardPresentPaymentStatus": "CARD_PRESENT_PAYMENT_STATUS_SUCCESSFUL",
"currency": "EUR",
"expiresAt": "2021-11-05T12:34:56.987654-05:00",
"paymentId": "88884eaa-14dd-11ee-be56-0242ac120002",
"receiptLines": [
{
"value": "",
"type": "TEXT",
"format": [
"BOLD"
]
}
],
"paymentSuccessful": true
}
}
Record payment request and response.
A request to inform the EPOS that a payment has happened. Once the EPOS has successfully recorded the payment, a recordPaymentResponse should be sent.
Accepts the following message:
A request to inform the EPOS that a payment has happened. Once the EPOS has successfully recorded the payment, a recordPaymentResponse should be sent.
A request to inform the EPOS that a payment has happened. Once the EPOS has successfully recorded the payment, a recordPaymentResponse should be sent.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
All the details regarding a payment from a specific paymentId.
The amount captured, not including any additional amounts (e.g. gratuity, cashback).
The amount that was held before the capture/release, not including any additional amounts (e.g. gratuity, cashback).
The amount of cashback captured.
The amount of gratuity captured.
The method of capture, where auto will happen instantly, manual will need to be captured
An object representing a single payment performed with a physical card
Payment ID from the acquirer.
Authorization code provided by the bank to approve the payment.
Method by which the card details have been entered into the payment acceptance device, usually from a physical card or other consumer payment device.
An object representing the details of the physical card
If available, the expiry date of the card in the format 'MM/YY'.
Funding type of the card.
PAN (Primary Account Number) of the card used in the transaction. Only the last 4 digits of the number are provided.
Scheme of the card used in the transaction. The scheme controls the operation of payment transactions.
Additional properties are NOT allowed.
Method used to verify that the person presenting the card is the legitimate cardholder. The most common verification methods are PIN and signature.
The ID of the terminal being used for the transaction
A unique identifier for the merchant. A single merchant can be associated with multiple terminals, point-of-sale machines, and waiters.
Additional properties are NOT allowed.
The currency code as specified in ISO 4217. Check enum values to see which are supported.
ISO 8601, extended time, 4-digit year datetime with TZ info. Format: YYYY-mm-ddTHH:MM:ss.fff(Z|+HH:MM|-HH:MM)
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
A receipt from the terminal defined by an ordered array of Receipt Line schemas.
A receipt line containing text that has optional formatting.
This is the text to be printed for this line. The string can only contain ASCII characters 0x20-0x7E (inclusive), 0x80 (Euro Symbol) and 0xA3 (Pound Symbol). The maxLength of this string depends on the formatting options used.
Defines the type of the receipt line to be text.
Optional formatting for the printed text. If using DOUBLE_WIDTH the maximum length of the text reduces to 12 characters.
Additional properties are NOT allowed.
A receipt line containing a graphic.
If this is a receipt from a terminal, this will contain the text equivalent of the printed graphic object. If this is a receipt to be printed on a terminal, then this property must be an empty string.
Defines the type of graphic to be printed.
This property has no effect on this type of receipt line, which is why it should be passed as an empty list.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"method": "RecordPayment",
"id": 1,
"params": {
"baseCapturedAmount": 0,
"baseHeldAmount": 0,
"cashbackCapturedAmount": 0,
"gratuityCapturedAmount": 0,
"captureMode": "AUTO",
"cardPresentPaymentInfo": {
"acquirerPaymentId": "string",
"authCode": "ABC123",
"entryMode": "ENTRY_MODE_UNKNOWN",
"card": {
"expiryDate": "01/23",
"fundingType": "CARD_FUNDING_TYPE_CREDIT",
"last4PAN": 1125,
"scheme": "CARD_SCHEME_AMEX"
},
"cardholderVerificationMethod": "CARDHOLDER_VERIFICATION_METHOD_UNKNOWN",
"terminalId": "01234567",
"merchantId": "string"
},
"cardPresentPaymentStatus": "CARD_PRESENT_PAYMENT_STATUS_SUCCESSFUL",
"currency": "EUR",
"expiresAt": "2021-11-05T12:34:56.987654-05:00",
"paymentId": "88884eaa-14dd-11ee-be56-0242ac120002",
"receiptLines": [
{
"value": "",
"type": "TEXT",
"format": [
"BOLD"
]
}
],
"paymentSuccessful": true
}
}
Record payment request and response.
Empty result indicates logical success of the request.
Accepts the following message:
The final message in a payment flow. The result object is an acknowledgement that the payment has been successfully recorded.
Empty result indicates logical success of the request.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"result": null
}
Notification message for RecordRefund.
A request to inform the EPOS that a refund has happened. Once the EPOS has successfully recorded the refund, a recordRefundResponse should be sent.
Accepts the following message:
A request to inform the EPOS that a refund has happened. Once the EPOS has successfully recorded the refund, a recordRefundResponse should be sent.
A request to inform the EPOS that a refund has happened. Once the EPOS has successfully recorded the refund, a recordRefundResponse should be sent.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
All the details regarding a refund from a specific paymentId.
ISO 8601, extended time, 4-digit year datetime with TZ info. Format: YYYY-mm-ddTHH:MM:ss.fff(Z|+HH:MM|-HH:MM)
The amount captured, not including any additional amounts (e.g. gratuity, cashback).
The amount of gratuity captured.
An object representing a single payment performed with a physical card
Payment ID from the acquirer.
Authorization code provided by the bank to approve the payment.
Method by which the card details have been entered into the payment acceptance device, usually from a physical card or other consumer payment device.
An object representing the details of the physical card
If available, the expiry date of the card in the format 'MM/YY'.
Funding type of the card.
PAN (Primary Account Number) of the card used in the transaction. Only the last 4 digits of the number are provided.
Scheme of the card used in the transaction. The scheme controls the operation of payment transactions.
Additional properties are NOT allowed.
Method used to verify that the person presenting the card is the legitimate cardholder. The most common verification methods are PIN and signature.
The ID of the terminal being used for the transaction
A unique identifier for the merchant. A single merchant can be associated with multiple terminals, point-of-sale machines, and waiters.
Additional properties are NOT allowed.
The currency code as specified in ISO 4217. Check enum values to see which are supported.
A unique identifier for the merchant. A single merchant can be associated with multiple terminals, point-of-sale machines, and waiters.
A receipt from the terminal defined by an ordered array of Receipt Line schemas.
A receipt line containing text that has optional formatting.
This is the text to be printed for this line. The string can only contain ASCII characters 0x20-0x7E (inclusive), 0x80 (Euro Symbol) and 0xA3 (Pound Symbol). The maxLength of this string depends on the formatting options used.
Defines the type of the receipt line to be text.
Optional formatting for the printed text. If using DOUBLE_WIDTH the maximum length of the text reduces to 12 characters.
Additional properties are NOT allowed.
A receipt line containing a graphic.
If this is a receipt from a terminal, this will contain the text equivalent of the printed graphic object. If this is a receipt to be printed on a terminal, then this property must be an empty string.
Defines the type of graphic to be printed.
This property has no effect on this type of receipt line, which is why it should be passed as an empty list.
Additional properties are NOT allowed.
If the refund has been fully processed, this will be true
.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
The ID of the terminal being used for the transaction
Additional properties are NOT allowed.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"method": "RecordRefund",
"params": {
"attemptedAt": "2021-11-05T12:34:56.987654-05:00",
"baseAmount": 0,
"gratuityAmount": 0,
"cardPresentPaymentInfo": {
"acquirerPaymentId": "string",
"authCode": "ABC123",
"entryMode": "ENTRY_MODE_UNKNOWN",
"card": {
"expiryDate": "01/23",
"fundingType": "CARD_FUNDING_TYPE_CREDIT",
"last4PAN": 1125,
"scheme": "CARD_SCHEME_AMEX"
},
"cardholderVerificationMethod": "CARDHOLDER_VERIFICATION_METHOD_UNKNOWN",
"terminalId": "01234567",
"merchantId": "string"
},
"cardPresentPaymentStatus": "CARD_PRESENT_PAYMENT_STATUS_SUCCESSFUL",
"currency": "EUR",
"merchantId": 12341234,
"receiptLines": [
{
"value": "",
"type": "TEXT",
"format": [
"BOLD"
]
}
],
"refundSuccessful": true,
"paymentId": "88884eaa-14dd-11ee-be56-0242ac120002",
"terminalId": "01234567"
}
}
Notification message for RecordRefund.
Empty result indicates logical success of the request.
Accepts the following message:
Empty result indicates logical success of the request.
The final message in a refund flow. The result object is an acknowledgement that the refund has been successfully recorded.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
Additional properties are allowed.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"result": {}
}
Reverse a payment.
A request to reverse the authorization on currently held funds for a specific paymentID.
Accepts the following message:
Request to reverse the authorization on currently held funds for a specific paymentID.
Request to reverse the authorization on currently held funds for a specific paymentID.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response that marks the reversal has been successful.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Error response is used whenever the operation cannot be performed due to various reasons. Please consult other messages descriptions to find out when to use the other certain error codes.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing an error response to a request
The error code of the error. These categorize the type of error that has taken place. With standard JSON-RPC2 errors in the range [-32600, -32700] and Dojo-related errors in the range [-32070, -32090]. Unused numbers are reserved for future use.
A short description of the error to help troubleshoot the problem.
Data related to the error that could help troubleshoot the problem.
The ID of the terminal being used for the transaction
Human readable context about the error
Additional properties are allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"method": "ReversePayment",
"params": {
"paymentId": "88884eaa-14dd-11ee-be56-0242ac120002"
}
}
Reverse a payment.
Response that marks the reversal has been successful.
Accepts the following message:
Response that marks the reversal has been successful.
Response that marks the reversal has been successful.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"paymentId": "88884eaa-14dd-11ee-be56-0242ac120002"
}
}
Process signature-verified payments and refunds.
Request to the EPOS to confirm whether the signature has been accepted or not in a payment that requires signature verification. This request must be replied to within a set period of time defined by the timeout property. If no reply to this request is received (i.e. no confirmation of acceptance), the signature will automatically be accepted.
Accepts the following message:
Request to the EPOS to confirm whether the signature has been accepted or not in a payment that requires signature verification. This request must be replied to within a set period of time defined by the timeout property. If no reply to this request is received (i.e. no confirmation of acceptance), the signature will automatically be accepted.
Request to the EPOS to confirm whether the signature has been accepted or not in a payment that requires signature verification. This request must be replied to within a set period of time defined by the timeout property. If no reply to this request is received (i.e. no confirmation of acceptance), the signature will automatically be accepted.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
The ID of the terminal being used for the transaction
The time the EPOS has to return a result before the signatureVerification is automatically accepted
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response to Dojo that shows the result of the signature verification.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
True if the signature has been accepted, false if not accepted.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Error response is used whenever the operation cannot be performed due to various reasons. Please consult other messages descriptions to find out when to use the other certain error codes.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing an error response to a request
The error code of the error. These categorize the type of error that has taken place. With standard JSON-RPC2 errors in the range [-32600, -32700] and Dojo-related errors in the range [-32070, -32090]. Unused numbers are reserved for future use.
A short description of the error to help troubleshoot the problem.
Data related to the error that could help troubleshoot the problem.
The ID of the terminal being used for the transaction
Human readable context about the error
Additional properties are allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"method": "SignatureVerificationRequest",
"params": {
"paymentId": "88884eaa-14dd-11ee-be56-0242ac120002",
"terminalId": "01234567",
"timeout": 0
}
}
Process signature-verified payments and refunds.
Response to the interface that shows the result of the signature verification.
Accepts the following message:
Response Message for 'SignatureVerificationRequest'.
Response to Dojo that shows the result of the signature verification.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
True if the signature has been accepted, false if not accepted.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"accepted": true,
"paymentId": "88884eaa-14dd-11ee-be56-0242ac120002"
}
}
Terminal Details
Request details of the terminal identified by the provided TID. The details include information about a terminal's currency and its current status.
Accepts the following message:
Request details of the terminal identified by the provided TID. The details include information about a terminal's currency and its current status.
Request details of the terminal identified by the provided terminalId. The details include information about a terminal's currency and its current status.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The ID of the terminal being used for the transaction
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Provides details of the requested terminal. The details include information about a terminal's currency and its current status.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The ID of the terminal being used for the transaction
The currency this terminal or request is using. If being used to set the currency code of a response message then it must be the same currency as the associated request message. The textual representation from ISO 4217 is used.
The current status of a terminal. 'AVAILABLE' means the terminal is currently able to accept a request. 'BUSY' means the terminal is currently processing a request and so is unable to accept a new request.
Additional properties are NOT allowed.
Error response is used whenever the operation cannot be performed due to various reasons. Please consult other messages descriptions to find out when to use the other certain error codes.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing an error response to a request
The error code of the error. These categorize the type of error that has taken place. With standard JSON-RPC2 errors in the range [-32600, -32700] and Dojo-related errors in the range [-32070, -32090]. Unused numbers are reserved for future use.
A short description of the error to help troubleshoot the problem.
Data related to the error that could help troubleshoot the problem.
The ID of the terminal being used for the transaction
Human readable context about the error
Additional properties are allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"method": "TerminalDetails",
"params": {
"terminalId": "01234567"
}
}
Terminal Details
Provides details of the requested terminal. The details include information about a terminal's currency and its current status.
Accepts the following message:
Request details of the terminal identified by the provided TID. The details include information about a terminal's currency and its current status.
Provides details of the requested terminal. The details include information about a terminal's currency and its current status.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The ID of the terminal being used for the transaction
The currency this terminal or request is using. If being used to set the currency code of a response message then it must be the same currency as the associated request message. The textual representation from ISO 4217 is used.
The current status of a terminal. 'AVAILABLE' means the terminal is currently able to accept a request. 'BUSY' means the terminal is currently processing a request and so is unable to accept a new request.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"result": [
{
"terminalId": "01234567",
"currency": "GBP",
"status": "AVAILABLE"
}
]
}
Terminal Notification
A notification providing the current state of the payment/refund being processed on the terminal with the stated TID.
Accepts the following message:
A notification providing the current state of the payment/refund being processed on the terminal with the stated TID.
A notification providing the current state of the payment/refund being processed on the terminal with the stated TID.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The possible notification values that can be returned by the terminal.
The ID of the terminal being used for the transaction
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"method": "TerminalNotification",
"result": {
"notificationValue": "APPROVED",
"terminalId": "01234567",
"paymentId": "88884eaa-14dd-11ee-be56-0242ac120002"
}
}
Update Payment
Request to increase the held amount for a manual capture payment, identified by paymentId.
Accepts the following message:
Request to increase the held amount for a manual capture payment, identified by paymentId.
Request to increase the held amount for a manual capture payment, identified by paymentId.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The new amount to set the payment to
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response that marks the update has been successfully created and confirms what the new amount held is and how much it was increased by.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The new amount of the payment
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Error response is used whenever the operation cannot be performed due to various reasons. Please consult other messages descriptions to find out when to use the other certain error codes.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing an error response to a request
The error code of the error. These categorize the type of error that has taken place. With standard JSON-RPC2 errors in the range [-32600, -32700] and Dojo-related errors in the range [-32070, -32090]. Unused numbers are reserved for future use.
A short description of the error to help troubleshoot the problem.
Data related to the error that could help troubleshoot the problem.
The ID of the terminal being used for the transaction
Human readable context about the error
Additional properties are allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"method": "UpdatePayment",
"params": {
"amountTo": 0,
"paymentId": "88884eaa-14dd-11ee-be56-0242ac120002"
}
}
Update Payment
Response that marks the update has been successful created and confirms what the new amount held is and how much it was increased by.
Accepts the following message:
Response that marks the update has been successful created and confirms what the new amount held is and how much it was increased by.
Response that marks the update has been successfully created and confirms what the new amount held is and how much it was increased by.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The new amount of the payment
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"updatedTo": 0,
"paymentId": "88884eaa-14dd-11ee-be56-0242ac120002"
}
}
Request to cancel the current payment, only possible whilst the most recent TerminalNotification is PRESENT_CARD.
Request to cancel the current payment, only possible whilst the most recent TerminalNotification is PRESENT_CARD.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
The ID of the terminal being used for the transaction
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response that marks if the cancel was successful or not.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing the result of a cancel request for a payment/refund.
The ID of the terminal being used for the transaction
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Error response is used whenever the operation cannot be performed due to various reasons. Please consult other messages descriptions to find out when to use the other certain error codes.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing an error response to a request
The error code of the error. These categorize the type of error that has taken place. With standard JSON-RPC2 errors in the range [-32600, -32700] and Dojo-related errors in the range [-32070, -32090]. Unused numbers are reserved for future use.
A short description of the error to help troubleshoot the problem.
Data related to the error that could help troubleshoot the problem.
The ID of the terminal being used for the transaction
Human readable context about the error
Additional properties are allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response that marks the capture has been successful and outlines how much was captured.
Response that marks if the cancel was successful or not.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing the result of a cancel request for a payment/refund.
The ID of the terminal being used for the transaction
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Request to capture a set amount of funds up to and including the total amount currently held. Any difference will be released. Gratuity amount is a portion of the amount, not in addition to the amount. The total of the amount and gratuity must not exceed the currently held funds. To add gratuity for more than the held funds an updatePayment needs to be done first.
Request to capture a set amount of funds up to and including the total amount currently held. Any difference will be released. Gratuity amount is then added on top of the held amount.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
Base amount of funds to capture as part of the held funds. This can be not be greater that the currently held amount, and any difference between this amount and the amount held will be released. The amount is expressed in ISO4217 minor units of the currency, not including any additional amounts (e.g. gratuity).
The gratuity amount to capture as part of the held funds. Expression rules are the same as for base.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response that marks the capture has been successful and outlines how much was captured.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The amount of captured funds expressed in ISO4217 minor units of the currency, not including any additional amounts (e.g. gratuity). For example, for £5.78 is expressed as 578.
The gratuity amount of captured funds. Expression rules are the same as for base.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Error response is used whenever the operation cannot be performed due to various reasons. Please consult other messages descriptions to find out when to use the other certain error codes.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing an error response to a request
The error code of the error. These categorize the type of error that has taken place. With standard JSON-RPC2 errors in the range [-32600, -32700] and Dojo-related errors in the range [-32070, -32090]. Unused numbers are reserved for future use.
A short description of the error to help troubleshoot the problem.
Data related to the error that could help troubleshoot the problem.
The ID of the terminal being used for the transaction
Human readable context about the error
Additional properties are allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response that marks the capture has been successful and outlines how much was captured.
Response that marks the capture has been successful and outlines how much was captured.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The amount of captured funds expressed in ISO4217 minor units of the currency, not including any additional amounts (e.g. gratuity). For example, for £5.78 is expressed as 578.
The gratuity amount of captured funds. Expression rules are the same as for base.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Request a list of connected terminals and their details. The terminals are identified by their terminal identifier (TID), and the details include information about a terminal's currency and its current status. The list of terminals can be filtered by status and currency.
Request a list of connected terminals and their details. The terminals are identified by their terminal identifier (TID), and the details include information about a terminal's currency and its current status. The list of terminals can be filtered by status and currency.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
Optional filter, to return terminals matching the current status. 'AVAILABLE' means the terminal is currently able to accept a request. 'BUSY' means the terminal is currently processing a request and so is unable to accept a new request.
The currency code as specified in ISO 4217. Check enum values to see which are supported.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Provides a list of connected terminals and their details. The terminals are identified by their terminal identifier (TID), and the details include information about a terminal's currency and its current status.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The ID of the terminal being used for the transaction
The currency code as specified in ISO 4217. Check enum values to see which are supported.
The current status of a terminal. 'AVAILABLE' means the terminal is currently able to accept a request. 'BUSY' means the terminal is currently processing a request and so is unable to accept a new request.
Additional properties are NOT allowed.
Error response is used whenever the operation cannot be performed due to various reasons. Please consult other messages descriptions to find out when to use the other certain error codes.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing an error response to a request
The error code of the error. These categorize the type of error that has taken place. With standard JSON-RPC2 errors in the range [-32600, -32700] and Dojo-related errors in the range [-32070, -32090]. Unused numbers are reserved for future use.
A short description of the error to help troubleshoot the problem.
Data related to the error that could help troubleshoot the problem.
The ID of the terminal being used for the transaction
Human readable context about the error
Additional properties are allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Provides a list of connected terminals and their details. The terminals are identified by their terminal identifier (TID), and the details include information about a terminal's currency and its current status.
Provides a list of connected terminals and their details. The terminals are identified by their terminal identifier (TID), and the details include information about a terminal's currency and its current status.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The ID of the terminal being used for the transaction
The currency code as specified in ISO 4217. Check enum values to see which are supported.
The current status of a terminal. 'AVAILABLE' means the terminal is currently able to accept a request. 'BUSY' means the terminal is currently processing a request and so is unable to accept a new request.
Additional properties are NOT allowed.
The request for creation of a payment, being a normal sale or pre-auth.
The request for creation of a payment, being a normal sale or pre-auth.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The base amount expressed in ISO4217 minor units of the currency, not including any additional amounts (e.g. gratuity). For example, for £5.78 is expressed as 578.
The method of capture, where auto will happen instantly, manual will need to be captured
The capture options for a create payment request, dependent on the selected CaptureMode will define the options. Currently, only auto capture has options for it.
The cashback amount. Expression rules are the same as for base.
The gratuity amount. Expression rules are the same as for base.
Additional properties are allowed.
Additional properties are NOT allowed.
Indicates whether this transaction should be completed as CNP (e.g. manual entry of card details). If the flag is true the card machine skips the 'Present Card' screen and goes directly into Key Card Number.
The currency code as specified in ISO 4217. Check enum values to see which are supported.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Optional field for additional details about the payment/refund.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response that marks the payment has been successfully created and outlines when it will expire.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
ISO 8601, extended time, 4-digit year datetime with TZ info. Format: YYYY-mm-ddTHH:MM:ss.fff(Z|+HH:MM|-HH:MM)
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Error response is used whenever the operation cannot be performed due to various reasons. Please consult other messages descriptions to find out when to use the other certain error codes.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing an error response to a request
The error code of the error. These categorize the type of error that has taken place. With standard JSON-RPC2 errors in the range [-32600, -32700] and Dojo-related errors in the range [-32070, -32090]. Unused numbers are reserved for future use.
A short description of the error to help troubleshoot the problem.
Data related to the error that could help troubleshoot the problem.
The ID of the terminal being used for the transaction
Human readable context about the error
Additional properties are allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response that marks the payment has been successful created and outlines when it will expire.
Response that marks the payment has been successfully created and outlines when it will expire.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
ISO 8601, extended time, 4-digit year datetime with TZ info. Format: YYYY-mm-ddTHH:MM:ss.fff(Z|+HH:MM|-HH:MM)
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Request to begin a refund transaction.
Request to begin a refund transaction.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
Indicates whether this transaction should be completed as CNP (e.g. manual entry of card details). If the flag is true the card machine skips the 'Present Card' screen and goes directly into Key Card Number.
The currency code as specified in ISO 4217. Check enum values to see which are supported.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
The ID of the terminal being used for the transaction
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response to begin a refund transaction.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The time when the EPOS can no longer expect a RecordRefund notification.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Error response is used whenever the operation cannot be performed due to various reasons. Please consult other messages descriptions to find out when to use the other certain error codes.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing an error response to a request
The error code of the error. These categorize the type of error that has taken place. With standard JSON-RPC2 errors in the range [-32600, -32700] and Dojo-related errors in the range [-32070, -32090]. Unused numbers are reserved for future use.
A short description of the error to help troubleshoot the problem.
Data related to the error that could help troubleshoot the problem.
The ID of the terminal being used for the transaction
Human readable context about the error
Additional properties are allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response that marks if the refund has been successful created and outlines when it will be classed as timed out.
Response to begin a refund transaction.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The time when the EPOS can no longer expect a RecordRefund notification.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Error response is used whenever the operation cannot be performed due to various reasons. Please consult other messages descriptions to find out when to use the other certain error codes.
Error response is used whenever the operation cannot be performed due to various reasons. Please consult other messages descriptions to find out when to use the other certain error codes.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing an error response to a request
The error code of the error. These categorize the type of error that has taken place. With standard JSON-RPC2 errors in the range [-32600, -32700] and Dojo-related errors in the range [-32070, -32090]. Unused numbers are reserved for future use.
A short description of the error to help troubleshoot the problem.
Data related to the error that could help troubleshoot the problem.
The ID of the terminal being used for the transaction
Human readable context about the error
Additional properties are allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Retrieve payment details using your paymentId.
Request to get a payment using a specific paymentID. If the payment has not TIMED_OUT or completed, the response will be a not found error. Payments are stored for 24 hours.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
The response includes detailed, timestamped details about a payment.
A response message for a GetPayment request. Payments are stored for 24 hours.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
All the details regarding a payment from a specific paymentId.
The amount captured, not including any additional amounts (e.g. gratuity, cashback).
The amount that was held before the capture/release, not including any additional amounts (e.g. gratuity, cashback).
The amount of cashback captured.
The amount of gratuity captured.
The method of capture, where auto will happen instantly, manual will need to be captured
An object representing a single payment performed with a physical card
Payment ID from the acquirer.
Authorization code provided by the bank to approve the payment.
Method by which the card details have been entered into the payment acceptance device, usually from a physical card or other consumer payment device.
An object representing the details of the physical card
If available, the expiry date of the card in the format 'MM/YY'.
Funding type of the card.
PAN (Primary Account Number) of the card used in the transaction. Only the last 4 digits of the number are provided.
Scheme of the card used in the transaction. The scheme controls the operation of payment transactions.
Additional properties are NOT allowed.
Method used to verify that the person presenting the card is the legitimate cardholder. The most common verification methods are PIN and signature.
The ID of the terminal being used for the transaction
A unique identifier for the merchant. A single merchant can be associated with multiple terminals, point-of-sale machines, and waiters.
Additional properties are NOT allowed.
The currency code as specified in ISO 4217. Check enum values to see which are supported.
ISO 8601, extended time, 4-digit year datetime with TZ info. Format: YYYY-mm-ddTHH:MM:ss.fff(Z|+HH:MM|-HH:MM)
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
A receipt from the terminal defined by an ordered array of Receipt Line schemas.
A receipt line containing text that has optional formatting.
This is the text to be printed for this line. The string can only contain ASCII characters 0x20-0x7E (inclusive), 0x80 (Euro Symbol) and 0xA3 (Pound Symbol). The maxLength of this string depends on the formatting options used.
Defines the type of the receipt line to be text.
Optional formatting for the printed text. If using DOUBLE_WIDTH the maximum length of the text reduces to 12 characters.
Additional properties are NOT allowed.
A receipt line containing a graphic.
If this is a receipt from a terminal, this will contain the text equivalent of the printed graphic object. If this is a receipt to be printed on a terminal, then this property must be an empty string.
Defines the type of graphic to be printed.
This property has no effect on this type of receipt line, which is why it should be passed as an empty list.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
A request to inform the EPOS that a payment has happened. Once the EPOS has successfully recorded the payment, a recordPaymentResponse should be sent.
A request to inform the EPOS that a payment has happened. Once the EPOS has successfully recorded the payment, a recordPaymentResponse should be sent.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
All the details regarding a payment from a specific paymentId.
The amount captured, not including any additional amounts (e.g. gratuity, cashback).
The amount that was held before the capture/release, not including any additional amounts (e.g. gratuity, cashback).
The amount of cashback captured.
The amount of gratuity captured.
The method of capture, where auto will happen instantly, manual will need to be captured
An object representing a single payment performed with a physical card
Payment ID from the acquirer.
Authorization code provided by the bank to approve the payment.
Method by which the card details have been entered into the payment acceptance device, usually from a physical card or other consumer payment device.
An object representing the details of the physical card
If available, the expiry date of the card in the format 'MM/YY'.
Funding type of the card.
PAN (Primary Account Number) of the card used in the transaction. Only the last 4 digits of the number are provided.
Scheme of the card used in the transaction. The scheme controls the operation of payment transactions.
Additional properties are NOT allowed.
Method used to verify that the person presenting the card is the legitimate cardholder. The most common verification methods are PIN and signature.
The ID of the terminal being used for the transaction
A unique identifier for the merchant. A single merchant can be associated with multiple terminals, point-of-sale machines, and waiters.
Additional properties are NOT allowed.
The currency code as specified in ISO 4217. Check enum values to see which are supported.
ISO 8601, extended time, 4-digit year datetime with TZ info. Format: YYYY-mm-ddTHH:MM:ss.fff(Z|+HH:MM|-HH:MM)
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
A receipt from the terminal defined by an ordered array of Receipt Line schemas.
A receipt line containing text that has optional formatting.
This is the text to be printed for this line. The string can only contain ASCII characters 0x20-0x7E (inclusive), 0x80 (Euro Symbol) and 0xA3 (Pound Symbol). The maxLength of this string depends on the formatting options used.
Defines the type of the receipt line to be text.
Optional formatting for the printed text. If using DOUBLE_WIDTH the maximum length of the text reduces to 12 characters.
Additional properties are NOT allowed.
A receipt line containing a graphic.
If this is a receipt from a terminal, this will contain the text equivalent of the printed graphic object. If this is a receipt to be printed on a terminal, then this property must be an empty string.
Defines the type of graphic to be printed.
This property has no effect on this type of receipt line, which is why it should be passed as an empty list.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
The final message in a payment flow. The result object is an acknowledgement that the payment has been successfully recorded.
Empty result indicates logical success of the request.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
Additional properties are NOT allowed.
A request to inform the EPOS that a refund has happened. Once the EPOS has successfully recorded the refund, a recordRefundResponse should be sent.
A request to inform the EPOS that a refund has happened. Once the EPOS has successfully recorded the refund, a recordRefundResponse should be sent.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
All the details regarding a refund from a specific paymentId.
ISO 8601, extended time, 4-digit year datetime with TZ info. Format: YYYY-mm-ddTHH:MM:ss.fff(Z|+HH:MM|-HH:MM)
The amount captured, not including any additional amounts (e.g. gratuity, cashback).
The amount of gratuity captured.
An object representing a single payment performed with a physical card
Payment ID from the acquirer.
Authorization code provided by the bank to approve the payment.
Method by which the card details have been entered into the payment acceptance device, usually from a physical card or other consumer payment device.
An object representing the details of the physical card
If available, the expiry date of the card in the format 'MM/YY'.
Funding type of the card.
PAN (Primary Account Number) of the card used in the transaction. Only the last 4 digits of the number are provided.
Scheme of the card used in the transaction. The scheme controls the operation of payment transactions.
Additional properties are NOT allowed.
Method used to verify that the person presenting the card is the legitimate cardholder. The most common verification methods are PIN and signature.
The ID of the terminal being used for the transaction
A unique identifier for the merchant. A single merchant can be associated with multiple terminals, point-of-sale machines, and waiters.
Additional properties are NOT allowed.
The currency code as specified in ISO 4217. Check enum values to see which are supported.
A unique identifier for the merchant. A single merchant can be associated with multiple terminals, point-of-sale machines, and waiters.
A receipt from the terminal defined by an ordered array of Receipt Line schemas.
A receipt line containing text that has optional formatting.
This is the text to be printed for this line. The string can only contain ASCII characters 0x20-0x7E (inclusive), 0x80 (Euro Symbol) and 0xA3 (Pound Symbol). The maxLength of this string depends on the formatting options used.
Defines the type of the receipt line to be text.
Optional formatting for the printed text. If using DOUBLE_WIDTH the maximum length of the text reduces to 12 characters.
Additional properties are NOT allowed.
A receipt line containing a graphic.
If this is a receipt from a terminal, this will contain the text equivalent of the printed graphic object. If this is a receipt to be printed on a terminal, then this property must be an empty string.
Defines the type of graphic to be printed.
This property has no effect on this type of receipt line, which is why it should be passed as an empty list.
Additional properties are NOT allowed.
If the refund has been fully processed, this will be true
.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
The ID of the terminal being used for the transaction
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Empty result indicates logical success of the request.
The final message in a refund flow. The result object is an acknowledgement that the refund has been successfully recorded.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
Additional properties are allowed.
Additional properties are NOT allowed.
Request to the EPOS to confirm whether the signature has been accepted or not in a payment that requires signature verification. This request must be replied to within a set period of time defined by the timeout property. If no reply to this request is received (i.e. no confirmation of acceptance), the signature will automatically be accepted.
Request to the EPOS to confirm whether the signature has been accepted or not in a payment that requires signature verification. This request must be replied to within a set period of time defined by the timeout property. If no reply to this request is received (i.e. no confirmation of acceptance), the signature will automatically be accepted.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
The ID of the terminal being used for the transaction
The time the EPOS has to return a result before the signatureVerification is automatically accepted
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response to Dojo that shows the result of the signature verification.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
True if the signature has been accepted, false if not accepted.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Error response is used whenever the operation cannot be performed due to various reasons. Please consult other messages descriptions to find out when to use the other certain error codes.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing an error response to a request
The error code of the error. These categorize the type of error that has taken place. With standard JSON-RPC2 errors in the range [-32600, -32700] and Dojo-related errors in the range [-32070, -32090]. Unused numbers are reserved for future use.
A short description of the error to help troubleshoot the problem.
Data related to the error that could help troubleshoot the problem.
The ID of the terminal being used for the transaction
Human readable context about the error
Additional properties are allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Request to reverse the authorization on currently held funds for a specific paymentID.
Request to reverse the authorization on currently held funds for a specific paymentID.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response that marks the reversal has been successful.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Error response is used whenever the operation cannot be performed due to various reasons. Please consult other messages descriptions to find out when to use the other certain error codes.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing an error response to a request
The error code of the error. These categorize the type of error that has taken place. With standard JSON-RPC2 errors in the range [-32600, -32700] and Dojo-related errors in the range [-32070, -32090]. Unused numbers are reserved for future use.
A short description of the error to help troubleshoot the problem.
Data related to the error that could help troubleshoot the problem.
The ID of the terminal being used for the transaction
Human readable context about the error
Additional properties are allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response that marks the reversal has been successful.
Response that marks the reversal has been successful.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response Message for 'SignatureVerificationRequest'.
Response to Dojo that shows the result of the signature verification.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
True if the signature has been accepted, false if not accepted.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Request details of the terminal identified by the provided TID. The details include information about a terminal's currency and its current status.
Request details of the terminal identified by the provided terminalId. The details include information about a terminal's currency and its current status.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The ID of the terminal being used for the transaction
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Provides details of the requested terminal. The details include information about a terminal's currency and its current status.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The ID of the terminal being used for the transaction
The currency this terminal or request is using. If being used to set the currency code of a response message then it must be the same currency as the associated request message. The textual representation from ISO 4217 is used.
The current status of a terminal. 'AVAILABLE' means the terminal is currently able to accept a request. 'BUSY' means the terminal is currently processing a request and so is unable to accept a new request.
Additional properties are NOT allowed.
Error response is used whenever the operation cannot be performed due to various reasons. Please consult other messages descriptions to find out when to use the other certain error codes.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing an error response to a request
The error code of the error. These categorize the type of error that has taken place. With standard JSON-RPC2 errors in the range [-32600, -32700] and Dojo-related errors in the range [-32070, -32090]. Unused numbers are reserved for future use.
A short description of the error to help troubleshoot the problem.
Data related to the error that could help troubleshoot the problem.
The ID of the terminal being used for the transaction
Human readable context about the error
Additional properties are allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Request details of the terminal identified by the provided TID. The details include information about a terminal's currency and its current status.
Provides details of the requested terminal. The details include information about a terminal's currency and its current status.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The ID of the terminal being used for the transaction
The currency this terminal or request is using. If being used to set the currency code of a response message then it must be the same currency as the associated request message. The textual representation from ISO 4217 is used.
The current status of a terminal. 'AVAILABLE' means the terminal is currently able to accept a request. 'BUSY' means the terminal is currently processing a request and so is unable to accept a new request.
Additional properties are NOT allowed.
A notification providing the current state of the payment/refund being processed on the terminal with the stated TID.
A notification providing the current state of the payment/refund being processed on the terminal with the stated TID.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The possible notification values that can be returned by the terminal.
The ID of the terminal being used for the transaction
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Request to increase the held amount for a manual capture payment, identified by paymentId.
Request to increase the held amount for a manual capture payment, identified by paymentId.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The new amount to set the payment to
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response that marks the update has been successfully created and confirms what the new amount held is and how much it was increased by.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The new amount of the payment
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Error response is used whenever the operation cannot be performed due to various reasons. Please consult other messages descriptions to find out when to use the other certain error codes.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing an error response to a request
The error code of the error. These categorize the type of error that has taken place. With standard JSON-RPC2 errors in the range [-32600, -32700] and Dojo-related errors in the range [-32070, -32090]. Unused numbers are reserved for future use.
A short description of the error to help troubleshoot the problem.
Data related to the error that could help troubleshoot the problem.
The ID of the terminal being used for the transaction
Human readable context about the error
Additional properties are allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response that marks the update has been successful created and confirms what the new amount held is and how much it was increased by.
Response that marks the update has been successfully created and confirms what the new amount held is and how much it was increased by.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The new amount of the payment
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
Request to cancel the current payment, only possible whilst the most recent TerminalNotification is PRESENT_CARD.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
The ID of the terminal being used for the transaction
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response that marks if the cancel was successful or not.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing the result of a cancel request for a payment/refund.
The ID of the terminal being used for the transaction
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Request to capture a set amount of funds up to and including the total amount currently held. Any difference will be released. Gratuity amount is then added on top of the held amount.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
Base amount of funds to capture as part of the held funds. This can be not be greater that the currently held amount, and any difference between this amount and the amount held will be released. The amount is expressed in ISO4217 minor units of the currency, not including any additional amounts (e.g. gratuity).
The gratuity amount to capture as part of the held funds. Expression rules are the same as for base.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response that marks the capture has been successful and outlines how much was captured.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The amount of captured funds expressed in ISO4217 minor units of the currency, not including any additional amounts (e.g. gratuity). For example, for £5.78 is expressed as 578.
The gratuity amount of captured funds. Expression rules are the same as for base.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Request a list of connected terminals and their details. The terminals are identified by their terminal identifier (TID), and the details include information about a terminal's currency and its current status. The list of terminals can be filtered by status and currency.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
Optional filter, to return terminals matching the current status. 'AVAILABLE' means the terminal is currently able to accept a request. 'BUSY' means the terminal is currently processing a request and so is unable to accept a new request.
The currency code as specified in ISO 4217. Check enum values to see which are supported.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Provides a list of connected terminals and their details. The terminals are identified by their terminal identifier (TID), and the details include information about a terminal's currency and its current status.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The ID of the terminal being used for the transaction
The currency code as specified in ISO 4217. Check enum values to see which are supported.
The current status of a terminal. 'AVAILABLE' means the terminal is currently able to accept a request. 'BUSY' means the terminal is currently processing a request and so is unable to accept a new request.
Additional properties are NOT allowed.
The request for creation of a payment, being a normal sale or pre-auth.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The base amount expressed in ISO4217 minor units of the currency, not including any additional amounts (e.g. gratuity). For example, for £5.78 is expressed as 578.
The method of capture, where auto will happen instantly, manual will need to be captured
The capture options for a create payment request, dependent on the selected CaptureMode will define the options. Currently, only auto capture has options for it.
The cashback amount. Expression rules are the same as for base.
The gratuity amount. Expression rules are the same as for base.
Additional properties are allowed.
Additional properties are NOT allowed.
Indicates whether this transaction should be completed as CNP (e.g. manual entry of card details). If the flag is true the card machine skips the 'Present Card' screen and goes directly into Key Card Number.
The currency code as specified in ISO 4217. Check enum values to see which are supported.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Optional field for additional details about the payment/refund.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response that marks the payment has been successfully created and outlines when it will expire.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
ISO 8601, extended time, 4-digit year datetime with TZ info. Format: YYYY-mm-ddTHH:MM:ss.fff(Z|+HH:MM|-HH:MM)
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Request to begin a refund transaction.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
Indicates whether this transaction should be completed as CNP (e.g. manual entry of card details). If the flag is true the card machine skips the 'Present Card' screen and goes directly into Key Card Number.
The currency code as specified in ISO 4217. Check enum values to see which are supported.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
The ID of the terminal being used for the transaction
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response to begin a refund transaction.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The time when the EPOS can no longer expect a RecordRefund notification.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Error response is used whenever the operation cannot be performed due to various reasons. Please consult other messages descriptions to find out when to use the other certain error codes.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
An object representing an error response to a request
The error code of the error. These categorize the type of error that has taken place. With standard JSON-RPC2 errors in the range [-32600, -32700] and Dojo-related errors in the range [-32070, -32090]. Unused numbers are reserved for future use.
A short description of the error to help troubleshoot the problem.
Data related to the error that could help troubleshoot the problem.
The ID of the terminal being used for the transaction
Human readable context about the error
Additional properties are allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Identifies the JSON Remote Protocol version that this message uses.
Used to authenticate your requests to the API. The authToken is formed from base64 encoding your accountName (first string in the URL for existing integrations) and apiKey. The two values should be seperated by a colon with no spaces e.g. base64("abcdef0000000:7d4773f2-367f-406c-881a-b4cb854971f3"). The values will be provided by Dojo.
Identifies the reseller who sells software on behalf of the EPOS company. This value should be configurable as this will be unique for each reseller. The value will be provided by Dojo to the reseller.
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 particular EPOS software. The value will be provided by Dojo.
Identifies the EPOS that is associated with the order. It should be unique for each EPOS.
A request to inform the EPOS that a payment has happened. Once the EPOS has successfully recorded the payment, a recordPaymentResponse should be sent.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
All the details regarding a payment from a specific paymentId.
The amount captured, not including any additional amounts (e.g. gratuity, cashback).
The amount that was held before the capture/release, not including any additional amounts (e.g. gratuity, cashback).
The amount of cashback captured.
The amount of gratuity captured.
The method of capture, where auto will happen instantly, manual will need to be captured
An object representing a single payment performed with a physical card
Payment ID from the acquirer.
Authorization code provided by the bank to approve the payment.
Method by which the card details have been entered into the payment acceptance device, usually from a physical card or other consumer payment device.
An object representing the details of the physical card
If available, the expiry date of the card in the format 'MM/YY'.
Funding type of the card.
PAN (Primary Account Number) of the card used in the transaction. Only the last 4 digits of the number are provided.
Scheme of the card used in the transaction. The scheme controls the operation of payment transactions.
Additional properties are NOT allowed.
Method used to verify that the person presenting the card is the legitimate cardholder. The most common verification methods are PIN and signature.
The ID of the terminal being used for the transaction
A unique identifier for the merchant. A single merchant can be associated with multiple terminals, point-of-sale machines, and waiters.
Additional properties are NOT allowed.
The currency code as specified in ISO 4217. Check enum values to see which are supported.
ISO 8601, extended time, 4-digit year datetime with TZ info. Format: YYYY-mm-ddTHH:MM:ss.fff(Z|+HH:MM|-HH:MM)
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
A receipt from the terminal defined by an ordered array of Receipt Line schemas.
A receipt line containing text that has optional formatting.
This is the text to be printed for this line. The string can only contain ASCII characters 0x20-0x7E (inclusive), 0x80 (Euro Symbol) and 0xA3 (Pound Symbol). The maxLength of this string depends on the formatting options used.
Defines the type of the receipt line to be text.
Optional formatting for the printed text. If using DOUBLE_WIDTH the maximum length of the text reduces to 12 characters.
Additional properties are NOT allowed.
A receipt line containing a graphic.
If this is a receipt from a terminal, this will contain the text equivalent of the printed graphic object. If this is a receipt to be printed on a terminal, then this property must be an empty string.
Defines the type of graphic to be printed.
This property has no effect on this type of receipt line, which is why it should be passed as an empty list.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Used to authenticate your requests to the API. The authToken is formed from base64 encoding your accountName (first string in the URL for existing integrations) and apiKey. The two values should be seperated by a colon with no spaces e.g. base64("abcdef0000000:7d4773f2-367f-406c-881a-b4cb854971f3"). The values will be provided by Dojo.
Identifies the reseller who sells software on behalf of the EPOS company. This value should be configurable as this will be unique for each reseller. The value will be provided by Dojo to the reseller.
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 particular EPOS software. The value will be provided by Dojo.
Identifies the EPOS that is associated with the order. It should be unique for each EPOS.
Additional properties are NOT allowed.
Request to get a payment using a specific paymentID. If the payment has not TIMED_OUT or completed, the response will be a not found error. Payments are stored for 24 hours.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
A response message for a GetPayment request. Payments are stored for 24 hours.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
All the details regarding a payment from a specific paymentId.
The amount captured, not including any additional amounts (e.g. gratuity, cashback).
The amount that was held before the capture/release, not including any additional amounts (e.g. gratuity, cashback).
The amount of cashback captured.
The amount of gratuity captured.
The method of capture, where auto will happen instantly, manual will need to be captured
An object representing a single payment performed with a physical card
Payment ID from the acquirer.
Authorization code provided by the bank to approve the payment.
Method by which the card details have been entered into the payment acceptance device, usually from a physical card or other consumer payment device.
An object representing the details of the physical card
If available, the expiry date of the card in the format 'MM/YY'.
Funding type of the card.
PAN (Primary Account Number) of the card used in the transaction. Only the last 4 digits of the number are provided.
Scheme of the card used in the transaction. The scheme controls the operation of payment transactions.
Additional properties are NOT allowed.
Method used to verify that the person presenting the card is the legitimate cardholder. The most common verification methods are PIN and signature.
The ID of the terminal being used for the transaction
A unique identifier for the merchant. A single merchant can be associated with multiple terminals, point-of-sale machines, and waiters.
Additional properties are NOT allowed.
The currency code as specified in ISO 4217. Check enum values to see which are supported.
ISO 8601, extended time, 4-digit year datetime with TZ info. Format: YYYY-mm-ddTHH:MM:ss.fff(Z|+HH:MM|-HH:MM)
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
A receipt from the terminal defined by an ordered array of Receipt Line schemas.
A receipt line containing text that has optional formatting.
This is the text to be printed for this line. The string can only contain ASCII characters 0x20-0x7E (inclusive), 0x80 (Euro Symbol) and 0xA3 (Pound Symbol). The maxLength of this string depends on the formatting options used.
Defines the type of the receipt line to be text.
Optional formatting for the printed text. If using DOUBLE_WIDTH the maximum length of the text reduces to 12 characters.
Additional properties are NOT allowed.
A receipt line containing a graphic.
If this is a receipt from a terminal, this will contain the text equivalent of the printed graphic object. If this is a receipt to be printed on a terminal, then this property must be an empty string.
Defines the type of graphic to be printed.
This property has no effect on this type of receipt line, which is why it should be passed as an empty list.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Empty result indicates logical success of the request.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
Additional properties are NOT allowed.
A request to inform the EPOS that a refund has happened. Once the EPOS has successfully recorded the refund, a recordRefundResponse should be sent.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
All the details regarding a refund from a specific paymentId.
ISO 8601, extended time, 4-digit year datetime with TZ info. Format: YYYY-mm-ddTHH:MM:ss.fff(Z|+HH:MM|-HH:MM)
The amount captured, not including any additional amounts (e.g. gratuity, cashback).
The amount of gratuity captured.
An object representing a single payment performed with a physical card
Payment ID from the acquirer.
Authorization code provided by the bank to approve the payment.
Method by which the card details have been entered into the payment acceptance device, usually from a physical card or other consumer payment device.
An object representing the details of the physical card
If available, the expiry date of the card in the format 'MM/YY'.
Funding type of the card.
PAN (Primary Account Number) of the card used in the transaction. Only the last 4 digits of the number are provided.
Scheme of the card used in the transaction. The scheme controls the operation of payment transactions.
Additional properties are NOT allowed.
Method used to verify that the person presenting the card is the legitimate cardholder. The most common verification methods are PIN and signature.
The ID of the terminal being used for the transaction
A unique identifier for the merchant. A single merchant can be associated with multiple terminals, point-of-sale machines, and waiters.
Additional properties are NOT allowed.
The currency code as specified in ISO 4217. Check enum values to see which are supported.
A unique identifier for the merchant. A single merchant can be associated with multiple terminals, point-of-sale machines, and waiters.
A receipt from the terminal defined by an ordered array of Receipt Line schemas.
A receipt line containing text that has optional formatting.
This is the text to be printed for this line. The string can only contain ASCII characters 0x20-0x7E (inclusive), 0x80 (Euro Symbol) and 0xA3 (Pound Symbol). The maxLength of this string depends on the formatting options used.
Defines the type of the receipt line to be text.
Optional formatting for the printed text. If using DOUBLE_WIDTH the maximum length of the text reduces to 12 characters.
Additional properties are NOT allowed.
A receipt line containing a graphic.
If this is a receipt from a terminal, this will contain the text equivalent of the printed graphic object. If this is a receipt to be printed on a terminal, then this property must be an empty string.
Defines the type of graphic to be printed.
This property has no effect on this type of receipt line, which is why it should be passed as an empty list.
Additional properties are NOT allowed.
If the refund has been fully processed, this will be true
.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
The ID of the terminal being used for the transaction
Additional properties are NOT allowed.
Additional properties are NOT allowed.
The final message in a refund flow. The result object is an acknowledgement that the refund has been successfully recorded.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
Additional properties are allowed.
Additional properties are NOT allowed.
Request to reverse the authorization on currently held funds for a specific paymentID.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response that marks the reversal has been successful.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Request to the EPOS to confirm whether the signature has been accepted or not in a payment that requires signature verification. This request must be replied to within a set period of time defined by the timeout property. If no reply to this request is received (i.e. no confirmation of acceptance), the signature will automatically be accepted.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
The ID of the terminal being used for the transaction
The time the EPOS has to return a result before the signatureVerification is automatically accepted
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response to Dojo that shows the result of the signature verification.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
True if the signature has been accepted, false if not accepted.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Request details of the terminal identified by the provided terminalId. The details include information about a terminal's currency and its current status.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The ID of the terminal being used for the transaction
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Provides details of the requested terminal. The details include information about a terminal's currency and its current status.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The ID of the terminal being used for the transaction
The currency this terminal or request is using. If being used to set the currency code of a response message then it must be the same currency as the associated request message. The textual representation from ISO 4217 is used.
The current status of a terminal. 'AVAILABLE' means the terminal is currently able to accept a request. 'BUSY' means the terminal is currently processing a request and so is unable to accept a new request.
Additional properties are NOT allowed.
A notification providing the current state of the payment/refund being processed on the terminal with the stated TID.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The possible notification values that can be returned by the terminal.
The ID of the terminal being used for the transaction
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Request to increase the held amount for a manual capture payment, identified by paymentId.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The new amount to set the payment to
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
Response that marks the update has been successfully created and confirms what the new amount held is and how much it was increased by.
Identifies the JSON Remote Protocol version that this message uses.
Used to identify this request message/ The same id will be used in the response message so that the response can be matched with the request.
The new amount of the payment
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
An object representing the result of a cancel request for a payment/refund.
The ID of the terminal being used for the transaction
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
Additional properties are NOT allowed.
The method of capture, where auto will happen instantly, manual will need to be captured
The capture options for a create payment request, dependent on the selected CaptureMode will define the options. Currently, only auto capture has options for it.
The cashback amount. Expression rules are the same as for base.
The gratuity amount. Expression rules are the same as for base.
Additional properties are allowed.
Additional properties are NOT allowed.
An object representing the details of the physical card
If available, the expiry date of the card in the format 'MM/YY'.
Funding type of the card.
PAN (Primary Account Number) of the card used in the transaction. Only the last 4 digits of the number are provided.
Scheme of the card used in the transaction. The scheme controls the operation of payment transactions.
Additional properties are NOT allowed.
Indicates whether this transaction should be completed as CNP (e.g. manual entry of card details). If the flag is true the card machine skips the 'Present Card' screen and goes directly into Key Card Number.
An object representing a single payment performed with a physical card
Payment ID from the acquirer.
Authorization code provided by the bank to approve the payment.
Method by which the card details have been entered into the payment acceptance device, usually from a physical card or other consumer payment device.
An object representing the details of the physical card
If available, the expiry date of the card in the format 'MM/YY'.
Funding type of the card.
PAN (Primary Account Number) of the card used in the transaction. Only the last 4 digits of the number are provided.
Scheme of the card used in the transaction. The scheme controls the operation of payment transactions.
Additional properties are NOT allowed.
Method used to verify that the person presenting the card is the legitimate cardholder. The most common verification methods are PIN and signature.
The ID of the terminal being used for the transaction
A unique identifier for the merchant. A single merchant can be associated with multiple terminals, point-of-sale machines, and waiters.
Additional properties are NOT allowed.
The currency code as specified in ISO 4217. Check enum values to see which are supported.
ISO 8601, extended time, 4-digit year datetime with TZ info. Format: YYYY-mm-ddTHH:MM:ss.fff(Z|+HH:MM|-HH:MM)
An object representing an error response to a request
The error code of the error. These categorize the type of error that has taken place. With standard JSON-RPC2 errors in the range [-32600, -32700] and Dojo-related errors in the range [-32070, -32090]. Unused numbers are reserved for future use.
A short description of the error to help troubleshoot the problem.
Data related to the error that could help troubleshoot the problem.
The ID of the terminal being used for the transaction
Human readable context about the error
Additional properties are allowed.
Additional properties are NOT allowed.
An object representing an error notification sent to EPOS
Machine-usable code describing an error.
Human readable, arbitrary string describing the reason or details of the error, if applicable.
ID of the original message to which the error is sent in response to
Additional properties are NOT allowed.
The possible notification values that can be returned by the terminal.
All the details regarding a payment from a specific paymentId.
The amount captured, not including any additional amounts (e.g. gratuity, cashback).
The amount that was held before the capture/release, not including any additional amounts (e.g. gratuity, cashback).
The amount of cashback captured.
The amount of gratuity captured.
The method of capture, where auto will happen instantly, manual will need to be captured
An object representing a single payment performed with a physical card
Payment ID from the acquirer.
Authorization code provided by the bank to approve the payment.
Method by which the card details have been entered into the payment acceptance device, usually from a physical card or other consumer payment device.
An object representing the details of the physical card
If available, the expiry date of the card in the format 'MM/YY'.
Funding type of the card.
PAN (Primary Account Number) of the card used in the transaction. Only the last 4 digits of the number are provided.
Scheme of the card used in the transaction. The scheme controls the operation of payment transactions.
Additional properties are NOT allowed.
Method used to verify that the person presenting the card is the legitimate cardholder. The most common verification methods are PIN and signature.
The ID of the terminal being used for the transaction
A unique identifier for the merchant. A single merchant can be associated with multiple terminals, point-of-sale machines, and waiters.
Additional properties are NOT allowed.
The currency code as specified in ISO 4217. Check enum values to see which are supported.
ISO 8601, extended time, 4-digit year datetime with TZ info. Format: YYYY-mm-ddTHH:MM:ss.fff(Z|+HH:MM|-HH:MM)
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
A receipt from the terminal defined by an ordered array of Receipt Line schemas.
A receipt line containing text that has optional formatting.
This is the text to be printed for this line. The string can only contain ASCII characters 0x20-0x7E (inclusive), 0x80 (Euro Symbol) and 0xA3 (Pound Symbol). The maxLength of this string depends on the formatting options used.
Defines the type of the receipt line to be text.
Optional formatting for the printed text. If using DOUBLE_WIDTH the maximum length of the text reduces to 12 characters.
Additional properties are NOT allowed.
A receipt line containing a graphic.
If this is a receipt from a terminal, this will contain the text equivalent of the printed graphic object. If this is a receipt to be printed on a terminal, then this property must be an empty string.
Defines the type of graphic to be printed.
This property has no effect on this type of receipt line, which is why it should be passed as an empty list.
Additional properties are NOT allowed.
Additional properties are NOT allowed.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
A receipt from the terminal defined by an ordered array of Receipt Line schemas.
A receipt line containing text that has optional formatting.
This is the text to be printed for this line. The string can only contain ASCII characters 0x20-0x7E (inclusive), 0x80 (Euro Symbol) and 0xA3 (Pound Symbol). The maxLength of this string depends on the formatting options used.
Defines the type of the receipt line to be text.
Optional formatting for the printed text. If using DOUBLE_WIDTH the maximum length of the text reduces to 12 characters.
Additional properties are NOT allowed.
A receipt line containing a graphic.
If this is a receipt from a terminal, this will contain the text equivalent of the printed graphic object. If this is a receipt to be printed on a terminal, then this property must be an empty string.
Defines the type of graphic to be printed.
This property has no effect on this type of receipt line, which is why it should be passed as an empty list.
Additional properties are NOT allowed.
Optional field for additional details about the payment/refund.
All the details regarding a refund from a specific paymentId.
ISO 8601, extended time, 4-digit year datetime with TZ info. Format: YYYY-mm-ddTHH:MM:ss.fff(Z|+HH:MM|-HH:MM)
The amount captured, not including any additional amounts (e.g. gratuity, cashback).
The amount of gratuity captured.
An object representing a single payment performed with a physical card
Payment ID from the acquirer.
Authorization code provided by the bank to approve the payment.
Method by which the card details have been entered into the payment acceptance device, usually from a physical card or other consumer payment device.
An object representing the details of the physical card
If available, the expiry date of the card in the format 'MM/YY'.
Funding type of the card.
PAN (Primary Account Number) of the card used in the transaction. Only the last 4 digits of the number are provided.
Scheme of the card used in the transaction. The scheme controls the operation of payment transactions.
Additional properties are NOT allowed.
Method used to verify that the person presenting the card is the legitimate cardholder. The most common verification methods are PIN and signature.
The ID of the terminal being used for the transaction
A unique identifier for the merchant. A single merchant can be associated with multiple terminals, point-of-sale machines, and waiters.
Additional properties are NOT allowed.
The currency code as specified in ISO 4217. Check enum values to see which are supported.
A unique identifier for the merchant. A single merchant can be associated with multiple terminals, point-of-sale machines, and waiters.
A receipt from the terminal defined by an ordered array of Receipt Line schemas.
A receipt line containing text that has optional formatting.
This is the text to be printed for this line. The string can only contain ASCII characters 0x20-0x7E (inclusive), 0x80 (Euro Symbol) and 0xA3 (Pound Symbol). The maxLength of this string depends on the formatting options used.
Defines the type of the receipt line to be text.
Optional formatting for the printed text. If using DOUBLE_WIDTH the maximum length of the text reduces to 12 characters.
Additional properties are NOT allowed.
A receipt line containing a graphic.
If this is a receipt from a terminal, this will contain the text equivalent of the printed graphic object. If this is a receipt to be printed on a terminal, then this property must be an empty string.
Defines the type of graphic to be printed.
This property has no effect on this type of receipt line, which is why it should be passed as an empty list.
Additional properties are NOT allowed.
If the refund has been fully processed, this will be true
.
A unique identifier for the payment generated by the EPOS, it will be used to reference this payment in all operations. Recommendation is to use a UUID.
The ID of the terminal being used for the transaction
Additional properties are NOT allowed.
The ID of the terminal being used for the transaction
A universally unique identifier