Kako u isti katalog staviti artikle, usluge i digitalne proizvode?
Jedno od prvih pitanja koje trgovac postavi jest: može li se u isti katalog smjestiti fizički artikl, usluga i digitalni proizvod, a da svaki od njih ima drugačija pravila zalihe, dostave i naplate? WebShopHR to omogućuje jednim modelom u kojem se vrsta artikla tretira na razini zapisa, a ne kao zasebni modul.

Tri vrste artikala u jednoj tablici kataloga
Baza podataka razlikuje dvije osnovne vrste: product i service, a u sučelju se prikazuju kao tri oznake: Artikl, Usluga i Digitalni proizvod (Digitalni proizvod dijeli vrstu product s Artiklom, samo uz posebnu oznaku za datoteku umjesto paketa). Artikl nosi zalihu, usluga je uvijek dostupna jer se ne šalje poštom, a digitalni proizvod nema fizičku isporuku.
Ova kombinacija omogućuje da u jednom katalogu istovremeno žive knjige koje se šalju, zamatanje poklona kao usluga i e-knjige koje se preuzimaju.
Add-on usluge na blagajni
Usluge mogu djelovati i kao dodatna opcija na blagajni. Primjerice, trgovac može ponuditi „Zamotaj u poklon“ uz naknadu. Sustav dopušta da takvu uslugu kupac označi checkboxom tek ako je artikl u katalogu označen kao usluga. Ograničenje je na razini baze: dodatak ne može postati običan artikl, pa se slučajno ne može proglasiti pogrešna vrsta artikla.
Zaliha i prodaja u minus: zadnja jedinica se ne može prodati dvaput
Svaki fizički artikl ima vlastitu zalihu, a uz njega postoji i opcija „dozvoli prodaju u minus“. Kad je ta opcija uključena, artikl se može naručiti iako je zaliha na nuli. Idealno za robu po narudžbi.
Kad opcija nije uključena, baza u istom atomskom upitu provjerava ima li dovoljno komada i tek onda ih oduzima. Time se sprječava da dva paralelna kupca kupe posljednji artikl istovremeno ili da se proda više nego što postoji na skladištu.
Integracijski test provjerava da pedeset istovremenih kupaca ne može spustiti zalihu ispod nule. Zaliha završi na točno nuli, nikad u minusu.
Varijante s vlastitim SKU-om, cijenom i zalihom
Artikl može imati varijante poput veličine ili boje. Svaka varijanta nosi vlastiti SKU, može imati vlastitu cijenu koja prebija osnovnu i vlastitu zalihu. Ako jedna varijanta ponestane, a druge imaju zalihu, artikl ostaje u prodaji, a prazna varijanta se onemogućuje u padajućem izborniku na stranici artikla. Oznaka „Nema na zalihi” pojavljuje se tek kad su sve varijante prazne. Kod artikla bez varijanti gleda se izravno njegovo stanje.
Digitalni proizvodi bez javne rute
Digitalni artikl se uploada kao datoteka veličine do 100 MiB. Datoteka se sprema u MinIO, ali nema javnu rutu poput slika. Jedini način da kupac dođe do nje je jednokratni token koji se izdaje tek kad narudžba postane plaćena. Svaki digitalni artikl može se preuzeti najviše pet puta, nakon čega poveznica prestaje raditi s jasnom porukom da su preuzimanja iskorištena.
Ako je u košarici isključivo digitalna roba, blagajna preskače unos adrese i dostavnu opciju, a pouzeće se ne nudi jer nema što uručiti.
Zaliha po lokacijama i „web skladište“
Trgovac s više poslovnica ili skladišta može pratiti zalihu po lokacijama. Količina je pohranjena kao broj s tri decimale, pa sustav podržava i vaganu robu: kilograme, litre ili metre. Jedna od lokacija može biti označena kao web skladište, a prebacivanje se obavlja jednim klikom. Tada se stanje te lokacije odmah preslikava u prodajnu zalihu artikala bez varijanti, a sustav vraća broj artikala kojima je ažurirano stanje. Artikli s varijantama zalihu dobivaju drukčije: zbrajanjem stanja sa svih poslovnih prostora, neovisno o tome koja je lokacija označena kao web skladište.
Stabilni URL-ovi i povijesni podaci
Slug se postavlja samo pri kreiranju artikla i ne mijenja se prilikom sinkronizacije s Arges ERP-om. To znači da URL-ovi kategorija i artikala ostaju stabilni nakon svake sinkronizacije. Kad nastane narudžba, njezin naziv, naziv odabrane varijante i cijena po komadu se snimaju u stavke narudžbe, pa kasnija promjena ili brisanje artikla ne dira povijesnu narudžbu.
Kategorije, slike i SEO
Kategorije imaju ručni redoslijed i vlastita SEO polja: naslov i opis. Ako se kategorija obriše, artikli se ne brišu zajedno s njom. Slike se dodaju po artiklu s alt tekstom i rednim brojem, a CMS javlja ako postoji aktivni artikl bez alt teksta na slici, što pomaže u potpunosti kataloga i pristupačnosti.
Zaključak
Isti katalog stoga može sadržavati fizičke artikle, usluge, digitalne proizvode i dodatne usluge na blagajni. Svaki od njih ima prilagođeno ponašanje oko zalihe, dostave i naplate, a promjene u katalogu ne utječu na povijesne narudžbe.
Više o temi: Katalog i zalihe.
Česta pitanja.
Mogu li imati artikl, uslugu i e-knjigu u istoj kategoriji?
Da. Vrsta artikla se određuje na razini zapisa u bazi ("product" ili "service"), plus posebna oznaka za digitalni artikl. Sve tri vrste mogu živjeti jedne pored drugih u istom katalogu i istoj kategoriji.
Mogu li ponuditi zamatanje poklona kao dodatnu opciju na blagajni?
Da, ali samo ako je taj dodatak u katalogu označen kao usluga. Baza ne dopušta da običan artikl postane checkout add-on.
Prodaje li se artikl dok mu je zaliha na nuli?
Samo ako je uključena opcija "dozvoli prodaju u minus". Bez nje atomski SQL upit provjerava dostupnu količinu i odbija narudžbu čim zalihe ponestane, čak i kod pedeset istovremenih kupaca.
Mogu li kupci preuzeti digitalni proizvod prije plaćanja?
Ne. Token za preuzimanje izdaje se tek nakon što narudžba postane plaćena, a svaka poveznica za preuzimanje vrijedi najviše pet puta.
Utječe li brisanje artikla na već izdane narudžbe?
Ne. Naziv artikla, naziv varijante i cijena po komadu snimaju se u stavku narudžbe u trenutku kupnje, pa kasnija promjena ili brisanje artikla ne dira povijesnu narudžbu.