No results found

Try a different search query

Popular searches:

Add to Cart

Cart

You have no purchases yet

Browse Marketplace
Original Subtotal:
Product discounts:
Quantity Discount:
Total:
View Cart

Fiscalization of receipts in OpenCart: PRRO Checkbox and Vchasno.Kasa

When an online store on OpenCart needs a fiscal receipt, how to connect PRRO Checkbox or Vchasno.Kasa and not print the receipt twice. Comparison of modules.

7 min read
306
0
Fiscalization of receipts in OpenCart: PRRO Checkbox and Vchasno.Kasa

The buyer paid for the order with a card on the website, and the store now needs to issue them a fiscal receipt. When there are ten orders a day, the manager transfers them to the cash register cabinet manually. With fifty orders, errors appear: delivery doesn't get into the receipt, the coupon isn't counted, one order is rung up twice. Below is a breakdown of when a receipt is mandatory, what the fiscalization module does in OpenCart 3, and how two such modules from the OpenCart Code marketplace differ.

 

When an online store needs a fiscal receipt

The obligation depends on the payment method. The fact that the sale goes through the website doesn't change anything. Law No. 265/95-VR requires settlements to be conducted through a cash register or mobile cash register and to issue the buyer a receipt, either paper or electronic.

Payment method

Who issues the receipt

Card on the website via payment gateway (LiqPay, WayForPay, etc.)

Store, at the moment of payment

Payment link or QR code for acquiring

Store, at the moment of payment

Transfer to FOP account by IBAN

Receipt not required

Cash or card to your courier

Store, during settlement

Cash on delivery, which the carrier accepts on their behalf and fiscalizes themselves

Carrier

Delivery by a courier who does not participate in the settlement

Store, no later than when the buyer receives the goods

Refund for a fiscalized sale

Store, return receipt

What else you should know:

  • FOP of the first group are exempt from cash registers/mobile cash registers.
  • LiqPay receipt, bank statement, or terminal confirm payment. They do not replace a fiscal receipt.
  • For cash on delivery, open a contract with the carrier and clarify who accepts the money from the buyer and on whose behalf transfers it to you. This determines whether you need to issue your own receipt.
  • Preferential fines for FOP on unified tax were in effect until July 31, 2025. Now, for an unconducted settlement or failure to issue a receipt, the fine is 100% of the transaction amount, and for each subsequent violation 150%.

Check an atypical payment scheme (partial prepayment, marketplace, aggregator) with your accountant before setting up the module.

 

What the mobile cash register module automates in OpenCart

 

Without integration, the manager opens an order in the admin panel, then the cash register cabinet, and manually transfers goods, quantities, prices, discounts, delivery, and payment method. The module takes this data from the order, transfers it to the mobile cash register service API, and saves the fiscal receipt number in the order.

 

Before purchasing, check if the module can do this:

  • Calculate the amount like a payment gateway. Coupons, discounts, delivery, and rounding should give the same amount that was charged to the buyer's card.
  • Not ring up the receipt twice. You can change the order status several times, and a second sales receipt for the same order will then have to be processed as a return.
  • Make a return receipt linked to the sales receipt.
  • Manage shifts. Opening, closing, and Z-report every day when there were settlements.
  • Keep a log. When the cash register API returns an error, you should see its text, not find out from the buyer that the receipt didn't arrive.

Checkbox PRRO module for OpenCart 3

 

Checkbox PRRO module from developer SSHEVA connects your OpenCart 3 store to the Checkbox service. Receipts can be issued manually from the admin panel or automatically on a schedule. Launch rules are set by order status, payment method, and delivery method.

The module supports multiple cash registers and cashiers, and each profile has its own settings and rules. The shift is opened and closed from the admin panel, where X- and Z-reports are also available. The module calculates amounts, discounts, surcharges, and taxes from the order and verifies them against the amount in Checkbox. Cash settlements are rounded according to NBU rules.

 

The receipt can be sent to the buyer via email, Viber, or SMS. Other features include:

  • cash service intake and disbursement;
  • checking the status of issued receipts and returns;
  • importing archived receipts previously issued by another tool, so all history is stored in one place;
  • encryption of account details and differentiation of administrator rights;
  • splitting a large order into multiple receipts by Nova Poshta (New Mail) invoices (experimental option).

If you have the Nova Poshta Delivery module with bulk TTN creation, Checkbox PRRO works with it as a pair.

The module is installed by the developer on your site to check compatibility with the theme and server. Before purchasing, message them privately and describe your payment scheme.

 

Vcasno.Kasa module for OpenCart 3

 

Vcasno.Kasa module from Yevhenii Lysenko issues sales and return receipts through Vcasno.Kasa mobile cash register from the OpenCart admin panel.

The return receipt is compiled by the module from the data that went into the sales receipt. After the sale, the manager could edit the order: remove a product or change the price. The return will still repeat what was actually sold.

The module opens and closes the shift along with the Z-report. If the shift was already opened in the Vcasno cabinet, the module will see this and won't open another one.

All calls to the cash register are collected on a separate history page. It shows the date, fiscal number, document number, operation type, order, amount, status, and error text. Details of each request are stored in JSON, so the developer can find the cause of the failure without access to the cash register cabinet.

Version 2.0.1 has a test mode and protection against duplicate receipts. The interface is available in Ukrainian, English, and Russian. The license is activated automatically, and the module can be installed independently.

 

Checkbox or Vcasno.Kasa: module comparison

Parameter

