ResultCodes
The following section gives an overview how the ResultCodes on SIXml protocol side and on TIM API side clearly have to be differentiated. It is essential to know that on SIXml protocol side each ResultCode is returned as a numeric value while on TIM API side only enumerations are used, no numeric values. An integrator must never use the numeric integer value of a TIM API ResultCode enumeration, but only the enum value. This is due to the fact that the TIM API ResultCodes are fully generated and are internally mapped to the SIXml ResultCodes. The numeric int values of the TIM API enumeration are therefore also generated and may not match to the exact numeric value of the ResultCode of SIXml protocol which are predefined. An example for this handling is the following:
This example shows a SIXml response including the SIXml
"ResultCode = 50 - Current request has been cancelled by the ECR":
<sixml:Response xmlns:sixml="www.six-payment-services.com/"
FunctionGroup="Admin"
Function="Login"
SequenceNumber="1"
ResultCode='50'
TimeStamp="20150818T063640+0000"/>
On TIM API side this SIXml ResultCode is mapped on an
enumeration "ResultCode.API_CANCEL_ECR".
As this enumeration is generated, the numeric integer value of this enumeration can differ
from the numeric value on SIXml Protocol, therefore the integer value of the enumeration
must not be used, but only directly the enum value "API_CANCEL_ECR".
For overview purpose the following table contains the numeric ResultCode used on SIXml Protocol and the enumeration mapping used on TIM API side. There is explicitly no numeric value on TIM API side mentioned as it is forbidden to use the numeric integer value of the ResultCode enumeration:
SIXml Protocol value | TIM API Enum value | Error description |
---|---|---|
0 | ResultCode.OK | The request has been performed successfully, no error occured. |
50 | ResultCode.API_CANCEL_ECR | Current request has been cancelled by the ECR. |
51 | ResultCode.API_INVALID_ANSWER | The ECR received an invalid answer from the terminal. |
52 | ResultCode.API_DISABLED_FEATURE | The current request cannot be handled because the required feature is disabled. |
53 | ResultCode.API_FUNCTION_DISALLOWED | The requested function is not allowed with the current license Communication. |
54 | ResultCode.API_PERSISTENCY_PROBLEM | Persistent data damaged, out of space or storage permission problem. |
100 | ResultCode.API_CONNECT_FAIL_SERVER | The ECR was not able to connect to the TIM Server. |
101 | ResultCode.API_CONNECT_FAIL_TERMINAL | The ECR was not able to connect to the EFT Terminal. |
102 | ResultCode.API_CONNECTION_LOST_SERVER | The ECR lost the connection to the TIM Server. |
103 | ResultCode.API_CONNECTION_LOST_TERMINAL | The ECR lost the connection to the EFT Terminal. |
104 | ResultCode.ETHERNET_DISCONNECTED | No ethernet cable has been connected. |
105 | ResultCode.RS232_DISCONNECTED | No RS232 cable has been connected. |
106 | ResultCode.API_TIMEOUT_SERVER | Timeout during connection establishment from TIM API to TIM Server. |
107 | ResultCode.API_TIMEOUT_TERMINAL | Timeout during connection establishment from TIM API to EFT Terminal. |
200 | ResultCode.SERVER_INVALID_ANSWER | TIM Server received an invalid answer from the terminal. |
201 | ResultCode.SERVER_INVALID_REQUEST | TIM Server received an invalid request from TIM API. |
202 | ResultCode.SERVER_DISABLED_FEATURE | TIM Server received a message that requires a disabled feature. |
203 | ResultCode.SERVER_PERSISTENCY_PROBLEM | Persistent data damaged, out of space or storage permission problem. |
250 | ResultCode.SERVER_CONNECT_FAIL_TERMINAL | TIM Server was not able to connect to EFT Terminal. |
251 | ResultCode.SERVER_CONNECTION_LOST_TERMINAL | TIM Server lost connection to the EFT Terminal. |
252 | ResultCode.SERVER_TIMEOUT_TERMINAL | Timeout during connection establishment from TIM Server to EFT Terminal. |
300 | ResultCode.CCR_UNAVAILABLE | Hardware error, Chip card reader not available. |
301 | ResultCode.MCR_UNAVAILABLE | Hardware error, Magstripe card reader not available. |
302 | ResultCode.NFC_UNAVAILABLE | Hardware error, Contactless card reader not available. |
303 | ResultCode.DISPLAY_UNAVAILABLE | Hardware error, Display not available. |
304 | ResultCode.PIN_PAD_UNAVAILABLE | Hardware error, PinPad not available. |
305 | ResultCode.RS232_UNAVAILABLE | Hardware error, RS232 device not available. |
306 | ResultCode.RS232_NOT_CONFIGURED | Connected RS232 device not configured. |
307 | ResultCode.SW_INSTALLATION_FAILED | Something went wrong during the SW Update process. |
308 | ResultCode.SW_VERSION_NOT_SUITABLE | SW version set for update in the SCS is not suitable for the device. |
309 | ResultCode.SW_AUTHENTICATION_FAILED | SW authentication failed due to hash check failure. |
400 | ResultCode.CARD_READER_ERROR_CCR | Chip card reader error occured. |
401 | ResultCode.CARD_READER_ERROR_MCR | Magstripe card reader error occured. |
402 | ResultCode.CARD_READER_ERROR_NFC | Contactless card reader error occured. |
403 | ResultCode.CARD_ERROR_CCR | Card error occured using the chip card reader. |
404 | ResultCode.CARD_ERROR_MCR | Card error occured using the magstripe card reader. |
405 | ResultCode.CARD_ERROR_NFC | Card error occured using the contactless card reader. |
406 | ResultCode.CARD_READ_ERROR | Reading error occured during card reading. |
407 | ResultCode.CARD_READ_TIMEOUT | Timeout occured during card reading. |
408 | ResultCode.CARD_INSERTION_TIMEOUT | Cardholder did not insert card during timeout. |
409 | ResultCode.CARD_READER_KEYS_LOST | Keys lost for secure communication. |
410 | ResultCode.CARD_READER_SECURITY_ERROR | Security error occured. |
411 | ResultCode.CARD_TIMEOUT | Card did not respond in time. |
412 | ResultCode.CARD_NOT_READABLE | Card could not be read. |
413 | ResultCode.CARD_INVALID_DATA | Invalid card data read. |
414 | ResultCode.CARD_FUNCTION_NOT_FOUND | Corresponding card function not found. |
415 | ResultCode.CARD_FUNCTION_NOT_ALLOWED | Card function not allowed. |
416 | ResultCode.CARD_UNEXPECTEDLY_PRESENT_IN_READER | Card unexpectedly present in card reader. |
500 | ResultCode.PIN_PAD_SECURITY_ERROR | Security error occured. |
501 | ResultCode.PIN_PAD_TAMPERED | PinPad has be tampered. |
502 | ResultCode.PIN_PAD_KEYS_LOST | Keys lost for secure communication. |
550 | ResultCode.CARDHOLDER_STOP | Cardholder cancelled transaction pushing the Stop key. |
551 | ResultCode.CARDHOLDER_TIMEOUT | Cardholder did not react in time. |
552 | ResultCode.CARD_REMOVED | Card has been removed by the cardholder. |
600 | ResultCode.TIM_TIMEOUT_ECR | ECR did not respond in time to a request. |
601 | ResultCode.TIM_CONNECT_FAIL_PAYMENT_HOST | EFT terminal not able to connect to payment host. |
602 | ResultCode.TIM_CONNECTION_LOST_PAYMENT_HOST | EFT Terminal did lose connection to payment host. |
603 | ResultCode.TIM_TIMEOUT_ANSWER_RS232 | RS232 device did not respond in time to a request. |
604 | ResultCode.TIM_COMMUNICATION_FAILURE | Communication failed. |
605 | ResultCode.TIM_CONFIG_FAILURE | Reconfig request partially successful - Config failed. |
606 | ResultCode.TIM_INIT_FAILURE | Reconfig request partially successful - Init not or only partially successful. |
700 | ResultCode.SIXML_GENERAL_ERROR | General error on SIXml Protocol. |
701 | ResultCode.SIXML_INVALID_REQUEST | Generic error if request not valid. |
702 | ResultCode.SIXML_WRONG_CASHIER | Wrong UsrId entered for Activate. |
703 | ResultCode.SIXML_WRONG_ECR_ID | Wrong EcrId entered for Login. |
704 | ResultCode.SIXML_UNKNOWN_REFERENCE_NUMBER | Unknown reference number entered for Credit or Reversal. |
705 | ResultCode.SIXML_WRONG_STATE | Request not allowed in the current terminal state. |
706 | ResultCode.BUSY_OTHER_CONTROLLER | Another controller is currently using the EFT. |
707 | ResultCode.BUSY_MAINTENANCE | Mainenance task in progress. |
708 | ResultCode.REQUEST_PENDING | Another request from the same controller is already running. |
709 | ResultCode.SIXML_UNSUPPORTED_REQUEST | Request not supported by terminal. |
800 | ResultCode.TRX_NO_COMMON_APPLICATIONS | No common application found on card during Application Selection. |
801 | ResultCode.TRX_LIMIT_EXCEEDED | Current transaction exceeds transaction limit (amount). |
802 | ResultCode.TRX_NO_COMMON_CVM | No common cardholder verification method found on card during. |
803 | ResultCode.DECLINED_CVM_FAILED | Performed CVM failed. |
804 | ResultCode.TRX_REFERRAL | Referral required for current transaction. |
805 | ResultCode.TRX_INVALID_AUTH_RESPONSE | Authorization response invalid. |
806 | ResultCode.DECLINED_GENERIC | Authorization failed, generic error. |
807 | ResultCode.DECLINED_SALDO_TOO_LOW | Authorization failed, saldo too low. |
808 | ResultCode.DECLINED_WRONG_PIN | Authorization failed, cardholder entered wrong PIN. |
809 | ResultCode.DECLINED_CARD_BLOCKED | Authorization failed, card blocked. |
810 | ResultCode.DECLINED_SECURITY_ISSUE | Authorization failed, security issue. |
811 | ResultCode.DECLINED_USAGE_CONTROL | Authorization failed, usage control. |
812 | ResultCode.DECLINED_DOUBLE_TRANSACTION | Authorization failed, current transaction may be a double transaction. |
813 | ResultCode.DECLINED_GENERIC_FIRST_AC | Authorization failed, first AC generation failed. |
814 | ResultCode.DECLINED_GENERIC_SECOND_AC | Authorization failed, second AC generation failed. |
815 | ResultCode.TRX_COMMIT_TIMEOUT | Commit request not sent in time. |
816 | ResultCode.TRX_ROLLBACK_IMPOSSIBLE | Rollback not possible for current transaction. |
817 | ResultCode.CASHBACK_AMOUNT_TOO_LOW | The intended cashback amount is too low. |
818 | ResultCode.CASHBACK_AMOUNT_TOO_HIGH | The intended cashback amount is too high. |
819 | ResultCode.BASKET_DECLINED | Part of the basket is not allowed. Transaction declined. |
820 | ResultCode.NO_TRX_IN_GROUP_EXCEEDED | Current transaction exceeds the limit for the number of transactions in a group. |
821 | ResultCode.UNSUPPORTED_CHARACTERS_IN_MESSAGE | Current request contains unsupported characters. |
822 | ResultCode.LOYALTY_CHECK_IN_PENDING | So far no loyalty data is available, check-in pending. |
823 | ResultCode.DECLINED_CARD_ERROR | Authorization failed, card error. |
824 | ResultCode.DECLINED_CARD_EXPIRED | Authorization failed, card expired. |
825 | ResultCode.DECLINED_TRX_INVALID | Authorization failed, transaction invalid. |
826 | ResultCode.DECLINED_TRY_LATER | Authorization failed, try later. |
827 | ResultCode.DECLINED_TRY_ANOTHER_INTERFACE | Authorization failed, try another interface. |
828 | ResultCode.DECLINED_INVALID_MERCHANT | Authorization failed, invalid merchant. |
829 | ResultCode.DECLINED_RESTRICTION_DECLINED | Authorization failed, restriction declined. |
830 | ResultCode.DECLINED_WRONG_CURRENCY | Authorization failed, wrong currency. |
831 | ResultCode.DECLINED_AUTOREVERSAL_PENDING | Authorization failed, autoreversal pending. |
832 | ResultCode.DECLINED_WRONG_CARD_NUMBER | Authorization failed, wrong card number. |
833 | ResultCode.DECLINED_WRONG_CARD_EXPIRY_DATE | Authorization failed, wrong card expiry date. |
834 | ResultCode.DECLINED_RETRY_TEMPORARY_UNAVAILABLE | Authorization failed, retry, temporary unavailable. |
835 | ResultCode.DECLINED_SERVICE_NOT_ALLOWED | Authorization failed, service not allowed. |
836 | ResultCode.DECLINED_CARDHOLDER_INFORMATION_ISSUE | Authorization failed, cardholder information issue. |
837 | ResultCode.DECLINED_REFERRAL_WRONG_AUTH_CODE | Authorization failed, wrong auth code. |
838 | ResultCode.DECLINED_REFERRAL_WRONG_AMOUNT | Authorization failed, wrong amount. |
839 | ResultCode.DECLINED_REFERRAL_OTHER_REASON | Authorization failed, referral generic. |
840 | ResultCode.DECLINED_CAPTURE_CARD_GENERIC | Capture card, generic. |
841 | ResultCode.DECLINED_CAPTURE_CARD_INFO_TO_CLIENT | Capture card, information to the client. |
842 | ResultCode.DECLINED_CAPTURE_CARD_ORDER_TO_CLIENT | Capture card, order to the client. |
843 | ResultCode.DECLINED_CAPTURE_CARD_TIMEOUT_REMOVING_CARD | Capture card, timeout removing card from terminal. |
844 | ResultCode.DECLINED_NOT_SUPPORTED | Authorization failed, not supported. |
Function-State-Matrix
Legend:
- B1-Retail
- B2-Petrol
- B3-Unattended
- B4-Advanced Retail
- B5-Banking
- B6-Dialog
- B8-Gastro
- B9-Hospitality
- B10-Value Added Services (VAS)
- B11-Austrian Use Cases
Function | State | Book(s) | ||||
---|---|---|---|---|---|---|
Disconnected | Connected | |||||
LoggedOut | LoggedIn | |||||
Closed | Opened | Dialog | ||||
Activate | - | - | o | o | - | B1 |
ActivateServiceMenu | - | - | o | - | - | B3 |
AdjustReservation | - | - | - | o | - | B9 |
AmtAdjustment | - | - | - | o | - | B3 |
ApplicationInformation | - | - | o | - | - | B1 |
AuthorizeCredit | - | - | - | o | - | B5 |
AuthorizeDeposit | - | - | - | o | - | B5 |
Balance | - | - | o | - | - | B1 |
BalanceInquiry | - | - | - | o | - | B4, B5 |
Cancel | - | o | o | o | o | B1 |
CancelReservation | - | - | - | o | - | B9 |
CashAdvance | - | - | - | o | - | B4 |
ChangeSettings | - | - | o | - | - | B1 |
CloseDialogMode | - | - | - | - | o | B6 |
CloseMaintenanceWindow | - | - | o | - | - | B3 |
CloseReader | - | - | - | o | - | B3 |
CollectPoints | - | - | - | o | - | B10 |
Combined | - | - | - | o | - | B5 |
Commit | - | - | - | o | - | B1 |
CounterRequest | - | - | o | o | - | B1 |
Credit | - | - | - | o | - | B1 |
DccRates | - | - | o | - | - | B1 |
Deactivate | - | - | o | o | - | B1 |
EjectCard | - | - | - | o | - | B3 |
FeatureRequest | - | o | o | - | - | B1 |
FinalizePurchase | - | - | - | o | - | B2 |
FinishCeckout | - | - | - | o | - | B10 |
Giro | - | - | - | o | - | B5 |
HardwareInformation | - | - | o | - | - | B1 |
HoldCommit | - | - | - | o | - | B3 |
InitTransaction | - | - | - | o | - | B2 |
KeepAlive | - | - | o | o | o | B1 |
LicenseChanged | - | - | o | - | - | B1 |
LoadVoucher | - | - | - | o | - | B10 |
Login | - | o | o | - | - | B1 |
Logout | - | o | o | - | - | B1 |
LoyaltyData | - | - | - | o | - | B10 |
OpenDialogMode | - | - | - | o | - | B6 |
OpenMaintenanceWindow | - | - | o | - | - | B3 |
OpenReader | - | - | - | o | - | B3 |
PreAuthorization | - | - | - | o | - | B2 |
ProvideLoyaltyBasket | - | - | - | o | - | B10 |
Purchase | - | - | - | o | - | B1 |
PurchaseForcedAcceptance | - | - | - | o | - | B4 |
PurchaseMailOrdered | - | - | - | o | - | B4 |
PurchasePhoneAuthorized | - | - | - | o | - | B4 |
PurchasePhoneOrdered | - | - | - | o | - | B4 |
PurchaseReservation | - | - | - | o | - | B9 |
PurchaseReservationPhoneAuthorized | - | - | - | o | - | B9 |
PurchaseWithCashback | - | - | - | o | - | B4 |
Reboot | - | - | o | - | - | B1 |
ReceiptRequest | - | - | o | o | - | B1 |
Reconciliation | - | - | o | o | - | B1 |
Reconfig | - | - | o | - | - | B1 |
Reservation | - | - | - | o | - | B9 |
Reversal | - | - | - | o | - | B1 |
Rollback | - | - | - | o | - | B1 |
SendCardCommand | - | - | - | - | o | B6 |
ShowDialog | - | - | - | - | o | B6 |
ShowSignatureCapture | - | - | - | - | o | B6 |
SoftwareUpdate | - | - | o | - | - | B1 |
StartCheckout | - | - | - | o | - | B10 |
SystemInformation | - | - | o | - | - | B1 |
TerminalStatus | - | o | o | o | o | B1 |
VasInfo | - | - | - | o | - | B10 |