Kako izgleda HUB-3 uplatnica?

Autor: 6 min čitanja

Kad kupac na blagajni odabere plaćanje virmanom, na stranici narudžbe odmah se pojavljuje gotova HUB-3A uplatnica s PDF417 barkodom koju kupac može skenirati mobilnim bankarstvom.

Potvrda narudžbe s HUB-3 uplatnicom (virman)
Potvrda narudžbe s HUB-3 uplatnicom (virman)

Barkod je generiran unutar platforme

Barkod se ne naručuje od vanjskog servisa niti se kreira u zasebnom pregledniku. WebShopHR u vlastitom binariju gradi HUB-3A zapis, enkodira ga u PDF417 standard i vraća PNG sliku. To znači da uplatnica radi i kad je mreža opterećena, i da nema dodatnih troškova po generiranu sliku.

PDF417 enkoder je vendoriran unutar repozitorija, pa platforma ne ovisi o trećoj strani koja bi mogla promijeniti format, ukinuti rutu ili naplatiti poziv.

Točan HRVHUB30 zapis: 14 linija, bez grešaka

Hrvatski HUB-3A standard zahtijeva točno određen tekstualni zapis poznat kao HRVHUB30. WebShopHR ga gradi u 14 linija odvojenih isključivo znakom za novi red, bez znakova za povratak na početak retka. To je važno jer bi svako odstupanje u formatu učinilo barkod nečitkim u bankarskim aplikacijama.

Zapis počinje oznakom HRVHUB30, zatim slijedi valuta EUR, a potom iznos. Iznos se zapisuje u centima i popunjava se vodećim nulama do 15 znamenki. Na primjer, iznos od 45,00 EUR zapisuje se kao 000000000004500. Takva preciznost sprječava da banka pročita krivi iznos.

Model HR00 i poziv na broj od broja narudžbe

Model plaćanja na uplatnici je HR00, a poziv na broj sastavljen je od broja narudžbe i godine. Primjerice, ako je kupac napravio narudžbu broj 123 u 2026. godini, poziv na broj bit će 123-2026. Trgovac na izvodu zato odmah zna kojoj narudžbi pripada uplata, a kupac ne mora sam izmišljati poziv na broj.

Na uplatnici se također nalaze podaci o primatelju: naziv tvrtke, adresa, mjesto i IBAN. Platitelja sustav popunjava iz podataka koje je kupac ostavio na blagajni: imenom, adresom i poštanskim brojem s gradom.

Normalizacija znakova za pouzdanu čitljivost

Hrvatska imena i adrese često sadrže dijakritičke znakove kao što su č, ć, ž, š i đ, a IBAN se ponekad unosi s razmacima. PDF417 enkoder ne podržava sve znakove, pa WebShopHR prije enkodiranja:

  • uklanja razmake iz IBAN-a,
  • pretvara tekst u velika slova,
  • transliterira dijakritiku u osnovna latinička slova,
  • uklanja znakove koji nisu u ispisivom ASCII rasponu.

Na taj način barkod sadrži samo sigurne znakove koje svaki skener može pročitati, bez obzira na to kako je kupac unio adresu.

Tiha zona i tehnički parametri barkoda

PDF417 barkod nije samo matrica crnih i bijelih točaka. Uokolo se dodaje bijela tiha zona od najmanje dva modula, jer skeneri inače ne mogu pouzdano prepoznati rubove simbola. Sam barkod koristi 8 stupaca i sigurnosnu razinu 4: parametri preuzeti iz implementacije koja se pokazala čitljivom u praksi.

Barkod se može generirati u zadanoj ili proizvoljnoj rezoluciji, pa se lako prilagođava ekranu, e-mailu ili eventualnom ispisu.

Virman se nudi samo kad je uplatnica ispravna

Ako trgovac nije unio IBAN i naziv tvrtke, opcija plaćanja virmanom se uopće ne prikazuje na blagajni. Ako bi se unatoč tome pokušala generirati slika, sustav bi odbio i ne bi poslao neuplativ barkod s praznim primateljem.

Ista zaštita postoji i na samoj ruti slike: prije enkodiranja se provjerava postoji li valjan IBAN i naziv tvrtke. Time se sprječava da kupac dobije lijepu, ali beskorisnu sliku koju nigdje ne može platiti.

Isti barkod za kupca i za trgovca

Podaci koje kupac vidi na javnoj stranici narudžbe i oni koje trgovac vidi u CMS-u dolaze iz istog izvora. Poziv na broj, IBAN, primatelj i iznos su identični s obje strane, pa trgovac u banci ne traži uplatu po broju koji kupcu nikad nije prikazan. Uplatnica je dostupna na /narudzba/{token}/uplatnica.png za kupca i u detalju narudžbe za trgovca.

Što kupac dobije e-mailom?

Uz sliku na stranici narudžbe, kupac koji placa virmanom u potvrdnom e-mailu dobiva i tekstualne podatke za uplatu: primatelja, IBAN, model HR00, poziv na broj i iznos, te poveznicu na barkod. Ako zaboravi otvoriti stranicu, može uplatu obaviti izravno iz e-maila.

Više o temi: Fiskalizacija web shopa.

Česta pitanja.

Zašto kupac ne mora sam pisati poziv na broj?

Jer ga sustav sam sastavlja od broja narudžbe i godine, u formatu HR00 {broj}-{godina}. Kupac samo skenira barkod, a trgovac na izvodu odmah zna kojoj narudžbi uplata pripada.


Radi li uplatnica bez interneta ili vanjskih servisa?

Da. Barkod se gradi i enkodira unutar WebShopHR binarija, bez poziva vanjskom servisu. To znači da generiranje ne ovisi o dostupnosti trećeg servisa niti nosi dodatan trošak po sliku.


Hoće li banka pročitati barkod ako adresa ima č, ć ili š?

Da. Prije enkodiranja se hrvatska dijakritika transliterira u osnovna latinička slova, IBAN se čisti od razmaka, a znakovi izvan ispisivog ASCII raspona se uklanjaju. Barkod ostaje čitljiv u svakoj bankovnoj aplikaciji.


Zašto ponekad ne vidim opciju plaćanja virmanom?

Virman se prikazuje tek kad trgovac u postavkama unese IBAN i naziv tvrtke. Bez tih podataka opcija se uopće ne nudi kupcu, umjesto da mu se pošalje neuplativa uplatnica bez primatelja.


Gdje mogu ponovno pronaći uplatnicu ako izgubim e-mail?

Na javnoj stranici narudžbe, na adresi /narudzba/{token}/uplatnica.png. Isti podaci vidljivi su i trgovcu u detalju narudžbe u CMS-u.

Povezani vodiči.

Otvori vlastiti webshop u par minuta.

Besplatan paket traje bez roka i ne traži karticu.