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 no Scope são os seguintes:
| Parâmetro | Tipo | Descrição |
|---|---|---|
amount | BigDecimal | O valor da transação que está sendo estornada |
paymentType | PaymentType | O tipo de pagamento da transação que está sendo estornada |
refund | Boolean | Sempre true |
nsuHost | String | Identificador da transação, retornado na resposta da transação de pagamento que se deseja estornar |
transactionTimestamp | Long | Timestamp exato de quando a transação ocorreu, retornado na resposta da transação de pagamento que se deseja estornar |
A chamada do estorno deve ser feita dentro de uma corrotina e no método
onCreatede uma activity ou fragment.
class TransactionActivity() : ComponentActivity {
val transactionParams = TransactionParams(
amount = BigDecimal("1234"), // R$ 12,34
paymentType = PaymentType.CREDIT,
refund = true,
nsuHost = "1234567890",
transactionTimestamp = 1234567890
)
val authParams = AuthParams(token = "<Insira_seu_token>")
//...
override fun onCreate() {
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}")
}
}
}
}