Método InitPayment

Método responsável por iniciar o transacional.

Para iniciar esse método basta seguir o exemplo abaixo:

val data: JourneyData = JourneyData(BigDecimal(10.0), PaymentMethodsEnum.CREDIT_SINGLE, 1)
val tapOnPhoneSdk = TapOnPhone.getInstance()
tapOnPhoneSdk.initPayment(
  context = this,
  logoImageRes = R.drawable.ic_exemple,
  initialData = data,
  config = config,
  onPaymentStart = { },
  onPaymentSuccess = { receiptPayment: PaymentTransaction? -> }, 
  onPaymentFailure = { errorsEnum: ErrorsPaymentEnum? -> },
  onNewSale = {},
  onEnd = {},
  merchantOrderId = "123456789012345"
data class PaymentTransaction(
     val amount: BigDecimal? = null,
     var applicationId: String? = null,
     val brand: String? = null,
     val cardFirstNumbers: String? = null,
     val cardLastDigits: String? = null,
     val currencyCode: String? = null,
     val date: String? = null,
     val rrn: String? = null,
     val time: String? = null,
     val transactionDate: String? = null,
     val transactionId: Int? = null,
     val transactionType: String? = null,
     var status: PaymentStatus? = null,
     var installment: Int? = null,
     var dynamicBankDataModel: DynamicBankData? = null
) : Parcelable

data class DynamicBankData(
    val paymentId: String? = null,
    var receiptInfoModel: ReceiptInfo? = null
): Parcelable

data class ReceiptInfo(
    val merchantName: String? = null,
    val nomeSocial: String? = null,
    val merchantAddress: String? = null,
    val merchantCity: String? = null,
    val merchantState: String? = null,
    val merchantCode: String? = null,
    val nsu: String? = null,
    val data: String? = null,
    val cardNumber: String? = null,
    val brand: String? = null,
    val transactionType: String? = null,
    val authorizationCode: String? = null,
    val value: String? = null,
    val installment: Int? = null,
    val interest: String? = null,
    val paymentDateTime: String? = null,
)

Descrição dos parâmetros:

CampoDescrição
contextcontext da aplicação.
logoImageResLogo da imagem que pretende colocar na tela transacional, onde solicita aproximação do cartão.
initialData (JorneyData)Dados de pagamento. Pode ser preenchido diretamente ou retornado pelo callback da jornada.
onPaymentStart()Esse evento será levantando quando for chamado o método initPayment.
onPaymentSuccess(PaymentTransactionReceiptData)Método chamado quando o pagamento é realizado com sucesso.
oPaymentFailure (ErrorsPaymentEnum)Método chamado quando ocorre um erro no pagamento.
configMesmo parâmetro obrigatório solicitado na função initialize, solicitamos novamente esse parâmetro para inicializar ou não o sdk,caso esteja initializado porém tenha expirado, iremos initializar novamente antes de iniciar o pagamento.
onNewSale

Método chamado ao tocar sobre botão nova venda que está na tela de comprovante.

Observação: Ao tocar sobre o botão nova venda, será emitido um evento e em seguida fecha o TapOnPhone.

onEndEsse evento será chamado ao finalizar a jornada de pagamento.
merchantOrderId

Identificador único da transação definido pelo integrador. Campo opcional, deve ser uma String contendo apenas números, com 1 a 15 dígitos e não pode ser duplicado. Essa informação é de total responsabilidade do integrador e sua duplicação pode gerar problemas no desfazimento de transações.

Observação: Caso enviado um valor no formato inválido, será recebido uma Exception. Consulte a seção Tratamento de Erros.


Did this page help you?