Telegram bot za proveru kompletacije porudžbine po otpremnici i fotografijama robe

2026-04-04

← Nazad na blog

Klijent je imao operativni problem u kompletaciji porudžbina: deo porudžbina je izlazio sa greškama, što je vodilo ka povratima, dodatnoj poštarini i dodatnom opterećenju tima.

Biznis cilj je bio jasan: automatizovati proveru ispravnosti kompletacije pre slanja. Zaposleni fotografiše otpremnicu i robu na stolu (sa vidljivim šiframa/artiklima), a sistem automatski proverava da li se stvarna kompletacija poklapa sa dokumentom.

Šta je bilo važno za biznis

  • Smanjiti udeo pogrešno kompletiranih porudžbina pre isporuke kupcu.
  • Smanjiti troškove povrata i ponovnog slanja.
  • Ubrzati kontrolu kvaliteta bez posebnog kontrolora za svaku porudžbinu.
  • Učiniti proveru transparentnom i standardizovanom za celu smenu.
  • Dobijati zaključak brzo, u istom kanalu u kom zaposleni već rade.

Ključna ideja: umesto ručne provere „okom“, uvedena je automatska verifikacija. OpenAI je odvojeno parsirao otpremnicu i odvojeno prepoznavao robu/etikete sa fotografija, a zatim vraćao strukturisan zaključak o ispravnosti kompletacije.

Ako imate sličan zadatak (kontrola kompletacije, fotografije robe i otpremnice, provera pre slanja) i želite da smanjite operativne gubitke, detalje možete poslati kroz brif.

Pošalji brif

Šta je bilo urađeno

  • Sastavljen je workflow koji prima paket fotografija: otpremnica + roba sa vidljivim šiframa/artiklima.
  • Podešen je OpenAI analizni korak sa promptom specifičnim za proveru kompletacije.
  • Implementirana je odvojena obrada: posebno otpremnica, posebno stvarna roba na fotografijama.
  • Formiran je strukturisan JSON odgovor sa zaključkom: kompletacija je ispravna ili nije.
  • Implementiran je Telegram bot koji vraća jasan status provere za svaki set fotografija.
  • Obrađeni su scenariji grešaka: loš kvalitet slike, nečitljive šifre/artikli, nepotpun set fotografija.

Rezultat u praksi

U operativnom toku provera kompletacije je postala brža i ujednačenija: zaposleni šalje fotografije, a bot vraća zaključak provere.

  • Provera pre slanja više nije zavisila samo od pažnje konkretnog zaposlenog.
  • Uveden je jedinstven format odluke: „kompletacija ispravna / neispravna“ sa strukturisanim detaljima.
  • Smanjen je rizik propuštenih grešaka koje vode do povrata i dodatne logistike.
  • Tim je dobio alat koji se uklapa u postojeći Telegram proces bez posebnog interfejsa.

Po radnoj statistici, oko 90% provera je vraćalo zaključak „kompletacija ispravna“. Preostalih 10% je u većini slučajeva takođe bilo ispravno, ali je zahtevalo pažnju zbog OCR grešaka ili nedostatka čitljivih šifri/artikala na fotografijama. Time je pažnja zaposlenih preusmerena sa potpune provere svih porudžbina na ciljanu proveru tih 10%.

Snimak Telegram bota: poslata je galerija fotografija, a bot vraća status kompletacije po fotografiji

Slika 1. Interfejs Telegram bota u realnom toku: šalje se galerija, bot vraća rezultat provere po svakoj fotografiji.

Ekonomika provere kroz OpenAI

Pre pakovanja rešenja u Telegram bot, stvarni trošak obrade je posebno izmeren u test okruženju. To je omogućilo da se klijentu unapred da procena cene obrade jedne fotografije i predvidi budžet za operativni obim.

OpenAI panel troškova: 92 zahteva i ukupno 0.51 dolara u testnom okruženju

Slika 2. Test trošak OpenAI: 92 zahteva, $0.51. Na toj osnovi je procenjena cena obrade jedne fotografije pre produkcionog puštanja.

Zašto je izabran Telegram

Tim je već radio u Telegram konturi, pa bi poseban web interfejs na startu bio nepotreban sloj. Verifikacija je ugrađena direktno u postojeći proces, bez dodatnog obučavanja i bez prebacivanja između sistema.

Tehnički detalji

Ispod je tehnički okvir koji se pokazao praktičnim za skaliranje na slične zadatke verifikacije dokumenata i fotografija.

1. Redosled implementacije: prvo n8n, pa Telegram bot

  • Prva faza je bila poseban workflow sastavljen i testiran u n8n.
  • Nakon potvrde tačnosti i logike sa klijentom, isti tok je upakovan u Telegram bot.
  • Ovaj pristup je brzo potvrdio biznis hipotezu bez ranog povećanja složenosti interfejsa bota.

