FILTER BY TAG

Incremental Authorization

Use this information to process an incremental authorization. An incremental authorization is used after an approved pre-authorization to increase the authorized amount before capture.
Follow these steps to process an incremental authorization.
  1. Create a
    TransactionParameters
    object and provide the required information for the payment.
  2. Retrieve the
    transactionIntent
    value from the
    mposUi
    object and use the
    startActivity
    method to initiate the transaction flow.
    val transactionParameters = TransactionParameters.Builder()              .incrementalAuthorization("transactionIdentifier")              .amountAndCurrency(BigDecimal("1.00"), Currency.EUR)              .build()  val transactionIntent = mposUi.createTransactionIntent(transactionParameters)  startActivityForResult(transactionIntent, MposUi.REQUEST_CODE_PAYMENT)
  3. After the transaction is complete and the Summary screen is dismissed, the
    onActivityResult
    method is triggered. This action returns information about the previous transaction.
    Override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {      super.onActivityResult(requestCode, resultCode, data)         if (requestCode == MposUi.REQUEST_CODE_PAYMENT) {          when (resultCode) {              // Result code from a successful transaction              MposUi.RESULT_CODE_APPROVED -> {                  val transactionIdentifier = data?.getStringExtra(MposUi.RESULT_EXTRA_TRAN SACTION_IDENTIFIER)                  Toast.makeText(findViewById(android.R.id.content),"Transaction approved!\nIdentifier: $transactionIdentifier",   Toast.LENGTH_LONG).show()              }              // Result code from a declined, aborted or failed transaction              MposUi.RESULT_CODE_FAILED -> {          Toast.makeText(findViewById(android.R.id.content), "Transaction was declined, aborted, or failed",   Toast.LENGTH_LONG).show()              }          }      }  }
  4. Get the full transaction object by retrieving the
    latestTransaction
    value from the mposUi object.
    val transactionObject = mposUi.latestTransaction