
What does “VEND FAIL REFUND” mean?
A VEND FAIL REFUND means that the card payment was initially approved, but the vending machine subsequently reported that the vend had failed.
As a result, the card reader refunded the transaction to the customer's card.
A typical transaction flow is:
Customer taps card → Payment approved → Vending machine attempts to dispense product → Vending machine reports VEND FAIL → Card reader refunds the payment
Therefore, seeing VEND FAIL REFUND in Vend History does not necessarily indicate a problem with the card reader or the payment itself.
Why does the card reader issue the refund?
The card reader operates as a slave unit to the vending machine.
The vending machine controls the vend process and determines whether the product has been successfully dispensed. The card reader does not have direct visibility of the physical product or the vending mechanism.
If the vending machine reports a successful vend, the payment is completed normally.
If the vending machine sends a Vend Fail command, the card reader must treat the vend as unsuccessful and refund the transaction.
In other words:
The card reader does not independently decide to issue a Vend Fail refund — it is responding to the result reported by the vending machine.
What can cause a VEND FAIL?
Common causes may include:
The coil did not rotate correctly.
The product became stuck and did not drop.
The drop sensor did not detect the product.
The coil or motor has an intermittent mechanical issue.
The vending machine incorrectly detected a successful product drop as a failed vend.
There is another vending machine hardware, sensor, configuration or firmware issue.
The exact cause should therefore be investigated on the vending machine side.
Can a product be dispensed even though the transaction shows “VEND FAIL REFUND”?
Yes. This is an important scenario to check.
We have received reports of cases where:
The payment was approved.
The vending machine physically dispensed the product.
The vending machine incorrectly determined that the vend had failed.
The vending machine sent a Vend Fail command to the card reader.
The card reader refunded the transaction.
The customer therefore received the product even though the payment was refunded.
This behaviour may potentially be exploited to obtain products without being charged if it occurs repeatedly on a particular coil or machine.
Because the card reader cannot physically determine whether a product has dropped, it cannot identify or correct this condition by itself.
How can I check whether this is happening?
We recommend monitoring the affected coil and comparing its physical stock level with the Current Level recorded in the VMMS Planogram.
For example, for coil C2:
Load a known quantity into the coil, for example 10 products.
Perform a Collection on the machine to reset the Current Level of all coils back to their configured Par Level and generate a Collection Report for future reference.
Allow the machine to operate normally.
At the next refill, physically count the products remaining in C2. Then Do a Collection again.
In VMMS, go to:
System → Machine → Machine ID → Planogram
Compare the physical quantity with the Current Level shown for C2.
Expected result
Physical stock remaining = Planogram Current Level
If these quantities match, the machine's vend reporting is most likely operating correctly.
If they do not match, further investigation is required.
How can I investigate a stock level mismatch?
Go to:
Collection → History Record
Locate the relevant Collection Report for the period being investigated and check how many products were recorded as sold by cash and card.
Then go to:
Cashless → Vend History
Review the card transactions during the same period.
For example, suppose Vend History shows:
2 successful vends
3 VEND FAIL REFUND transactions
The Collection Report should normally record:
2 card vends
not:
5 card vends
You should also compare these records with the actual number of products physically remaining in the coil.
This information can help determine whether products are being physically dispensed during transactions that the vending machine is reporting as failed.
Is VEND FAIL REFUND a card reader problem?
Normally, no.
The card reader processes the payment and follows the vend result provided by the vending machine.
The sequence is controlled by the vending machine:
Vending Machine → Vend Result → Card Reader
If the vending machine reports Vend Fail, the reader is required to process the transaction accordingly.
The reader cannot override the vending machine's vend result simply because the payment was successfully authorised.
Can CircumTec fix this from the card reader side?
If the vending machine is incorrectly reporting a successful physical vend as Vend Fail, this cannot be corrected by the card reader.
The reader has no independent way to determine whether the product physically dropped.
If testing confirms that:
Physical Stock Level ≠ VMMS Planogram Current Level
and the transaction records indicate that products were dispensed during transactions subsequently reported as VEND FAIL REFUND, the vending machine itself should be investigated.
Please contact the vending machine manufacturer or service provider to check the machine's:
Vend/drop detection mechanism
Drop sensor
Coil and motor operation
Machine configuration
Controller firmware
Vend success/failure logic
The vending machine manufacturer will need to identify why the machine is reporting a failed vend when the product has actually been dispensed.
Summary
VEND FAIL REFUND means the vending machine reported that the vend failed after the card payment was approved, so the card reader refunded the transaction.
The card reader does not independently determine whether a product has been dispensed.
If VEND FAIL REFUND occurs frequently on a particular coil, check the physical product quantity against the VMMS Planogram Current Level.
If the levels do not match, this may indicate that products are being dispensed while the vending machine is incorrectly reporting Vend Fail. In this situation, the vending machine manufacturer should be contacted for further investigation.