Snimak n8n testnog okruženja za proveru workflow-a kompletacije

Slika 3. n8n testni stand na kome je logika proverena pre pakovanja u Telegram bot.

2. Tok obrade

  1. Zaposleni šalje botu paket fotografija: otpremnica i roba na stolu sa vidljivim šiframa/artiklima.
  2. Slike se šalju u OpenAI sa promptom za verifikaciju kompletacije.
  3. Model odvojeno izvlači podatke iz otpremnice i odvojeno prepoznaje robu/etikete.
  4. Radi se poređenje „dokument vs stvarno stanje" po šiframa i stavkama.
  5. Na izlazu se formira strukturisan JSON sa zaključkom o ispravnosti kompletacije.
  6. Telegram bot vraća status provere zaposlenom za svaki set fotografija/porudžbinu.

3. Šta je validirano odvojeno

  • Čitljivost otpremnice i dovoljan obim podataka za izdvajanje stavki.
  • Čitljivost šifri/artikala na fotografijama robe (etikete, oznake, ugao snimanja).
  • Kompletnost seta fotografija za konkretnu porudžbinu.
  • Prazna ili niskokonfidencijska prepoznavanja su slata na ručnu proveru.

4. Uloge korisnika i pristup Telegram komandama

  • Implementirana je kontrola pristupa kroz whitelist korisnika.
  • Administratorima je omogućeno upravljanje whitelist-om (dodavanje/uklanjanje/ažuriranje pristupa).
  • Administratorska statistika je bila dostupna kroz slash komande u Telegram-u.
  • Obični zaposleni nisu imali pristup admin komandama ni statistici.
  • Komanda /help je bila role-aware: admin vidi pun skup komandi, zaposleni samo operativne komande.

5. Dva bot okruženja: test i produkcija

  • Paralelno su vođena dva bota: test i produkcioni.
  • Svaki bot je imao sopstveno okruženje sa odvojenim podešavanjima i tokenima.
  • Izmene su prvo puštane na test bot i potvrđivane sa klijentom.
  • Posle potvrde, isti kod je deploy-ovan na produkcioni bot.

Zašto je to dobro u praksi: smanjuje rizik produkcionih kvarova, čini release predvidivim i omogućava potvrdu na realnim scenarijima pre puštanja. Za biznis to znači manje zastoja, manje rollback-a i stabilniji operativni tok kompletacije.

6. Praktične napomene za OCR i vizuelnu verifikaciju

  • U ovom slučaju kvalitet fotografije je uticao manje nego što se očekivalo; kritično je bilo da tekst ne bude rotiran za 90/180 stepeni.
  • Za pouzdano poređenje je važno da šifre/artikli na fotografijama budu vidljivi odvojeno i bez preklapanja.
  • Najbolji rezultat je dao hibrid: automatska provera + ručna provera spornih slučajeva.

7. Poseban challenge: obrada galerije fotografija u Telegram-u

Značajna složenost se pojavila kod obrade galerija: Telegram ne daje pouzdan mehanizam da se unapred zna koliko fotografija ima konkretna galerija, niti postoji eksplicitan signal „galerija je završena" u trenutku prijema pojedinačne slike.

Zbog toga je složenija višedretvena obrada: potrebno je korektno grupisati fotografije, ne pokretati prevremenu analizu nepotpunog seta i istovremeno ne držati nepotrebne lock-ove za druge ulazne porudžbine. U radnom konturu to je zahtevalo posebnu logiku baferovanja i sinhronizacije pre finalne provere kompletacije.

8. Eksperiment sa dvoprolaznom šemom (preko n8n)

Posebno je testirana dvostepena logika u n8n: prvo čist OCR sa formiranjem JSON-a za otpremnicu i robu, a zatim poseban korak analize tog JSON-a za proveru kompletacije.

Ovaj pristup je dao slabiji rezultat. U praksi je model koji direktno vidi originalne fotografije imao bolji kontekst i davao tačniji zaključak u jednom prolazu. Zato je u radnom konturu zadržan jednoprolazni scenario: „fotografije -> analiza -> zaključak“.

9. Šta je važno pri prenosu ovog rešenja u drugi projekat

  • Prvo definisati standard fotografisanja za zaposlene (ugao, osvetljenje, vidljivost šifri/artikala).
  • Eksplicitno projektovati obradu grešaka i ponovnog slanja, a ne samo happy path.
  • Pratiti metrike od prvog dana: udeo grešaka u kompletaciji, udeo ručnih provera i vreme provere po porudžbini.

Po potrebi, u sledećoj iteraciji mogu se dodati dodatni screenshot-ovi interfejsa bota, primer JSON strukture i fiksirane pre/posle metrike kao kompaktan case paket za freelancing prijave.