private fun printPaymeVoucher() {
val voucherElements = listOf(
PMPrintElement.Image(
content = BitmapFactory.decodeResource(
this.resources,
com.alignet.paymepossdk.R.drawable.payme_logo
),
width = 300,
height = 100,
align = PMPrintElement.Align.CENTER
),
PMPrintElement.Text(
"Payme Store",
align = PMPrintElement.Align.CENTER,
fontSize = 22,
isBold = true
),
PMPrintElement.Text(
"Av. Casimiro Ulloa 333",
align = PMPrintElement.Align.CENTER
),
PMPrintElement.Text(
"Lima Perú",
align = PMPrintElement.Align.CENTER
),
PMPrintElement.Line(
style = PMPrintElement.LineStyle.BLANK
),
PMPrintElement.Text(
"VENTA AUTORIZADA",
align = PMPrintElement.Align.CENTER,
fontSize = 18,
isBold = true,
isReverseText = true
),
PMPrintElement.Line(
style = PMPrintElement.LineStyle.BLANK
),
PMPrintElement.Text(
"S/. 100.00",
align = PMPrintElement.Align.CENTER,
fontSize = 38,
isBold = true
),
PMPrintElement.Text(
"Pago Exitoso",
align = PMPrintElement.Align.CENTER,
fontSize = 24
),
PMPrintElement.Line(
style = PMPrintElement.LineStyle.DASHED
),
PMPrintElement.MultiText(
items = listOf(
PMPrintElement.Text("Número de Pedido", width = 220),
PMPrintElement.Text(
"00000001",
width = 164,
align = PMPrintElement.Align.RIGHT,
isBold = true
)
)
),
PMPrintElement.MultiText(
items = listOf(
PMPrintElement.Text("Fecha", width = 100),
PMPrintElement.Text(
"25/08/2025 10:00:00",
width = 284,
align = PMPrintElement.Align.RIGHT,
isBold = true
)
)
),
PMPrintElement.MultiText(
items = listOf(
PMPrintElement.Text("Terminal", width = 100),
PMPrintElement.Text(
"0000001",
width = 284,
align = PMPrintElement.Align.RIGHT,
isBold = true
)
)
),
PMPrintElement.MultiText(
items = listOf(
PMPrintElement.Text("Cod Comercio", width = 150),
PMPrintElement.Text(
"2604000001",
width = 234,
align = PMPrintElement.Align.RIGHT,
isBold = true
)
)
),
PMPrintElement.MultiText(
items = listOf(
PMPrintElement.Text("Tarjeta", width = 100),
PMPrintElement.Text(
"**************1234",
width = 284,
align = PMPrintElement.Align.RIGHT,
isBold = true
)
)
),
PMPrintElement.MultiText(
items = listOf(
PMPrintElement.Text("Marca", width = 80),
PMPrintElement.Text(
"VISA CREDIT – CONTACTLESS",
width = 304,
align = PMPrintElement.Align.RIGHT,
isBold = true
)
)
),
PMPrintElement.MultiText(
items = listOf(
PMPrintElement.Text("TID", width = 50),
PMPrintElement.Text(
"0993203580049584",
width = 334,
align = PMPrintElement.Align.RIGHT,
isBold = true
)
)
),
PMPrintElement.MultiText(
items = listOf(
PMPrintElement.Text("Código de Autorización", width = 290),
PMPrintElement.Text(
"T28501",
width = 94,
align = PMPrintElement.Align.RIGHT,
isBold = true
)
)
),
PMPrintElement.Line(
style = PMPrintElement.LineStyle.SOLID
),
PMPrintElement.Text(
"NO REQUIERE FIRMA",
align = PMPrintElement.Align.CENTER
)
)
PaymeClient.startPrint(
this,
voucherElements,
listener = object : PaymePrintListener {
override fun onPrintSuccess() {
Toast.makeText(
this@MainActivity,
"Impresión finalizada",
Toast.LENGTH_LONG
).show()
}
override fun onPrintFail(
errorCode: String,
errorMessage: String
) {
Toast.makeText(
this@MainActivity,
"$errorCode - $errorMessage",
Toast.LENGTH_LONG
).show()
}
}
)
}