Consolidado
Relatório consolidado
- Request que recupera um relatório consolidado por tipo de pagamento e bandeira do cartão, em um intervalo de tempo pré-definido.
Parâmetros
receiptType
-> Tipo de relatório, no caso do consolidado: ReceiptType.CONSOLIDATED_REPORTreportFilter
-> Filtro do relatório, utilizando a data class ReportFilter
data class ReportFilter(
val threshold: ReportThreshold? = null,
val fromDate: DateParameters? = null,
val fromTime: TimeParameters = TimeParameters(0, 0),
val toDate: DateParameters? = null,
val toTime: TimeParameters = TimeParameters(23, 59)
)
enum class ReportThreshold {
TODAY,
YESTERDAY,
DAY_BEFORE_YESTERDAY,
CUSTOM
}
data class DateParameters(
val day: Int,
val month: Int,
val year: Int
)
data class TimeParameters(
val hour: Int,
val minute: Int
)
Exemplo
val request = MPOSPlugin.createReportsRequestBuilder()
.receiptType(ReceiptType.CONSOLIDATED_REPORT)
.reportFilter(filter)
.callback(object: Callback<ReportResponse>() {
override fun onFail(error: Throwable) {
}
override fun onSuccess(response: ReportResponse) {
val data = response.reportData.consolidatedReportData
}
})
.build()
Zoop.post(request)
Retorno
data class ConsolidatedReportData(
val issueDate: String?,
val sellerName: String?,
val documentType: String?,
val document: String?,
val serialNumber: String?,
val fromDate: String?,
val toDate: String?,
val fromTime: String?,
val toTime: String?,
val transactionData: List<ConsolidatedReportTransactionData>?,
val summary: ConsolidatedReportSummary?
)
data class ConsolidatedReportTransactionData(
val brand: String?,
val status: String?,
val paymentType: Int?,
val totalValue: Int?,
val totalTransactions: Int?
)
data class ConsolidatedReportSummary(
val totalApproved: Int?,
val totalCanceled: Int?,
val totalTransactionsApproved: Int?,
val totalTransactionsCanceled: Int?
)
enum class Option(val code: Int) {
CREDIT(0),
DEBIT(1),
CREDIT_WITH_INSTALLMENTS(2),
VOUCHER(3),
PIX(4),
UNKNOWN(-1)
}