POS Inquiry with On-Device SAF Enabled
Scope
If On-Device SAF is enabled, the POS should periodically send an Inquiry request to Simplify for the following transactions, until resolved:
Transactions that did not receive a response from Simplify.
Transactions locally approved by Simplify (SAF token sent to POS).
Note: There is no need for the POS to send an Inquiry on a locally declined transaction. Simplify is responsible for reversing if the original transaction was approved by the host.
Timing
Inquiries can be sent whenever the lane is idle, and the store is not busy.
Inquiries can be sent as part of the end of day process.
Processing Algorithm for Local Approvals
POS receives a local approval with a SAF Token on a Credit transaction (Sale, Refund or Void).
POS sends an Inquiry with the SAF Token when the PIN Pad is not in use by a customer.
POS checks the response codes to determine whether the transaction has been resolved, i.e. forwarded (host) approved or declined, or expired (declined by Simplify).
- If the transaction was host approved, the POS should parse the Fusebox data returned in API 5074 (22 token type) to retrieve the PAN token.
Note: An Inquiry with a SAF token from the POS concerning a locally approved transaction will not be sent to Fusebox. Simplify will instead return the most recent result contained in the database record identified by the SAF Token.
Inquiry Message Fields
For additional information on Inquiry Message fields, see the Fusebox Integration Guide under “Transaction Types” > “Transaction Inquiry (22)”.
Request
No response received – Standard Inquiry request fields (based on original request).
Local approvals – Standard Inquiry request fields plus SAF Token from original response (API 5073).
For all Inquiries, the original transaction date and time must be sent in API 0013 and 0014.
Response
Non-SAF transactions (not in SAF database) – Standard Inquiry response fields.
SAF transactions – Standard Inquiry response plus the following API’s:
5073 – SAF Token
5074 – Database fields and Fusebox record (22 token type)
5075 – Total SAF Local Approved Pending Amt : Maximum total amount of pending local approvals (configured)
5076 – Total SAF Local Approved Pending record count : Total Database record count : Maximum number of allowed database records (configured) : Free Flash Data bytes : Free RAM bytes
5077 – Total SAF Local Approved Pending record count : Total SAF Local Declined Pending record count
Note: For a POS Inquiry request on a “no response” transaction, Simplify will determine whether it was a SAF transaction. If yes, it will add API 5073 through 5077 to the Inquiry response.
Message Flow for Local Approvals (Sale Transaction)
Original Transaction
- POS sends Sale Request.
- Simplify sends Sale Request to Fusebox and times out waiting for a response.
- Simplify locally approves the transaction by Stand-in and writes transaction to SAF database with SAF token.
- Simplify sends a Stand-in Sale Response including the SAF token.
- POS stores SAF token.
SAF Processing
- Simplify sends SAF (Forward) Request.
- If it receives a host response (forwarded approval or decline) , it updates the SAF database.
- Simplify sends SAF (Forward) Request.
Inquiry Processing (can be sent through Simplify or directly to Fusebox)
- POS sends Inquiry Request including SAF token
- If sent to Simplify, Simplify looks up transaction using SAF token.
- If resolved, Simplify writes transaction record to Inquiry response and send response.
- Else response returns status as Pending. POS resends Inquiry after configured interval.