Verifone Commander/CI is the C-Store POS backend
Commander is the backend for C-Stored that have more than 2 POS cashier terminals
CI is a light weight, 2 Cashier stations max version of Commander
Ruby is the POS cashier front end to the Commander backend
C-Store POS Integration Unique Requirements
C-Store POS are built around the Conexxus industry standards body set of requirements for all POS touching systems
The Verifone POS does not provide a way for the cashier to see a user's available rewards for selection. this is why all program type support statuses below are marked as partially supported. The user is required to use the app to mark available rewards in their accounts as active in the app before they use the app or their phone number input at the cashier station or fuel pump to redeem their active offer
Verifone Commander /CI Special notes
Commander/CI does not automatically send all non-loyalty receipts to Punchh to allow after-transaction earning
Punchh has a special feature to allow a designated “fake” phone number to be entered by the cashier that will then allow the transaction to to print a 12 digit punchh key on the POS receipt that the user cn then enter into the app to earn after the transaction
Verifone integration does not support printing of barcodes/QR Codes on the receipts. When the Punchh receipt message is printed on the receipt, the 13 digit Punch key value will be printed as numbers they the user should be instructed to manually enter into the app to earn
Official Verifone Certification
Punchh Certificate Test Log
POS/Kiosk Name | Verifone | |||
Tested POS/Kiosk Version | Punchh Integration v.6.11.18.0 | |||
Integration Type | CStore | |||
Date | 11/23/2020 | |||
Applicable Functionality | Test Actions | Expected Result | Actual Result | Notes |
Core Functionality | Supported all Punchh Loyalty Structures | User's information should be reflected according to the selected business structure. Details for what each structure should look like in lookup on POS or Kiosk. Examples of all messages and prompts and status codes should be provided. | Pass | |
Core Functionality | Verify visits based business structure | User's information should be reflected according to the selected business structure. Details for what each structure should look like in lookup on POS or Kiosk. Examples of all messages and prompts and status codes should be provided. Completed Visit card reward redemptions may be performed on the POS without the App | Partially Supported | |
Core Functionality | Verify banked rewards based business structure | User's information should be reflected according to the selected business structure. Details for what each structure should look like in lookup on POS or Kiosk. Examples of all messages and prompts and status codes should be provided. Banked reward redemptions may be performed on the POS without the App. | Partially Supported | |
Core Functionality | Verify points unlock redeemables business structure | User's information should be reflected according to the selected business structure. Details for what each structure should look like in lookup on POS or Kiosk. Examples of all messages and prompts and status codes should be provided. Unlockable reward redemptions may be performed on the POS without the App | Partially Supported | |
Core Functionality | Verify membership tiered points based program business structure | Partially Supported | ||
Core Functionality | Print Punchh barcode on all POS transaction receipts | The printed check should contain the valid Punchh barcode code and should be unique per check number. | Partially Supported | Need to apply a dummy phone number for non-loyalty transactions to get sent to Punchh. The dummy phone number is configured via PunchhConfigurator.exe |
Core Functionality | Print Punchh QR Code on all POS transaction receipts | The printed check should contain the valid Punchh QR code and should be unique per check number. | Not Supported | |
Core Functionality | Enter barcode on iframe https://sandbox.punchh.com/whitelabel | Points should be updated on the apps and dashboard. | Pass | |
Core Functionality | Scan the barcode or QR code located on the check via mobile app. | Points should be updated on the apps and dashboard. | Not Supported | only barcode number (Punchh key), no actual barcode |
Core Functionality | Enter manually barcode or QR code value via mobile app. | Points should be updated on the apps and dashboard. | Pass | |
Core Functionality | Barcodes should be unique per check for the period of testing. | Request separate documentation on how to generate barcodes | Pass | |
Core Functionality | Verify that virtual or physical keypad is available loyalty functionality. | Virtual or physical keypad should be available loyalty functionality. | Pass | |
Core Functionality | Manually enter redemption codes | Ability to enter redemption code via virtual or physical keyboard | Pass | |
Core Functionality | Manually enter coupon/promo codes | Ability to enter coupon and promo codes via virtual or physical keyboard | Not Supported | Coupon and promo codes cannot be supported in Verifone. Verifone will only allow numeric input. (Redemption codes are supported.) |
Core Functionality | Manually lookup user by email address | Ability to enter user email address via virtual or physical keyboard | Not Supported | |
Core Functionality | Manually lookup user by phone number | Ability to enter phone number via virtual or physical keyboard | Pass | |
Core Functionality | Verify the ability to change Punchh loyalty endpoints | Ability to change the Punchh service endpoints. The default values are: pos.punchh.com/api/pos isl.punchh.com | Pass | |
Core Functionality | POS displays Punchh API error messages | Displays Punchh API error messages prompts and status codes that should be supported e.g 4xx http API errors | Partially Supported | Not all Pucnhh API messages display supported (only errors returned from checkin will be displayed on POS (e.g. minimum checkin amount)) |
User Lookup Functionality | POS can print a report showing the users point and reward status | <Details to be added> | Pass | |
User Lookup Functionality | Lookup user via long QR code from user's timeline or from mobile app-if available | Ability to lookup user via long check in QR code | Not Supported | |
User Lookup Functionality | Lookup via short QR code from user's timeline or from user's mobile app-if available | Ability to lookup user via short check in QR code | Not Supported | |
User Lookup Functionality | Lookup via user's phone number | Ability to lookup user via user's phone number | Pass | |
User Lookup Functionality | Lookup via user's email address | Ability to lookup user via user's email address | Not Supported | |
User Lookup Functionality | Lookup by swiping, scanning or entering loyalty card number | Ability to lookup user via swiping, scanning or entering user's loyalty card number | N/A | |
User Lookup Functionality | Lookup should be available anytime during the current order. | Ability to user lookup anytime during the order | Pass | |
Acquire New User | Acquire new users at the POS via phone lookup | When user doesn't exist at lookup, POS prompts to create user using the entered lookup value | Not Supported | |
Acquire New User | Acquire new users at the POS via email address | When user doesn't exist at lookup, POS prompts to create user using the entered lookup value | Not Supported | |
Acquire New User | Verify if user is checked in when new user's account is created | New user should be checked in. Points should be added to user's account. | Not Supported | |
Check-In Functionality | Check-in via Guest QR Code | Points should be updated on the apps and dashboard. | Pass | phone number QR |
Check-In Functionality | Check-in via short-lived Guest Code | Points should be updated on the apps and dashboard. | Not Supported | |
Check-In Functionality | Check-in via user's phone number | Points should be updated on the apps and dashboard. | Pass | |
Check-In Functionality | Check-in by swiping, scanning or manually entering loyalty card. | Points should be updated on the apps and dashboard. | N/A | |
Check-In Functionality | Check-in by redemption code | Points should be updated on the apps and dashboard. | Pass | |
Check-In Functionality | Verify points not earned on canceled order | User should not get points on the canceled transaction. | Pass | |
Check-In Functionality | Correct void functionality with points enabled | Verify points deduction on voided check (pending points enabled) Points should be deducted from the user's account. | Not Supported | |
Check-In Functionality | Handling Loyalty check modification with points enabled | Verify correct earning after check is reopened and modified (pending points enabled) Points should be updated on the dashboard. | Not Supported | |
Check-In Functionality | Unassign customer functionality support | Verify if there is 'unassign customer' functionality. The user should not earn any points. The printed check should have a valid barcode. | Not Supported | |
Check-In Functionality | POS checks in assigned user (phone/email/card number/redemptioncode/qr code) at check finalization | Verifry that if any user token is provided by the guest, they are assigned to the POS transactions and the user is checked in by the POS system automatically at check finailization (Tender/Close) | Pass | |
Redeem Functionality | Applying redemption code | Enter or scan a valid redemption code at the payment screen. The subtotal amount on the receipt should be discounted according to the redemption's code amount. Punchh discount should be present on printed and PUNCHH receipt. | Pass | |
Redeem Functionality | Verify applying redemption/reward with the amount higher than the total of the check | The discount applied to the order should be no more than the total amount of the order. Amount the reward reflected on the timeline should match the amount applied. | Pass | |
Redeem Functionality | Verify $10 redemption/reward applied to $5 order with increase to $8 | The redemption's code/reward's amount should be changed from $5 to $8.00, but no more that $10.00 | Pass | |
Redeem Functionality | Support multiple valid redemption codes and (or) coupons and (or) rewards on a single transaction (for a single loyalty user ) | Multiple redemptions/rewards should be supported. | Pass | |
Redeem Functionality | Applying redemption code + internal discount or reward + internal discount | The subtotal amount on the receipt should be discounted according the internal discount + redemption's code/reward discount. | Pass | |
Redeem Functionality | Verify amount of applied reward to a qualified item is changed when internal discount is applied to the same qualified item. | The amount of the reward should be applied only to a qualified item, not to the whole check. It should be changed to the amount of qualified item with internal discount. | Pass | |
Redeem Functionality | Verify if previously applied reward is automatically removed when the reward qualified item is removed from the order | Reward should be removed from the order. | Pass | |
Redeem Functionality | Removing redemption code/coupon/promo from the order | Redemption code/ coupon should be deleted from the check and credited back to the user. User should be attached to the order when the redemption has been voided. | Pass | |
Redeem Functionality | Verify that if POS discount rules blocks Punchh approved reward application to the order, the users reward is returned to their account | The Punchh user's reward should not be removed from the user account (redemption create) until the POS has verified that the approved redemption request has been successfully applied to the POS order | Pass | |
Functionality with no Internet connection | Functionality with no Internet connection | The printed check should contain the valid Punchh bar/QR code ( EAN-13 or Punchh QR Code Format ) and should be unique per check number. Check details data should be temporarily stored for later transmission. There should be no error messages shown. When Internet connection is back then any check data that was accumulated should be transmitted to Punchh. | Pass | |
Functionality with no Internet connection | Verify if order is placed and check is printed when there is no connection | The printed check should contain the valid Punchh bar/QR code ( EAN-13 or Punchh QR Code Format ) and should be unique per check number. Check details data should be temporarily stored for later transmission. There should be no error messages shown. When Internet connection is back then any check data that was accumulated should be transmitted to Punchh. | Pass | |
Functionality with no Internet connection | Verify closing order with check-in during connection loss | The order should be closed. The receipt should be printed. Check details data should be temporarily stored for later transmission. There are should be no error messages shown. When Internet connection is back then any check data that was accumulated should be transmitted to Punchh. | Pass | |
Functionality with no Internet connection | Verify if redemption code is voided when Internet connection is lost during payment. | Redemption code or Rewards should be voided and returned to the user. The order should be closed. The receipt should be printed. Check details data should be temporarily stored for later transmission. There are should be no error messages shown. When Internet connection is back then any check data that was accumulated should be transmitted to Punchh. | Pass | |
Receipt Details | POS Passes all order details in receipt data sent to Punchh | In addition to normal POS check details, the POS sends the Online ordering transaction number, Online Ordering/Kiosk guest's registered status and the Online ordering Punchh key value in the POS receipt details to Punchh | Partially Supported | |
Receipt Details | Verify applying internal discount is in receipt details sent to Punchh | The printed check should contain the valid Punchh barcode/ QR code, discount should be visible in the receipt details on the Dashboard and on the printed receipt | Pass | |
Receipt Details | The paid amount on the receipt should be converted to the earning points without including taxes and tips. | The taxes or tips should not be converted to the points. Amount and subtotal_amount should be equal and should be sum of all menu items minus all discounts. | Pass | |
Receipt Details | Verify transaction number is present on the printed receipt and it should match Punchh check number. | The transaction number of printed receipt and should match the transaction number in the receipt details sent to Punchh. | Pass | |
Receipt Details | Verify sending payments as type "P" | Receipt details should contain payment type as "P" | Pass | |
Receipt Details | Verify sending service charges as type "S" | Receipt details should contain service charge type as "S" | Pass | |
Receipt Details | Verify sending Taxes charges as type "T" | Receipt details should contain service charge type as "T" | Pass | |
Receipt Details | Verify all check details balance above and below the total | subtotal_amount = (Sum(M) - Sum (D) (Punchh and Internal Discounts)) | Pass | |
Receipt Details | POS send receipt_details API call when check is finalized after payment is applied | Receipt details should contain all fields from the check. | Pass | |
Receipt Details | Serial numbers support for modifiers | Serial numbers should be used for modifiers and start with 1.0 (Main item (1.0) + subitem (1.01)) Range 0.00-0.99 | N/A | |
Receipt Details | Verify data sent to Rev code/ID POS data reflect POS functionality that designated the method that the order is being fulfilled to the guest | This should be the id/text values that represent the way in which the order is going to be fulfilled to the customer. | Pass | |
Portal Functionality | Set up text of the Header in receipt message on the Dashboard. | Line with a text should be added on the top of a receipt. | Pass | |
Portal Functionality | Set up text of the Trailer in receipt message on the Dashboard. | Line with a text should be added below the barcode of a receipt. | Pass | |
Portal Functionality | Disable Barcode Generation at POS. | The Barcode should not be printed on the receipt. | Pass | |
Logging | Verify POS/Kiosk version and sub-version should be logged at log file start | POS/Kiosk version and sub-version should be logged at log file start | Pass | |
Logging | Verify that all text data (menu items, employee name etc.) are URL encoded | All text data (menu items, employee name etc.) should be URL encoded | Pass | |
Logging | Verify Punchh API request/response logging | These fields should be equal and should be sum of menu items minus discounts (not including taxes or tips) | Pass | |
Logging | Verify that revenue_id and revenue_code should be included in the logs | Verify that these fields are sent to Punchh | Pass | |
Logging | Verify that if using URL encoding then there should be no special symbols per rfc3986. Make sure that any characters like ampersand, percent etc. are not shown in the names of the menu items or employees but rather URL Encoded | if URL encoding is not used then there should be no special symbols per rfc3986. Make sure that any characters like ampersand, percent etc. are not shown in the names of the menu items or employees but rather URL Encoded | Pass | |
Logging | Verify that log details is properly adjust to Location Config log level settings | Log details should be properly adjust to Location Config log level settings | Pass | |
Logging | Verify that logs are uploaded to Punchh POS logging repository | Logs should be uploaded to Punchh POS logging repository | Pass | |
Single Scan Flow | POS Supports Single Scan Flow | POS support single scan flow for earning/redemption/payment | Not Supported | |
Single Scan Flow | POS support SSF Check-in only | POS support single scan flow for earning only | Not Supported | |
Single Scan Flow | POS support SSF Pay and Check-in | POS support single scan flow for pay and check-in | Not Supported | |
Single Scan Flow | POS support SSF Redeem and Check-in | POS support single scan flow for redeem and check-in | Not Supported | |
Single Scan Flow | POS support SSF Redeem, Pay and Check-in | POS support single scan flow for redeem, pay and check-in | Not Supported | |
Bounceback Program Support | N/A |