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

TransactionParams

Visão geral

Classe de dados que representa os parâmetros para solicitação de uma transação.

@Parcelize
data class TransactionParams(
@Serializable(with = BigDecimalSerializer::class)
val amount: BigDecimal,
val paymentType: PaymentType,
val installmentType: InstallmentType = InstallmentType.ONE_TIME,
val installmentNumber: Int = 1,

val refund: Boolean = false,
val refundCode: String? = null,

@Deprecated
val nsuHost: String? = null,
@Deprecated
val transactionTimestamp: Long? = null
) : Parcelable

Parâmetros

ParâmetroTipoDescrição
amountBigDecimalValor da transação em centavos. Ex: 1234 (R$12,34).
paymentTypePaymentTypeTipo de pagamento.
installmentTypeInstallmentTypeTipo de parcelamento.
installmentNumberIntNúmero de parcelas.
refundBooleanIndica se a transação é um reembolso.
refundCodeString?Código de reembolso. Esse código é recebido no TransactionResponse e deve ser armazenado e passado nesse parâmetro para efetuar reembolsos.
nsuHostString?DEPRECIADO: Identificador da transação no provedor de pagamentos.
transactionTimestampLong?DEPRECIADO: Horário de efetuação da operação (em milisegundos desde a época).

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

Regras e validações

  • Se refund == true, então nsuHost e transactionTimestamp OU refundCode são obrigatórios.
  • Se installmentType == ONE_TIME, installmentNumber deve ser 1.
  • Se installmentType == INSTALLMENTS, installmentNumber deve ser maior que 1.

Se essas regras não forem seguidas, a classe lançará uma IllegalArgumentException.