Checkbox PRRO

Vcasno.Kasa

Mobile cash register service

Checkbox

Vcasno.Kasa

OpenCart / ocStore

3.0.0–3.0.5

3.0.0–3.0.5

PHP

7.4+

7.4+

ionCube Loader

15+

15+

Receipt launch

manually or on schedule, rules by status, payment, delivery

from OpenCart admin

Multiple cash registers and cashiers

yes

not specified

Shift

opening, closing, X- and Z-reports

opening, closing, Z-report, checking already open shift

Returns

yes

yes, based on sales receipt data

Receipt sending

email, Viber, SMS

not specified

Operations log

checking receipt statuses

separate history page, JSON details

Test mode

yes

yes

Protection against duplicate receipt

yes

yes

Split by Nova Poshta TTN

yes, experimentally

no

Module languages

Ukrainian, English

Ukrainian, English, Russian

Installation

developer

self-service

Price (September 2026)

1,565 ₴

894 ₴ on sale, regular 1,565 ₴

First, check which mobile cash register service your cash register and cashiers are already registered with. The module only connects to it, so switching to another service rarely makes sense.

If the service hasn't been chosen yet, base your decision on your needs. Multiple cash registers, sending receipts via Viber or SMS, many Nova Poshta shipments with splitting into multiple TTNs are better covered by Checkbox PRRO. For a store with one cash register that needs test mode and detailed error logging, Vcasno.Kasa is sufficient.

 

How to enable fiscalization in OpenCart

  1. Register the mobile cash register. Submit form 20-OPP for the business entity, register the cash register and cashiers. The name and address of the business entity on the receipt must match the data in the State Tax Service.
  2. Get the connection details. In the Checkbox or Vcasno.Kasa cabinet, find the cash register and cashier data to work through the API.
  3. Check the hosting. Both modules are encoded with ionCube, so the server must have ionCube Loader 15 or newer. The version is shown in phpinfo().
  4. Install and configure the module. Set the statuses and payment methods by which the receipt is issued. Don't add IBAN payment and cash on delivery that the carrier fiscalizes to the rules.
  5. Test with a sample order. Take an order with a coupon, discount, and paid delivery. The receipt amount must match the payment amount to the cent. Then process a return.
  6. Set up shift closing. A Z-report is needed every day there were settlements.

Common mistakes in fiscalization in OpenCart

  • Receipt for an unpaid order. The rule "issue receipt when status is 'Processing'" will also trigger for an order still waiting for IBAN transfer.
  • Receipt amount doesn't match payment. Most often, delivery doesn't get into the receipt or the coupon is applied after rounding.
  • Return from an edited order. The manager changed the order contents, and now the return receipt doesn't match the sales receipt.
  • Canceling an order without issuing a refund receipt. The manager processes the refund via the payment service dashboard and sets the status to "Cancelled" but does not issue a refund receipt. Since the original sales receipt has already been transmitted to the State Tax Service, every refund requires a refund receipt that references the original transaction.
  • Unclosed shift. Without a Z-report for a day with settlements, the cash register violates mobile cash register procedure.

Frequently asked questions

  • Do I need a mobile cash register if payment goes through LiqPay or WayForPay?
  • Yes. Card payment through a payment gateway on the website is considered a card settlement, and the store issues a receipt at the moment of payment.
  • Do I need a receipt if the buyer pays by IBAN details?
  • No, if the buyer transfers money themselves to the current account of an FOP or company without card acquiring.
  • How does the buyer receive an electronic receipt?
  • The receipt is sent to email or phone, shown via QR code or in a personal account, or included in the shipment on paper. Paper and electronic receipts have the same legal force.
  • What if the buyer doesn't pick up the cash on delivery package?
  • If you didn't receive the money and didn't issue a sales receipt, a return receipt is not needed. Save the carrier's documents about the shipment return. If the sales receipt was already issued, submit a return through the mobile cash register on the day you receive documents about the return from the delivery service.

Sources

Recommended Products

Checkbox PRRO Module for OpenCart 3 - Receipts, Cashiers and Profiles
New
SSHEVA Order Management

Checkbox PRRO Module for OpenCart 3 - Receipts, Cashiers and Profiles

Fiscalization without hassle: automatic Checkbox receipts directly from OpenCart

5.0
2
reviews
5
sales
1 570 ₴
On time.Cash register for OpenCart 3: fiscal receipts PRRO
New
Y Yevhenii Lysenko Order Management

On time.Cash register for OpenCart 3: fiscal receipts PRRO

Sales and return receipts through PRRO Timely.Kasa in a couple of clicks!

1 570 ₴ -43%
897 ₴
OCTemplates

OCTemplates

OCTemplates — команда розробників та дизайнерів з України з досвідом у веброзробці з 2002 року. З 2015 року спеціалізуються на шаблонах та модулях для OpenCart: швидких, SEO-оптимізованих і готових до роботи в реальних умовах e-commerce. Продукти OCTemplates використовують тисячі інтернет-магазинів у Європі, Азії, Північній Америці та Австралії. Кожен покупець отримує не лише готове рішення, а й технічну підтримку та консультації з налаштування магазину.

articles
16
views
9,319
likes
13
followers
0

Related Posts

Comments (0)

Replying to

Please log in to leave a comment

Log In

No comments yet

Be the first to comment on this article!

We use cookies

We use cookies and similar technologies to improve your experience, analyse traffic, and show personalised ads. Read our Cookie Policy for details.