Callback
  • From a market stall to a store

  • -

  • From a store to a retail chain

  • -

  • From retail to manufacturing

Merchant refunds: why card payments go through but POS refunds don't

Volodymyr Vytyshchenko
Volodymyr Vytyshchenko

Trade automation expert at Torgsoft

A customer paid by card, and the sale was processed successfully in Torgsoft. A few days later, the customer returns the item, but the bank payment terminal fails to process the refund. In this situation, the business owner needs to determine whether the problem lies with the refund transaction itself, the terminal settings, or the Sole Proprietorship and bank account to which the payment should be returned.

What is a merchant ID, and how does it relate to refunds?

A merchant ID is an identifier assigned to a merchant on a bank payment terminal. Simply put, it helps the bank determine which business owner and bank account a card transaction belongs to.

In Torgsoft, a merchant ID is linked to the corresponding bank account. If a store operates under one Sole Proprietorship with one bank account, the cashier usually does not even notice this. However, if several Sole Proprietorships or accounts are involved, selecting the correct merchant ID becomes important.

A separate merchant ID for refunds is not required for every terminal. In some integrations, the bank uses separate «Payment» and «Refund» operations, while in others, a single «Payment_Refund» operation type is configured in Torgsoft. This depends on the bank, terminal model, and connection method.

Why payments work but refunds fail

For the bank, a sale and a refund are two different transactions.

During a sale, the bank accepts the customer's payment and credits the funds to the business owner. During a refund, the bank must identify the original card transaction and transfer the money back. This may require details of the original payment, including the RRN — the bank transaction reference number.

Therefore, the fact that a customer can pay by card without any problems does not mean that refunds have been configured correctly on the terminal.

For PrivatBank terminals, for example, the Torgsoft documentation describes a separate refund operation: information about available merchant IDs can be retrieved directly from the terminal, including the refund merchant ID. Other integrations may use a different procedure.

What to check if a refund fails

First, find the original sale for the returned item and check which bank account received the initial payment.

What to check if a refund fails?

Then check the following in order:

  1. Whether the payment terminal settings include an operation that supports refunds.

  2. Whether that operation is linked to the same bank account that received the original payment.

  3. If several merchant IDs are registered on the terminal, whether the correct one is selected.

  4. Whether the bank supports refunds for this merchant ID and whether it is configured correctly on the terminal itself.

Torgsoft provides an option to retrieve terminal information, allowing you to view the merchant IDs registered on it. This is particularly useful after replacing a terminal, changing banks, or adding another Sole Proprietorship.

If the required merchant ID is not registered on the payment terminal itself, you need to contact the bank or the company servicing the terminal.

If several Sole Proprietorships operate in one store

For example, some products at one checkout are sold through Sole Proprietorship A, while others are sold through Sole Proprietorship B. The bank has registered separate merchant IDs for both businesses.

During a sale, Torgsoft sends the transaction to the appropriate bank account. However, if refunds are not configured for the second Sole Proprietorship or the terminal selects a different merchant ID, payments may be processed successfully while refunds are declined.

With certain connection types, if multiple merchants are registered on the terminal and no specific merchant ID is provided, the terminal attempts to select one automatically. The Torgsoft documentation explicitly warns that this can result in an incorrect transaction or prevent the transaction from being completed.

Therefore, after adding another Sole Proprietorship, checking only a test payment is not enough. You should also perform a small test refund.

Error «Refund amount exceeds payment amount»

This situation is specifically documented for PrivatBank's Bonus+ program.

If the purchase was processed through a Bonus+ merchant ID, the actual amount credited to the business owner may differ from the amount Torgsoft sends for the refund. In this case, the terminal may report that the refund amount exceeds the payment amount.

The Torgsoft instructions suggest registering a second merchant without Bonus+ as one possible solution for such transactions.

This error does not necessarily mean that the cashier processed the product return incorrectly. You need to check the bank merchant ID used for the original payment.

The merchant ID is correct, but the terminal still refuses the refund

The merchant ID may not be the cause.

For some payment terminals, Torgsoft may first ask the terminal to read the customer's card before processing a refund. This setting is called «Pre-read card during refund».

If the terminal displays an error at this stage and the refund cannot be completed, Torgsoft allows you to disable preliminary card reading. The payment terminal will then verify the card directly during the refund. This setting should only be changed after confirming that the problem occurs at this particular stage.

Some terminals may also request additional details from the original card transaction when processing a refund. This is a normal feature of certain banks or terminals and does not necessarily indicate a Torgsoft malfunction.

What to do if the terminal has already refunded the money but Torgsoft displays an error

In this situation, do not initiate another refund through the terminal.

First, check the receipt or another confirmation of the bank transaction. If the bank has already returned the money to the customer, sending another command could result in a duplicate refund.

In Torgsoft, you can complete the accounting for an already processed bank transaction separately: when recording the return, do not send another command to the terminal; instead, enter the details of the completed transaction. This procedure is described in the software documentation.

If you are unsure whether the money has already been refunded, verify the transaction with the bank before continuing in Torgsoft.

Refunds through a POS terminal and PECR receipts

A card refund and recording a product return in the accounting system are related but separate actions.

You need to verify two results:

  • the bank has successfully refunded the customer;

  • the product return has been recorded correctly in Torgsoft and, if PECR is used, the corresponding fiscal receipt has been generated.

If the bank transaction has already been completed, do not repeat it simply because the next step in the software was not completed.

Key takeaways

If POS payments work but refunds fail, start by checking the refund operation settings rather than the sale itself: original payment → bank account → correct merchant ID → refund availability on the terminal.

One bank may require a separate refund merchant ID, while another may use a combined «Payment_Refund» merchant configuration. If your store operates with several Sole Proprietorships or merchant IDs, test each payment and refund scenario separately.


Програма обліку товару | Торгсофт



Facebook Instagram YouTube Twitter Google News Apple Podcast SounCloud

Add comment

Add comment
Thank you for your feedback! It will be published after being reviewed by a moderator.

Related articles