Pular para o conteúdo principal
Versão: 2.9.x

Estornos

Para realizar um estorno utilize o método startTransaction(), passando os parâmetros da transação, os parâmetros de autenticação e o contexto que o iniciou.

Os parâmetros de transação necessários para que o estorno seja efetuado são os seguintes:

ParâmetroTipoDescrição
amountBigDecimalO valor da transação que está sendo estornada
paymentTypePaymentTypeO tipo de pagamento da transação que está sendo estornada
refundBooleanSempre true
refundCodeStringUsado para realizar reembolsos, retornado no TransactionResponse da transação de pagamento que se deseja estornar
nsuHostStringDEPRECIADO: Identificador da transação, retornado na resposta da transação de pagamento que se deseja estornar
transactionTimestampLongDEPRECIADO: Timestamp exato de quando a transação ocorreu, retornado na resposta da transação de pagamento que se deseja estornar

OBS: Campos riscados estão depreciados e não devem ser usados. Em futuras atualizações, eles são removidos.


TransactionActivity.kt
class TransactionActivity() : ComponentActivity {
val transactionParams = TransactionParams(
amount = BigDecimal("1234"), // R$ 12,34
paymentType = PaymentType.CREDIT,
refund = true,
refundCode = "<Insira_seu_refundCode>"
// ou
// nsuHost = "<Insira_seu_nsuHost>",
// transactionTimestamp = <Insira_seu_timestamp>
)

val authParams = AuthParams(token = "<Insira_seu_token>")

//...

fun doRefund() {
lifecycleScope.launch {
val transactionResponse = paymentProvider.startTransaction(this@MainActivity, transactionParams, authParams)
if (transactionResponse.status == OperationStatus.SUCCESS) {
Log.d("Transação", "Estorno realizado com sucesso!")
Log.d("Transação", "Comprovante: ${transactionResponse.customerReceipt}!")
} else {
Log.e("Transação", "Erro: ${transactionResponse.status} - ${transactionResponse.message}")
}
}
}
}