Blog: eporezi serbia linux

Eporezi on linux

Setting up Serbian e-gov on Linux is basically the "final boss" of Ubuntu configuration.

Guide: Setting up ePorezi (SmartBox) on Ubuntu

This guide explains how to set up the Serbian Tax Administration (ePorezi) portal on Ubuntu using the community-developed Baš Čelik instead of the buggy official Java application.

1. Prerequisites

Ensure your smart card reader hardware is recognized by the system:

sudo apt update
sudo apt install pcscd libccid pcsc-tools
sudo systemctl enable --now pcscd

verify

sudo systemctl status pcscd

if you have a card inserted you can read it

pcsc_scan

2. Install Baš Čelik (The Interface)

Instead of the official SmartBox, we use Baš Čelik because it is native and stable.

  1. Download the latest bas-celik.linux.amd64.tar.xz from GitHub Releases.
  2. Extract the archive and enter the directory.
  3. Install it system-wide:
sudo make install

3. Install the MUP Driver (The Middleware)

The official trustedge package often lacks the necessary .so library for Linux. Use the open-source alternative:

  1. Download libsrb-id-pkcs11.so from srb-id-pkcs11 Releases.
  2. Move it to a permanent location:
mkdir -p ~/lib
cp libsrb-id-pkcs11.so ~/lib/

4. Configuration

  1. Open Baš Čelik.
bas-celik
  1. Click the Gear Icon (Settings).

Image without description

  1. SmartBox Mod: Toggle to ON. (This allows the app to mimic the official ePorezi software).

  2. PKCS#11 Moduli: Click + and select the path: /home/YOUR_USER/lib/libsrb-id-pkcs11.so.

  3. Restart the app.

Image without description

6. How to Log In

  1. Open Baš Čelik and ensure it started in SmartBox mode.
  2. Leave the app running in the background.
  3. Go to eporezi.purs.gov.rs.
  4. Click Пријава путем SmartBox апликације.
  5. Enter your PIN in the Baš Čelik popup.

Browser Note (SSL Fix)

If the browser doesn't see the app, go to https://localhost:20806 in a new tab, click Advanced, and Proceed to localhost (unsafe). This whitelists the local communication.