Package name
Charge
Generating or applying a payment using any card or digital method.
Revert
Reversing a transaction, returning the money to the original account.
Refund
Refund a related transaction, returning the money to the original account.
Independent refund
Refund an unrelated transaction, returning the money to tapped card.
High-level flow
- Client’s app constructs an explicit
Intenttargeting Payment app and specifies the desired action. - Client’s app launches the
IntentwithregisterForActivityResult(StartActivityForResult). - The user pays (or cancels).
- Payment app returns a result
Intentwith details viasetResult(...)andfinish(). - Client’s app finalizes the order.
Charge Intent Contract
Request action
com.lab4pay.pos.CHARGE
Request parameters
Response
- Result codes:
Activity.RESULT_OK-> The payment app completed normally and returned a valid result Intent. Additional details are provided in the Intent extras.Activity.RESULT_CANCELED-> Payment flow ended unexpectedly (user exited early or app failed before returning a result). No Intent extras are available.
- Data: An
Intentwith Response extras
Response extras
Revert Intent Contract
Request action
com.lab4pay.pos.REVERT
Request parameters
Only the most recent
SUCCESS transaction performed on the terminal can be reverted.Reverts are only available for certain payment methods.
Response
- Result codes:
Activity.RESULT_OK-> The payment app completed normally and returned a valid result Intent. Additional details are provided in the Intent extras.Activity.RESULT_CANCELED-> Payment flow ended unexpectedly (user exited early or app failed before returning a result). No Intent extras are available.
- Data: An
Intentwith Response extras
Response extras
Refund Intent Contract
Request action
com.lab4pay.pos.REFUND
Request parameters
Only
SUCCESS charge transactions can be refunded.Refund amount must not exceed the remaining refundable amount.
Refunds are only available for supported payment methods.
Response
- Result codes:
Activity.RESULT_OK-> The payment app completed normally and returned a valid result Intent. Additional details are provided in the Intent extras.Activity.RESULT_CANCELED-> Payment flow ended unexpectedly (user exited early or app failed before returning a result). No Intent extras are available.
- Data: An
Intentwith Response extras
Response extras
Independent Refund Intent Contract
Request action
com.lab4pay.pos.INDEPENDENT_REFUND
Request parameters
Independent refunds are not linked to a previous charge transaction.
Independent refunds require
CARD payment method support on the terminal.Response
- Result codes:
Activity.RESULT_OK-> The payment app completed normally and returned a valid result Intent. Additional details are provided in the Intent extras.Activity.RESULT_CANCELED-> Payment flow ended unexpectedly (user exited early or app failed before returning a result). No Intent extras are available.
- Data: An
Intentwith Response extras
Response extras
Pay-Connect OTP Intent Contract
Request action
com.lab4pay.pos.PAY_CONNECT_OTP
Request parameters
The terminal must not be already paired with Pay-Connect.
Response
- Result codes:
Activity.RESULT_OK-> The payment app completed normally and returned a valid result Intent. Additional details are provided in the Intent extras.Activity.RESULT_CANCELED-> Payment flow ended unexpectedly (user exited early or app failed before returning a result). No Intent extras are available.
- Data: An
Intentwith Response extras