Follow

SMARTTERMINAL_REQUEST and SMARTTERMINAL_TRANSACTION Webhook Differences

WEBHOOK SUBSCRIPTIONS ARE LIMITED TO 5 PER PJMID
For more information on PayJunction account structures, see the PayJunction Account Structures guide.

There are two similar webhook event types that you can subscribe to for updates when transactions are processed on the Smart Terminal:

  • SMARTTERMINAL_TRANSACTION
  • SMARTTERMINAL_REQUEST

Although you can use either one, they serve two distinct purposes.

SMARTTERMINAL_TRANSACTION

This event type is only sent once during a Smart Terminal transaction, after payment authorization is complete. This is best used for transaction logging applications. An example of this would be an application that passively records transactions and saves the data into a database or external service, such as Quickbooks or Salesforce.

SMARTTERMINAL_REQUEST

For examples of the data sent to the subscriber for the SMARTTERMINAL_REQUEST event type, please see the SMARTTERMINAL_REQUEST Webhook API document

This event type has been designed for integrators that wish to provide a better UI experience. Instead of only sending a single notification when a Smart Terminal transaction is approved, this event type sends notifications to indicate the Smart Terminal is still being connected to (CONNECTING), already in use and thus unavailable (BUSY), transaction in progress (IN_PROGRESS), and finally when the transaction has been completed (COMPLETE).

To prevent interruption of requests already in progress when using API versions prior to 2018-06-19 you must send interruptBusyTerminal=false in the body of the request.

For more information see the Testing for Busy or Offline Smart Terminal article.