WEBHOOK SUBSCRIPTIONS ARE LIMITED TO 5 PER PJMID. But a single Webhook can simultaneous track multiple requestI IDs.
For more information on PayJunction account structures, see the PayJunction Account Structures guide.
Provides detailed status information for payment requests to the PayJunction Smart Terminal.
Transaction requests (/request-payment) will return the reference id as a requestPaymentId while all other requests such as signature capture (/request-signature) will return the reference id as a requestId. Regardless of the original request type, the SMARTTERMINAL_REQUEST webhook data object will always reference this id as the requestId.
Example Flow of Completed transaction
Connecting
Connection with the specified Smart Terminal is still pending
{ "created": "2018-02-20T20:30:01.756Z", "data": { "requestId": "a178db80-59e3-4e39-a6c7-bf8bab7ebb28", "status": "CONNECTING" }, "id": "835a3fe6-a7e2-4872-9206-1ed28c4476e6", "type": "SMARTTERMINAL_REQUEST" }
Busy Terminal
{ "created": "2018-02-22T17:58:03.744Z", "data": { "requestId": "ca6a9797-3247-4f1e-9dcb-e053f31f8bb3", "status": "BUSY" }, "id": "d50219c3-12f5-4bfe-98bd-d7cca3ac4e14a9", "type": "SMARTTERMINAL_REQUEST" }
In Progress waiting for transactionId
Smart Terminal is performing the requested action.
{ "created": "2018-02-20T20:30:02.436Z", "data": { "requestId": "a178db80-59e3-4e39-a6c7-bf8bab44bb28", "status": "IN_PROGRESS" }, "id": "c3a0e26f-87f7-46ef-9b0e-15ebbd7e3478", "type": "SMARTTERMINAL_REQUEST" }
In Progress received a transactionId
Now that you have a transactionId, log it and call GET/transactions/{transactionId} to get the details.
"created": "2018-02-20T20:30:07.935Z", "data": { "requestId": "a178db80-59e3-4e39-a6c7-bf8bab7ebb28", "status": "IN_PROGRESS", "transactionId": 10082 }, "id": "762611cc-1636-434e-b137-8b148cf249a7", "type": "SMARTTERMINAL_REQUEST" }
At this point you are just waiting for the COMPLETE to know when the Smart Terminal is available again. Post transaction activities such as a signature, email receipt or forgotten card could delay the COMPLETE status.
Transaction Completed
Transaction Request - Complete
{ "created": "2018-02-20T20:30:07.235Z", "data": { "requestId": "a178db80-59e3-4e39-a6c7-bf8bab7ebb28", "status": "COMPLETE", "transactionId": 10082 }, "id": "762611cc-1636-434e-b137-8b148cf249a7", "type": "SMARTTERMINAL_REQUEST" }
Example Flow of Canceled transaction
If the transaction is not processed (canceled, timeout, etc), transactionId field will not be present.
In Progress without transactionId
Smart Terminal is performing the requested action.
{ "created": "2018-02-20T20:30:02.436Z", "data": { "requestId": "a178db80-59e3-4e39-a6c7-bf8bab44bb28", "status": "IN_PROGRESS" }, "id": "c3a0e26f-87f7-46ef-9b0e-15ebbd7e3478", "type": "SMARTTERMINAL_REQUEST" }
Status COMPLETE without a transactionId can be treated as cancelled.
{ "created": "2018-02-20T20:30:03.567Z", "data": { "requestId": "a178db80-59e3-4e39-a6c7-bf8bab44bb28", "status": "COMPLETE" }, "id": "c3a0e26f-87f7-46ef-9b0e-15ebbd7e3478", "type": "SMARTTERMINAL_REQUEST" }
Example Flow of non-transaction requests (prompt, signature and input)
Smart Terminal Prompt Request - Complete
{ "id" : "7afa93f1-2bad-47df-afbe-949fc9c53a09", "created" : "2020-10-20T22:07:39.098Z", "type" : "SMARTTERMINAL_REQUEST", "data" : { "requestId" : "77083e4d-0ffe-4be6-b510-79e6da83e99f", "promptButton" : "Yes", "status" : "COMPLETE" } }
Smart Terminal Signature Capture Request - Complete
Notice that transaction requests will return a transactionId while signature capture requests return a signatureId.
{ "created": "2018-09-04T20:30:07.235Z", "data": { "requestId": "1c1a2db0-4bb5-4f60-96ce-1a66222e5276", "status": "COMPLETE", "signatureId": "bc84d60dedcd4896918a07a82e76ccb1" }, "id": "762611cc-1636-434e-b137-8b148cf249a7", "type": "SMARTTERMINAL_REQUEST" }
Smart Terminal Input Capture Request - Complete
Notice that transaction requests will return a transactionId while signature capture requests return a inputValue.
{
"id" : "c249222e-d179-403a-8d2d-7a94a1ce1743",
"created" : "2023-05-10T17:51:42.988Z",
"type" : "SMARTTERMINAL_REQUEST",
"data" : {
"requestId" : "0cfb0e74-9957-434d-bb03-59d8d572edaa",
"inputValue" : "8006010230",
"status" : "COMPLETE"
}