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:
- Card Holder presents the card to the Nayax Device.
- Nayax Device sends an authorization request to the Nayax Server.
- Nayax Server forwards the authorization request to the Billing Provider.
- The billing Provider sends an authorization response (approved) to the Nayax Server.
- Nayax Server sends the authorization response (approved) back to the Nayax Device.
- Vending Machine SDK begins the session and triggers the session begin event handler (
vmc_vend_event_handler_cb(vm_vend_event_on_session_begin)
). - Message to Card Holder: "Please Select Product."
- The cardholder selects a product.
- Vending Machine SDK sends a vending request
vmc_vend_vend_request(vend_session_t *session)
to the Nayax Device. - Vending Machine SDK transfers data internally and triggers the transaction info event handler
vmc_vend_event_handler_cb(vm_vend_event_on_transaction_info)
. - SDK triggers the vend approved event handler
vmc_vend_event_handler_cb(vm_vend_event_on_vend_approved)
. - Vending machine starts dispensing the product.
- SDK reports vend success
vmc_vend_vend_status(&session, __true)
and completes the vend sessionvmc_vend_vend_session_complete_lowlevel()
. - Session ends.
Settlement
The diagram below shows the Multi Sessions Settlement phase:
Where:
- The machine stops dispensing the product.
- Vending machine SDK closes the session
vmc_vend_session_close(session)
. - Nayax Device sends a close session message.
- Nayax Device sends a settlement request to the Nayax Server.
- Nayax Server forwards the settlement request to the Billing Provider.
- The billing Provider sends a settlement response (OK) to the Nayax Server.
- Nayax Server returns the settlement response (OK) to the Nayax Device.
- Vending machine SDK receives status and triggers settlement event handler
vmc_vend_event_handler_cb(vm_vend_event_on_settlement)
. - Vending machine SDK transfers data and triggers transaction info event handler
vmc_vend_event_handler_cb(vm_vend_event_on_transaction_info)
. - Message to Card Holder: "Thank you & Goodbye."
Updated 3 days ago