Online Tip Transaction Processing

One of the use cases of capture transactions is tipping. For example, the merchant first authorizes a payment of 15 dollars and then the customer captures 18 dollars where 3 dollars is a tip.

This tip can be, more commonly, entered at the POS terminal as a CP sale transaction. For more, see BluePOS Transaction Processing. However, is it also common for a CNP/eCommerce transaction to include a tip where an online pizza store or similar food service allows you to do so.

📘

Also See

Before looking at this page, make sure you are familiar with

Authorizing Payment

Here is an authorization that remains to be captured with gratuity(tip).

POST /api/v4/accounts/{accountId}/payments/auth

{
  "bfTokenReference": "bft_9ec...",
  "posProfile": "ECOMMERCE",
  "amounts": {
    "total": "15",
    "currency": "USD"
  }
}

*Required Scopes: pcx:payments:*, pcx:payments:card_not_present:*, pcx:payments:card_not_present:auth

🚧

Note

Note that the total is not 18 (with the tip), which is specified in the transaction capture where the total of the sale must be accurate as opposed to authorization.

Capture with Tip

POST /api/v4/accounts/{accountId}/payments/{transactionId}/capture

  • {accountId} value in the path is the PayConex™ account ID number.
  • {transactionId} value in the path is the authorization transactionId to capture.
{
  "posProfile": "ECOMMERCE",
  "amounts": {
    "total": "18",
    "currency": "USD",
    "gratuity": "3"
  }
}

*Required Scopes: pcx:payments:*, pcx:payments:device:*, pcx:payments:card_not_present:*, pcx:payments:capture

In response, we get the following amounts as we have initially requested 15 during the authorization:

{
  ...
  "amounts": {
    "currency": "USD",
    "approved": "18.00",
    "requested": "15.00",
    "balance": "18.00"
  },
  ...
}