Terminal SDK Models
classes reference
NearPay services compatible with devices running Android API 26 or higher, otherwise UNSUPPORTED_SDK_VERSION will returned
Purchase Response
@Serializable
data class PurchaseResponse(
@SerialName("amount")
val amount: String? = null,
@SerialName("completedAt")
val completedAt: String? = null,
@SerialName("createdAt")
val createdAt: String? = null,
@SerialName("intentId")
val intentId: String,
@SerialName("pinRequired")
val pinRequired: Boolean,
@SerialName("receiptsUrl")
val receiptsUrl: String? = null,
@SerialName("referenceId")
val referenceId: String? = null,
@SerialName("status")
val status: String? = null,
@SerialName("type")
val type: String,
@SerialName("transactions")
val transactions: List<TransactionResponse>,
)
Transaction Response
@Serializable
data class TransactionResponse(
@SerialName("id")
val id: String,
@SerialName("status")
val status: Status? = null,
@SerialName("amount")
val amount: String? = null,
@SerialName("currency")
val currency: Currency? = null,
@SerialName("createdAt")
val createdAt: String? = null,
@SerialName("completedAt")
val completedAt: String? = null,
@SerialName("canceledAt")
val canceledAt: String? = null,
@SerialName("cancelReason")
val cancelReason: String? = null,
@SerialName("referenceId")
val referenceId: String? = null,
@SerialName("orderId")
val orderId: String? = null,
@SerialName("pinRequired")
val pinRequired: Boolean? = null,
@SerialName("card")
val card: Card,
@SerialName("events")
val events: List<Event>,
@SerialName("amountOther")
val amountOther: String? = null,
@SerialName("performance")
val performance: List<Performance> = emptyList()
)
@Serializable
data class Card(
@SerialName("pan")
val pan: String? = null,
@SerialName("exp")
val exp: String? = null
)
@Serializable
data class Event(
@SerialName("rrn")
val rrn: String,
@SerialName("stan")
val stan: String? = null,
@SerialName("type")
val type: String? = null,
@SerialName("status")
val status: Status,
@SerialName("receipt")
val receipt: Receipt
)
@Serializable
data class Receipt(
@SerialName("type")
val type: String,
@SerialName("id")
val id: String,
@SerialName("data")
val data: String
)
@Serializable
data class ReceiptData(
@SerialName("id")
val id: String,
@SerialName("merchant")
val merchant: Merchant,
@SerialName("cardScheme")
val cardScheme: CardScheme,
@SerialName("cardSchemeSponsor")
val cardSchemeSponsor: String,
@SerialName("startDate")
val startDate: String,
@SerialName("startTime")
val startTime: String,
@SerialName("endDate")
val endDate: String,
@SerialName("endTime")
val endTime: String,
@SerialName("terminalId")
val terminalId: String,
@SerialName("systemTraceAuditNumber")
val systemTraceAuditNumber: String,
@SerialName("posSoftwareVersion")
val posSoftwareVersion: String,
@SerialName("retrievalReferenceNumber")
val retrievalReferenceNumber: String,
@SerialName("transactionType")
val transactionType: TransactionType,
@SerialName("isApproved")
val isApproved: Boolean,
@SerialName("isRefunded")
val isRefunded: Boolean,
@SerialName("isReversed")
val isReversed: Boolean,
@SerialName("approvalCode")
val approvalCode: ApprovalCode? = null,
@SerialName("actionCode")
val actionCode: String,
@SerialName("statusMessage")
val statusMessage: Currency,
@SerialName("pan")
val pan: String,
@SerialName("cardExpiration")
val cardExpiration: String,
@SerialName("amountAuthorized")
val amountAuthorized: LabelField<String>,
@SerialName("amountOther")
val amountOther: LabelField<String>,
@SerialName("currency")
val currency: Currency,
@SerialName("verificationMethod")
val verificationMethod: Currency,
@SerialName("receiptLineOne")
val receiptLineOne: Currency,
@SerialName("receiptLineTwo")
val receiptLineTwo: Currency,
@SerialName("thanksMessage")
val thanksMessage: Currency,
@SerialName("saveReceiptMessage")
val saveReceiptMessage: Currency,
@SerialName("entryMode")
val entryMode: String,
@SerialName("applicationIdentifier")
val applicationIdentifier: String,
@SerialName("terminalVerificationResult")
val terminalVerificationResult: String,
@SerialName("transactionStateInformation")
val transactionStateInformation: String,
@SerialName("cardholderVerificationResult")
val cardholderVerificationResult: String,
@SerialName("cryptogramInformationData")
val cryptogramInformationData: String,
@SerialName("applicationCryptogram")
val applicationCryptogram: String,
@SerialName("kernelId")
val kernelId: String,
@SerialName("paymentAccountReference")
val paymentAccountReference: String? = null,
@SerialName("panSuffix")
val panSuffix: String? = null,
@SerialName("customerReferenceNumber")
val customerReferenceNumber: String? = null,
@SerialName("qrCode")
val qrCode: String,
@SerialName("transactionUuid")
val transactionUuid: String,
@SerialName("vasData")
val vasData: String? = null
)
@Serializable
enum class Status {
@SerialName("APPROVED") APPROVED,
@SerialName("DECLINED") DECLINED
}
@Serializable
data class Terminal(
@SerialName("terminalId")
val terminalId: String,
@SerialName("bankId")
val bankId: String,
@SerialName("merchantId")
val merchantId: String,
@SerialName("vendorId")
val vendorId: String,
@SerialName("merchantCategoryCode")
val merchantCategoryCode: String
)
Reverse Response
@Serializable
data class ReverseResponse(
@SerialName("amount")
val amount: String? = null,
@SerialName("completedAt")
val completedAt: String? = null,
@SerialName("createdAt")
val createdAt: String? = null,
@SerialName("intentId")
val intentId: String,
@SerialName("pinRequired")
val pinRequired: Boolean,
@SerialName("receiptsUrl")
val receiptsUrl: String? = null,
@SerialName("referenceId")
val referenceId: String? = null,
@SerialName("status")
val status: String? = null,
@SerialName("type")
val type: String,
@SerialName("transactions")
val transactions: List<TransactionResponse>,
)
Refund Response
@Serializable
data class RefundResponse(
@SerialName("amount")
val amount: String? = null,
@SerialName("completedAt")
val completedAt: String? = null,
@SerialName("createdAt")
val createdAt: String? = null,
@SerialName("intentId")
val intentId: String,
@SerialName("pinRequired")
val pinRequired: Boolean,
@SerialName("receiptsUrl")
val receiptsUrl: String? = null,
@SerialName("referenceId")
val referenceId: String? = null,
@SerialName("status")
val status: String? = null,
@SerialName("type")
val type: String,
@SerialName("transactions")
val transactions: List<TransactionResponse>,
)
Card Scheme
ID | Network |
---|---|
MC | Mastercard - credit |
DM | Maestro |
P1 | Mada |
VC | Visa |
UP | Union Pay |
DC | Discover |
JC | JCB |
AX | American Express |
GN | GCCNET |
Transaction Type
ID | Type |
---|---|
00 | PURCHASE |
20 | REFUND |
Receipt Data
@Serializable
data class ReceiptData(
@SerialName("id")
val id: String,
@SerialName("merchant")
val merchant: Merchant,
@SerialName("cardScheme")
val cardScheme: CardScheme,
@SerialName("cardSchemeSponsor")
val cardSchemeSponsor: String,
@SerialName("startDate")
val startDate: String,
@SerialName("startTime")
val startTime: String,
@SerialName("endDate")
val endDate: String,
@SerialName("endTime")
val endTime: String,
@SerialName("terminalId")
val terminalId: String,
@SerialName("systemTraceAuditNumber")
val systemTraceAuditNumber: String,
@SerialName("posSoftwareVersion")
val posSoftwareVersion: String,
@SerialName("retrievalReferenceNumber")
val retrievalReferenceNumber: String,
@SerialName("transactionType")
val transactionType: TransactionType,
@SerialName("isApproved")
val isApproved: Boolean,
@SerialName("isRefunded")
val isRefunded: Boolean,
@SerialName("isReversed")
val isReversed: Boolean,
@SerialName("approvalCode")
val approvalCode: ApprovalCode? = null,
@SerialName("actionCode")
val actionCode: String,
@SerialName("statusMessage")
val statusMessage: Currency,
@SerialName("pan")
val pan: String,
@SerialName("cardExpiration")
val cardExpiration: String,
@SerialName("amountAuthorized")
val amountAuthorized: LabelField<String>,
@SerialName("amountOther")
val amountOther: LabelField<String>,
@SerialName("currency")
val currency: Currency,
@SerialName("verificationMethod")
val verificationMethod: Currency,
@SerialName("receiptLineOne")
val receiptLineOne: Currency,
@SerialName("receiptLineTwo")
val receiptLineTwo: Currency,
@SerialName("thanksMessage")
val thanksMessage: Currency,
@SerialName("saveReceiptMessage")
val saveReceiptMessage: Currency,
@SerialName("entryMode")
val entryMode: String,
@SerialName("applicationIdentifier")
val applicationIdentifier: String,
@SerialName("terminalVerificationResult")
val terminalVerificationResult: String,
@SerialName("transactionStateInformation")
val transactionStateInformation: String,
@SerialName("cardholderVerificationResult")
val cardholderVerificationResult: String,
@SerialName("cryptogramInformationData")
val cryptogramInformationData: String,
@SerialName("applicationCryptogram")
val applicationCryptogram: String,
@SerialName("kernelId")
val kernelId: String,
@SerialName("paymentAccountReference")
val paymentAccountReference: String? = null,
@SerialName("panSuffix")
val panSuffix: String? = null,
@SerialName("customerReferenceNumber")
val customerReferenceNumber: String? = null,
@SerialName("qrCode")
val qrCode: String,
@SerialName("transactionUuid")
val transactionUuid: String,
@SerialName("vasData")
val vasData: String? = null
)
Reconciliation Receipts Response
@Serializable
data class ReconciliationReceiptsResponse(
@SerialName("receipt")
val receipt: ReconciliationReceipt? = null,
@SerialName("reconciliationId")
val reconciliationId: String? = null
)
@Serializable
data class ReconciliationReceipt(
@SerialName("id")
val id: String,
@SerialName("standard")
val standard: String,
@SerialName("operationType")
val operationType: String,
@SerialName("data")
val data: ReconciliationReceiptData? = null,
@SerialName("reconciliation")
val reconciliation: Reconciliation,
@SerialName("createdAt")
val createdAt: String,
@SerialName("updatedAt")
val updatedAt: String
)
@Serializable
data class ReconciliationReceiptData(
@SerialName("date")
val date: String,
@SerialName("hour")
val hour: String,
@SerialName("bankName")
val bankName: String,
@SerialName("grandTotal")
val grandTotal: String,
@SerialName("documentRef")
val documentRef: String,
@SerialName("businessName")
val businessName: String,
@SerialName("serialNumber")
val serialNumber: String,
@SerialName("businessNumber")
val businessNumber: String,
@SerialName("terminalNumber")
val terminalNumber: String,
@SerialName("endOfDaySummary")
val endOfDaySummary: List<EndOfDaySummaryItem>,
@SerialName("businessAddressAndTelephone")
val businessAddressAndTelephone: String
)
@Serializable
data class Reconciliation(
@SerialName("id")
val id: String
)
@Serializable
data class EndOfDaySummaryItem(
@SerialName("type")
val type: String? = null,
@SerialName("count")
val count: String? = null,
@SerialName("amount")
val amount: String? = null
)
Reconcile List Response
@Serializable
data class ReconciliationListResponse(
@SerialName("data")
val data: List<ReconciliationItem>,
@SerialName("pagination")
val pagination: Pagination
)
@Serializable
data class ReconciliationItem(
@SerialName("id")
val id: String,
@SerialName("date")
val date: String,
@SerialName("time")
val time: String,
@SerialName("startDate")
val startDate: String,
@SerialName("startTime")
val startTime: String,
@SerialName("isBalanced")
val isBalanced: LabelValue<Boolean>,
@SerialName("total")
val total: String,
@SerialName("currency")
val currency: Currency
)
@Serializable
data class Pagination(
@SerialName("total_pages")
val total_pages: Int? = null,
@SerialName("current_page")
val current_page: Int,
@SerialName("total_data")
val total_data: Int? = null
)
Reconciliation Response
@Serializable
data class ReconciliationResponse(
@SerialName("id")
val id: String,
@SerialName("date")
val date: String,
@SerialName("time")
val time: String,
@SerialName("startDate")
val startDate: String,
@SerialName("startTime")
val startTime: String,
@SerialName("endDate")
val endDate: String,
@SerialName("endTime")
val endTime: String,
@SerialName("merchant")
val merchant: Merchant,
@SerialName("cardAcceptorTerminalId")
val cardAcceptorTerminalId: String,
@SerialName("posSoftwareVersionNumber")
val posSoftwareVersionNumber: String,
@SerialName("cardSchemeSponsorId")
val cardSchemeSponsorId: String,
@SerialName("isBalanced")
val isBalanced: LabelValue<Boolean>,
@SerialName("schemes")
val schemes: List<Scheme>,
@SerialName("details")
val details: Details,
@SerialName("currency")
val currency: LanguageContent,
@SerialName("systemTraceAuditNumber")
val systemTraceAuditNumber: String
)
@Serializable
data class Details(
@SerialName("total")
val total: DetailItem,
@SerialName("purchase")
val purchase: DetailItem,
@SerialName("purchaseReversal")
val purchaseReversal: DetailItem,
@SerialName("refund")
val refund: DetailItem,
@SerialName("refundReversal")
val refundReversal: DetailItem
)
@Serializable
data class DetailItem(
@SerialName("label")
val label: LanguageContent,
@SerialName("total")
val total: String,
@SerialName("count")
val count: Int
)
@Serializable
data class LanguageContent(
@SerialName("arabic")
val arabic: String? = null,
@SerialName("english")
val english: String? = null,
@SerialName("turkish")
val turkish: String? = null
)
Transactions Response
@Serializable
data class TransactionsResponse(
@SerialName("data")
val data: List<Transaction>,
@SerialName("pagination")
val pagination: Pagination
) {
@Serializable
data class Transaction(
@SerialName("uuid")
val uuid: String,
@SerialName("scheme")
val scheme: String,
@SerialName("customerReferenceNumber")
val customerReferenceNumber: String? = null,
@SerialName("pan")
val pan: String? = null,
@SerialName("amountAuthorized")
val amountAuthorized: String,
@SerialName("transactionType")
val transactionType: String,
@SerialName("currency")
val currency: Currency,
@SerialName("isApproved")
val isApproved: Boolean,
@SerialName("isReversed")
val isReversed: Boolean,
@SerialName("isReconciled")
val isReconciled: Boolean,
@SerialName("startDate")
val startDate: String,
@SerialName("startTime")
val startTime: String,
@SerialName("performance")
val performance: List<Performance>
)
}
Receipts Response
@Serializable
data class ReceiptsResponse(
@SerialName("receipts")
val receipts: List<Receipt>
) {
@Serializable
data class Receipt(
@SerialName("id")
val id: String,
@SerialName("operationType")
val operationType: String,
@SerialName("standard")
val standard: String,
@SerialName("data")
val data: String,
@SerialName("transactionUuid")
val transactionUuid: String
) {
@Serializable
data class ReceiptData(
@SerialName("id")
val id: String,
@SerialName("merchant")
val merchant: Merchant,
@SerialName("type")
val type: String,
@SerialName("startDate")
val startDate: String,
@SerialName("startTime")
val startTime: String,
@SerialName("endDate")
val endDate: String,
@SerialName("endTime")
val endTime: String,
@SerialName("cardSchemeSponsor")
val cardSchemeSponsor: String,
@SerialName("terminalId")
val terminalId: String,
@SerialName("systemTraceAuditNumber")
val systemTraceAuditNumber: String,
@SerialName("posSoftwareVersion")
val posSoftwareVersion: String,
@SerialName("retrievalReferenceNumber")
val retrievalReferenceNumber: String,
@SerialName("cardScheme")
val cardScheme: CardScheme,
@SerialName("transactionType")
val transactionType: TransactionType,
@SerialName("pan")
val pan: String,
@SerialName("cardExpiration")
val cardExpiration: String,
@SerialName("amountAuthorized")
val amountAuthorized: LabelField<String>,
@SerialName("amountOther")
val amountOther: LabelField<String>,
@SerialName("currency")
val currency: Currency,
@SerialName("statusMessage")
val statusMessage: Currency,
@SerialName("isApproved")
val isApproved: Boolean,
@SerialName("isRefunded")
val isRefunded: Boolean,
@SerialName("isReversed")
val isReversed: Boolean,
@SerialName("approvalCode")
val approvalCode: ApprovalCode? = null,
@SerialName("verificationMethod")
val verificationMethod: Currency,
@SerialName("receiptLineOne")
val receiptLineOne: Currency,
@SerialName("receiptLineTwo")
val receiptLineTwo: Currency,
@SerialName("thanksMessage")
val thanksMessage: Currency,
@SerialName("saveReceiptMessage")
val saveReceiptMessage: Currency,
@SerialName("entryMode")
val entryMode: String,
@SerialName("actionCode")
val actionCode: String,
@SerialName("applicationIdentifier")
val applicationIdentifier: String,
@SerialName("terminalVerificationResult")
val terminalVerificationResult: String,
@SerialName("transactionStateInformation")
val transactionStateInformation: String,
@SerialName("cardholderVerificationResult")
val cardholderVerificationResult: String,
@SerialName("cryptogramInformationData")
val cryptogramInformationData: String,
@SerialName("applicationCryptogram")
val applicationCryptogram: String,
@SerialName("kernelId")
val kernelId: String,
@SerialName("paymentAccountReference")
val paymentAccountReference: String? = null,
@SerialName("panSuffix")
val panSuffix: String? = null,
@SerialName("qrCode")
val qrCode: String,
@SerialName("transactionUuid")
val transactionUuid: String
)
}
}
Transaction Response Turkey
@Serializable
data class TransactionResponseTurkey(
@SerialName("id")
val id: String,
@SerialName("performance")
val performance: List<PerformanceDto>? = null,
@SerialName("cancelReason")
val cancelReason: String? = null,
@SerialName("status")
val status: String? = null,
@SerialName("currency")
val currency: Currency? = null,
@SerialName("createdAt")
val createdAt: String? = null,
@SerialName("completedAt")
val completedAt: String? = null,
@SerialName("referenceId")
val referenceId: String? = null,
@SerialName("orderId")
val orderId: String? = null,
@SerialName("pinRequired")
val pinRequired: Boolean? = null,
@SerialName("card")
val card: Map<String, JsonElement> = emptyMap(),
@SerialName("events")
val events: List<Event>,
@SerialName("amountOther")
val amountOther: String? = null
) {
@Serializable
data class Event(
@SerialName("receipt")
val receipt: Receipt,
@SerialName("rrn")
val rrn: String,
@SerialName("status")
val status: String? = null
) {
@Serializable
data class Receipt(
@SerialName("standard")
val standard: String,
@SerialName("id")
val id: String,
@SerialName("data")
val data: String
)
@Serializable
data class LocalizedText(
@SerialName("english")
val english: String,
@SerialName("turkish")
val turkish: String
)
@Serializable
data class Merchant(
@SerialName("id")
val id: String,
@SerialName("name")
val name: String,
@SerialName("address")
val address: String
)
@Serializable
data class AmountAuthorized(
@SerialName("label")
val label: LocalizedText,
@SerialName("value")
val value: String
)
@Serializable
data class ReceiptDataTurkey(
@SerialName("id")
val id: String? = null,
@SerialName("pan")
val pan: String? = null,
@SerialName("tid")
val tid: String? = null,
@SerialName("type")
val type: String? = null,
@SerialName("date")
val date: String? = null,
@SerialName("time")
val time: String? = null,
@SerialName("cardType")
val cardType: String? = null,
@SerialName("currency")
val currency: Currency? = null,
@SerialName("merchant")
val merchant: Merchant? = null,
@SerialName("pinUsed")
val pinUsed: LocalizedText? = null,
@SerialName("panSuffix")
val panSuffix: String? = null,
@SerialName("acquirerId")
val acquirerId: String? = null,
@SerialName("actionCode")
val actionCode: String? = null,
@SerialName("cardScheme")
val cardScheme: String? = null,
@SerialName("cardDomain")
val cardDomain: String? = null,
@SerialName("isApproved")
val isApproved: Boolean? = null,
@SerialName("batchNumber")
val batchNumber: String? = null,
@SerialName("acquirerName")
val acquirerName: String? = null,
@SerialName("approvalCode")
val approvalCode: String? = null,
@SerialName("serialNumber")
val serialNumber: String? = null,
@SerialName("bankReference")
val bankReference: String? = null,
@SerialName("deviceDetails")
val deviceDetails: String? = null,
@SerialName("statusMessage")
val statusMessage: LocalizedText? = null,
@SerialName("cardExpiration")
val cardExpiration: String? = null,
@SerialName("transactionCode")
val transactionCode: String? = null,
@SerialName("transactionType")
val transactionType: TransactionType? = null,
@SerialName("transactionUuid")
val transactionUuid: String? = null,
@SerialName("amountAuthorized")
val amountAuthorized: AmountAuthorized? = null,
@SerialName("transactionNumber")
val transactionNumber: String? = null,
@SerialName("actionCodeMessage")
val actionCodeMessage: LocalizedText? = null,
@SerialName("cardSchemeSponsor")
val cardSchemeSponsor: String? = null,
@SerialName("transactionDetails")
val transactionDetails: LocalizedText? = null,
@SerialName("applicationCryptogram")
val applicationCryptogram: String? = null,
@SerialName("applicationIdentifier")
val applicationIdentifier: String? = null,
@SerialName("paymentAccountReference")
val paymentAccountReference: String? = null,
@SerialName("systemTraceAuditNumber")
val systemTraceAuditNumber: String? = null,
@SerialName("retrievalReferenceNumber")
val retrievalReferenceNumber: String? = null,
@SerialName("cryptogramInformationData")
val cryptogramInformationData: String? = null,
@SerialName("posSoftwareVersionNumber")
val posSoftwareVersionNumber: String? = null,
@SerialName("qrCode")
val qrCode: String? = null,
@SerialName("transactionStateInformation")
val transactionStateInformation: String? = null,
@SerialName("cardholderVerificationResult")
val cardholderVerificationResult: String? = null
)
@Serializable
data class TransactionType(
@SerialName("id")
val id: String,
@SerialName("name")
val name: LocalizedText
)
}
}
Terminal
@Serializable
data class Terminal(
@SerialName("networkParams")
val networkParams: NetworkParams,
@SerialName("terminalSharedPreferences")
val terminalSharedPreferences: TerminalSharedPreferences,
@SerialName("activity")
val activity: Activity,
@SerialName("terminalUUID")
val terminalUUID: String,
@SerialName("readerCoreUI")
val readerCoreUI: ReaderCoreUI,
@SerialName("tid")
val tid: String,
@SerialName("name")
val name: String? = null,
@SerialName("paymentText")
val paymentText: PaymentText
)
User
@Serializable
data class User(
@SerialName("name")
val name: String? = null,
@SerialName("email")
val email: String? = null,
@SerialName("mobile")
val mobile: String? = null,
@SerialName("userUUID")
var userUUID: String? = null
)
Void Response
@Serializable
data class VoidResponse(
@SerialName("id")
val id: String,
@SerialName("amountOther")
val amountOther: String? = null,
@SerialName("currency")
val currency: Currency,
@SerialName("createdAt")
val createdAt: String? = null,
@SerialName("completedAt")
val completedAt: String? = null,
@SerialName("pinRequired")
val pinRequired: Boolean,
@SerialName("performance")
val performance: List<PerformanceDto>,
@SerialName("card")
val card: CardDto? = null,
@SerialName("events")
val events: List<CaptureEventDto>
)
Authorize Response
@Serializable
data class AuthorizeResponse(
@SerialName("amount")
val amount: String? = null,
@SerialName("completedAt")
val completedAt: String? = null,
@SerialName("createdAt")
val createdAt: String? = null,
@SerialName("intentId")
val intentId: String,
@SerialName("pinRequired")
val pinRequired: Boolean,
@SerialName("receiptsUrl")
val receiptsUrl: String? = null,
@SerialName("referenceId")
val referenceId: String? = null,
@SerialName("status")
val status: String? = null,
@SerialName("type")
val type: String,
@SerialName("transactions")
val transactions: List<AuthorizeReceipt>,
)
Authorize Receipt
@Serializable
data class AuthorizeReceipt(
@SerialName("id")
val id: String,
@SerialName("amountOther")
val amountOther: String? = null,
@SerialName("currency")
val currency: Currency,
@SerialName("createdAt")
val createdAt: String? = null,
@SerialName("completedAt")
val completedAt: String? = null,
@SerialName("pinRequired")
val pinRequired: Boolean,
@SerialName("performance")
val performance: List<PerformanceDto>,
@SerialName("card")
val card: CardDto? = null,
@SerialName("events")
val events: List<AuthEventDto>
)
Capture Response
@Serializable
data class CaptureResponse(
@SerialName("id")
val id: String,
@SerialName("amountOther")
val amountOther: String? = null,
@SerialName("currency")
val currency: Currency,
@SerialName("createdAt")
val createdAt: String? = null,
@SerialName("completedAt")
val completedAt: String? = null,
@SerialName("pinRequired")
val pinRequired: Boolean,
@SerialName("performance")
val performance: List<PerformanceDto>,
@SerialName("card")
val card: CardDto? = null,
@SerialName("events")
val events: List<CaptureEventDto>
)
Increment Response
@Serializable
data class IncrementResponse(
@SerialName("id")
val id: String,
@SerialName("amountOther")
val amountOther: String? = null,
@SerialName("currency")
val currency: Currency,
@SerialName("createdAt")
val createdAt: String? = null,
@SerialName("completedAt")
val completedAt: String? = null,
@SerialName("pinRequired")
val pinRequired: Boolean,
@SerialName("performance")
val performance: List<PerformanceDto>,
@SerialName("card")
val card: CardDto? = null,
@SerialName("events")
val events: List<IncrementEventDto>
)
Otp Response
@Serializable
data class OtpResponse(
@SerialName("message")
val message: String? = null
)
Canceled State
@Serializable
data class CanceledState(
@SerialName("canceled")
val canceled: Boolean
)
Permission Status
@Serializable
data class PermissionStatus(
@SerialName("permission")
val permission: String,
@SerialName("isGranted")
val isGranted: Boolean
)
Terminal Connection
@Serializable
@Parcelize
data class TerminalConnection(
@SerialName("terminalConnectionData")
val terminalConnectionData: TerminalConnectionData,
@SerialName("serverSwitcher")
val serverSwitcher: ServerSwitcher<PosServiceApi>
) : Parcelable {
@Serializable
@Parcelize
data class TerminalConnectionData(
@SerialName("name")
val name: String? = null,
@SerialName("tid")
val tid: String,
@SerialName("uuid")
val uuid: String = "",
@SerialName("busy")
val busy: Boolean = false,
@SerialName("mode")
val mode: String,
@SerialName("isLocked")
val isLocked: Boolean = false,
@SerialName("hasProfile")
val hasProfile: Boolean = false,
@SerialName("userUUID")
val userUUID: String
) : Parcelable
}
Send Transaction Failure
Serializable
sealed class SendTransactionFailure {
@Serializable
data class TransactionFailure(
@SerialName("message")
val message: String
) : SendTransactionFailure()
}
Refund Transaction Failure
@Serializable
sealed class RefundTransactionFailure {
@Serializable
data class GeneralFailure(
@SerialName("message")
val message: String
) : RefundTransactionFailure()
}
Authorize Failure
@Serializable
sealed class AuthorizeFailure {
@Serializable
data class Failure(
@SerialName("message")
val message: String
) : AuthorizeFailure()
}
Get Transaction Failure
@Serializable
sealed class GetTransactionFailure {
@Serializable
data class GeneralFailure(
@SerialName("message")
val message: String
) : GetTransactionFailure()
}
Get Transactions List Failure
@Serializable
sealed class GetTransactionsListFailure {
@Serializable
data class GeneralFailure(
@SerialName("message")
val message: String
) : GetTransactionsListFailure()
}
Increment Authorization Failure
@Serializable
sealed class IncrementAuthorizationFailure {
@Serializable
data class Failure(
@SerialName("message")
val message: String? = null
) : IncrementAuthorizationFailure()
}
Get Terminals Failure
@Serializable
sealed class GetTerminalsFailure {
@Serializable
data class FetchingFailure(
@SerialName("message")
val message: String? = null
) : GetTerminalsFailure()
}
OTP Email Failure
@Serializable
sealed class OTPEmailFailure {
@Serializable
data class AuthenticationFailure(
@SerialName("message")
val message: String? = null
) : OTPEmailFailure()
}
OTP Mobile Failure
@Serializable
sealed class OTPMobileFailure {
@Serializable
data class AuthenticationFailure(
@SerialName("message")
val message: String? = null
) : OTPMobileFailure()
}
Verify Email Failure
@Serializable
sealed class VerifyEmailFailure {
@Serializable
data class GeneralFailure(
@SerialName("message")
val message: String? = null
) : VerifyEmailFailure()
}
Verify Mobile Failure
@Serializable
sealed class VerifyMobileFailure {
@Serializable
data class VerificationFailure(
@SerialName("message")
val message: String? = null
) : VerifyMobileFailure()
}
JWT Login Failure
@Serializable
sealed class JWTLoginFailure {
@Serializable
data class LoginFailure(
@SerialName("message")
val message: String? = null
) : JWTLoginFailure()
}
Void Failure
@Serializable
sealed class VoidFailure {
@Serializable
data class Failure(
@SerialName("message")
val message: String? = null
) : VoidFailure()
}
Reverse Transaction Failure
@Serializable
sealed class ReverseTransactionFailure {
@Serializable
data class GeneralFailure(
@SerialName("message")
val message: String
) : ReverseTransactionFailure()
}
Reconcile Failure
@Serializable
sealed class ReconcileFailure {
@Serializable
data class GeneralFailure(
@SerialName("message")
val message: String
) : ReconcileFailure()
}
Get Reconciliation List Failure
@Serializable
sealed class GetReconciliationListFailure {
@Serializable
data class GeneralFailure(
@SerialName("message")
val message: String? = null
) : GetReconciliationListFailure()
}
Get Reconciliation Failure
@Serializable
sealed class GetReconciliationFailure {
@Serializable
data class GeneralFailure(
@SerialName("message")
val message: String? = null
) : GetReconciliationFailure()
}
Connect Terminal Failure
@Serializable
sealed class ConnectTerminalFailure {
@Serializable
data class Failure(
@SerialName("message")
val message: String? = null
) : ConnectTerminalFailure()
}
Capture Authorization Failure
@Serializable
sealed class CaptureAuthorizationFailure {
@Serializable
data class Failure(
@SerialName("message")
val message: String? = null
) : CaptureAuthorizationFailure()
}
Cancel Transaction Failure
@Serializable
sealed class CancelTransactionFailure {
@Serializable
data class GeneralFailure(
@SerialName("message")
val message: String
) : CancelTransactionFailure()
}