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âmetro | Tipo | Descrição |
|---|---|---|
amount | BigDecimal | Valor da transação em centavos. Ex: 1234 (R$12,34). |
paymentType | PaymentType | Tipo de pagamento. |
installmentType | InstallmentType | Tipo de parcelamento. |
installmentNumber | Int | Número de parcelas. |
refund | Boolean | Indica se a transação é um reembolso. |
refundCode | String? | Código de reembolso. Esse código é recebido no TransactionResponse e deve ser armazenado e passado nesse parâmetro para efetuar reembolsos. |
nsuHost | String? | DEPRECIADO: Identificador da transação no provedor de pagamentos. |
transactionTimestamp | Long? | 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ãonsuHostetransactionTimestampOUrefundCodesão obrigatórios. - Se
installmentType == ONE_TIME,installmentNumberdeve ser 1. - Se
installmentType == INSTALLMENTS,installmentNumberdeve ser maior que 1.
Se essas regras não forem seguidas, a classe lançará uma IllegalArgumentException.