Terminal actions

Terminals can process payment intents and refunds.

When a terminal accepts one of these actions it will indicate that it is in_progress. When in_progress, other payments or refunds cannot be processed and will be rejected.

The latest processed action can be found on the terminal object. The status of the terminal action can be succeeded, in_progress or succeeded.

  "action": {
    "failureCode": null,
    "failureMessage": null,
    "paymentIntentId": "pi_eeGn3ga3pnPWqF4eUrNqnk",
    "refundId": null,
    "status": "succeeded",
    "type": "process_payment_intent"
  },

It is possible to send a cancel action to the terminal through the API. The payment intent or refund will then be cancelled and the terminal becomes ready to process a new action. When cancelled the action will be set to null.

It is also possible for the customer to cancel the action from the Vibrant app.

If the Vibrant app is restarted the terminal will also cancel current action and become ready for a new action.

Activate terminal

A terminal needs to be active in order to receive actions.

The terminal cannot receive actions before a user is logged in. When a Vibrant user logs into the app and select a terminal, the terminal becomes active.

An active terminal will have a value in the property activeUserId.

It is possible to 'take over' the terminal on another mobile device. Simply log into the app and select the terminal - it will be indicated which terminals are already in use.

Virtual

Virtual terminals are possible on the sandbox. This makes it possible to 'simulate' a succesful payment or refund without having a mobile device with app involved.

This can be useful for development against the API, to easily get data flowing through the system.

Maximum number of terminals

There is a default limit to the number of terminals an account can create, please contact us at integration-support@vibrant.io if you need more terminals.

networkStatus [work in progress]

Currently we do not verify if the terminal is online or offline.

Last updated