Multi-Session

The multi-session payment flow in Nayax allows multiple concurrent transactions. This is useful when numerous payment interactions must be processed independently, such as in self-service kiosks with multiple users operating simultaneously. See the diagram below

Multi Session Flow

See the diagram below:

Where:

  1. Card Holder presents the card to the Nayax Device.
  2. Nayax Device sends an authorization request to the Nayax Server.
  3. Nayax Server forwards the authorization request to the Billing Provider.
  4. The billing Provider sends an authorization response (approved) to the Nayax Server.
  5. Nayax Server sends the authorization response (approved) back to the Nayax Device.
  6. Vending Machine SDK begins the session and triggers the session begin event handler (vmc_vend_event_handler_cb(vm_vend_event_on_session_begin)).
  7. Message to Card Holder: "Please Select Product."
  8. The cardholder selects a product.
  9. Vending Machine SDK sends a vending request vmc_vend_vend_request(vend_session_t *session) to the Nayax Device.
  10. Vending Machine SDK transfers data internally and triggers the transaction info event handler vmc_vend_event_handler_cb(vm_vend_event_on_transaction_info).
  11. SDK triggers the vend approved event handler vmc_vend_event_handler_cb(vm_vend_event_on_vend_approved).
  12. Vending machine starts dispensing the product.
  13. SDK reports vend success vmc_vend_vend_status(&session, __true) and completes the vend session vmc_vend_vend_session_complete_lowlevel().
  14. Session ends.

Settlement

The diagram below shows the Multi Sessions Settlement phase:

Where:

  1. The machine stops dispensing the product.
  2. Vending machine SDK closes the session vmc_vend_session_close(session).
  3. Nayax Device sends a close session message.
  4. Nayax Device sends a settlement request to the Nayax Server.
  5. Nayax Server forwards the settlement request to the Billing Provider.
  6. The billing Provider sends a settlement response (OK) to the Nayax Server.
  7. Nayax Server returns the settlement response (OK) to the Nayax Device.
  8. Vending machine SDK receives status and triggers settlement event handler vmc_vend_event_handler_cb(vm_vend_event_on_settlement).
  9. Vending machine SDK transfers data and triggers transaction info event handler vmc_vend_event_handler_cb(vm_vend_event_on_transaction_info).
  10. Message to Card Holder: "Thank you & Goodbye."