Pular para o conteúdo principal
Versão: 2.7.0

PaymentProvider

Visão geral

A interface PaymentProvider define os métodos que qualquer provedor de pagamento deve implementar.

interface PaymentProvider {
suspend fun print(context: Context, text: String): PrintResponse
suspend fun print(context: Context, bitmap: Bitmap, imageHeight: Int): PrintResponse

suspend fun startTransaction(
context: Context,
params: TransactionParams,
authParams: AuthParams,
style: ProviderStyle? = null
) : TransactionResponse

suspend fun startTransaction(
componentActivity: ComponentActivity,
params: TransactionParams,
authParams: AuthParams,
style: ProviderStyle? = null
) : TransactionResponse

suspend fun startTransaction(
fragment: Fragment,
params: TransactionParams,
authParams: AuthParams,
style: ProviderStyle? = null
) : TransactionResponse

suspend fun sendTrace(
context: Context,
authParams: AuthParams
): TransactionResponse
}
observação

Nem todos os provedores de pagamento suportam a implementação de impressão e/ou envio de trace.
Nestes casos, o chamado lançará uma exceção do tipo UnsupportedOperationException.

Funções

suspend fun print(context: Context, text: String): PrintResponse

Imprime uma string utilizando a impressora nativa do Smart POS.

Retorno

PrintResponse


suspend fun print(context: Context, bitmap: Bitmap, imageHeight: Int): PrintResponse

Imprime uma imagem utilizando a impressora nativa do Smart POS.

Retorno

PrintResponse


startTransaction()

suspend fun startTransaction(
context: Context,
params: TransactionParams,
authParams: AuthParams,
style: ProviderStyle? = null
): TransactionResponse

suspend fun startTransaction(
componentActivity: ComponentActivity,
params: TransactionParams,
authParams: AuthParams,
style: ProviderStyle? = null
): TransactionResponse

suspend fun startTransaction(
fragment: Fragment,
params: TransactionParams,
authParams: AuthParams,
style: ProviderStyle? = null
): TransactionResponse

Inicia uma transação de pagamento com os parâmetros fornecidos.

Retorno

TransactionResponse


SendTrace

suspend fun sendTrace(
context: Context,
authParams: AuthParams
): TransactionResponse

Realiza o envio de logs de Trace para a adquirente. Nem toda implementação de PaymentProvider suporta esta operação.