Bančni sklici

Rotty

Pripravnik
22. apr 2010
459
0
16
Črnuče
A kdo ve kje bi si lahko več prebral glede dodeljevnja bančnih sklicev, ki jih dobimo na računu.
Natančnejše me zanima, da kako bi stranka lahko pridobila sklic še preden se mu izstavi račun (pač narav našega dela). A bi se to lahko zgeneriralo preko kakšnega spletnega generatorja, plačalo račun, mi bi pa preko UJP pregledali ustreznost plačila, ki bi ga interno povezali z našim sistemom. Kako sploh deluje sistem sklicev?

Hvala!
 

Rotty

Pripravnik
22. apr 2010
459
0
16
Črnuče
Hvala bom pregledal ta obsežen standard. Da pa ne odkrivam tople vode...a pozna kdo kakšen organ(izacijo)/podjetje, ki zaračunava vloge/storitve pred izedbo samo in katero ima "generator" sklicev?
 

Jurij

Pripravnik
22. sep 2007
821
0
16
Sklic si lahko brez težav "zgeneriraš" sam, pravila so dokaj enostavna.

Link
Edino, kar zahteva nekaj znanja za sprogramirat je formiranje kontrolne številke, da je ne boš vsakič računal na pamet. Če se odpoveš kontroli, lahko uporabljaš model sklica 00, tam lahko potem uporabljaš poljubne številke brez kontrolne, po navodilih iz linka seveda.
 
Nazadnje urejeno:

Rotty

Pripravnik
22. apr 2010
459
0
16
Črnuče
@Jurij: Ja neki takšnega bomo morali narest. Definitivno bo morala biti kontrolna cifra, ker brez nje nismo za sledljivost naredili nič .

@Krimec: V organizaciji z letnim prometom par m€, žal ne moram uporabiti nek online generator.

Mislil sem, da ima kdo v svojem "portfelju" že narejeno eno profi obliko sistema. Pa ja en bomo mi (spet) prvi
smile-1.gif
 

Pepe

Guru
20. sep 2007
13.484
5.027
113
Citat:
Uporabnik Rotty pravi:
Pa ja en bomo mi (spet) prvi
smile-1.gif
Dvomim, da boste prvi, ker ima to vsaka sw hiša, ki ima neko vrsto plačilnega prometa. Saj to ni projekt za mio € temveč za nekaj ur.
 

Jurij

Pripravnik
22. sep 2007
821
0
16
Citat:
Uporabnik Rotty pravi:
@Jurij: Ja neki takšnega bomo morali narest. Definitivno bo morala biti kontrolna cifra, ker brez nje nismo za sledljivost naredili nič .

@Krimec: V organizaciji z letnim prometom par m€, žal ne moram uporabiti nek online generator.

Mislil sem, da ima kdo v svojem "portfelju" že narejeno eno profi obliko sistema. Pa ja en bomo mi (spet) prvi
smile-1.gif
1. kontrolna številka je tam zato, da se uporabnik ne zmoti pri vnosu sklica.
Npr. slic 00 1234567 je čisto v redu, ker model sklica 00 nima kontrolne številke, če bi namesto 00 uporabil npr. 12, kar se pogosto uporablja pri UPN obrazcih, ker je bil to včasih default model za položnice, pa bi sklic izgledal 12 1234567k, kjer je namesto k kontrolna številka,ki je izračunana iz ostalih številk. Saj je to vse razloženo v tistem linku, ki sem ti ga dal.

To ima drugače narejeno vsako podjetje, ki ima računalniško obdelavo izpiska, torej vsako podjetje, ki ne dela tega na roko. Jaz imam tudi rešitev narejeno za to v našem softverju, to predstavlja verjetno 0,0000001% aplikacije
smile-1.gif
 
Nazadnje urejeno:

Rotty

Pripravnik
22. apr 2010
459
0
16
Črnuče
Hvala za link, bistvo kontrolne številke mi je od včeraj jasen...seveda tudi, da sklic ni ravno pošiljanje človeka na Mars. Zanimajo me samo finese.

Kam pa potem povezuješ podatke za sklic za bančno uporabo? Z/preko ujpnet?
 

Jurij

Pripravnik
22. sep 2007
821
0
16
Partnerju izdaš plačilni nalog ali mu kakorkoli sporočiš:
- TRR
- podatke o prejemniku (ti)
- namen plačila
- sklic
- znesek
- datum valute (kdaj pričakuješ plačilo najkasneje)
- koda namena (4 mestna po šifrantu, npr. OTHR, ELEC)

Ko partner plača, dobiš od banke informacijo o prilivu na računu, po navadi je to datoteka izpiska. Datoteka je lahko v formatu TKDIS (star, v opuščanju), ZBSxml (slovensko slepo črevo od standarda, v opuščanju) ali ISO20022 (v uvajanju).
Za vsako transakcijo imaš cel kup podatkov, za primer TKDISa je bil samo datum, znesek in sklic, ostala dva imata tudi vse ostale podatke o plačniku, kar pomaga, če ti sklic ne enolično identificira terjatve.
Za to transakcijo ti sklic pomeni neko številko, ki je enolična za določeno terjatev. Npr., ko plačaš elektriko, Elektro Ljubljana dobi 30€ s sklicem 1234567, oni točno vejo, da sklic 1234567 spada k decembrskem računu za elektriko za Janeza Potratnega, medtem ko ima Micka Varčna plačilo 15€ s sklicem 5347892, kar enolično identificira njen račun.
Pogosto je praksa, da je sklic enostavno številka izdanega računa + kontrolna številka, ali recimo za vodo številka števca ipd.
 

Rotty

Pripravnik
22. apr 2010
459
0
16
Črnuče
Full hvala...sploh za info glede novega ISO standarda! Sam povezava med sklicem (kakšno predpisano obliko ima, mi je s pomočjo tvojega linka zdej mnogo bolj jasno) in bazo sklicev mi še vedno ni jasna. Torej recimo, da imam na naši spletni strani generator sklicev, ki omogoči stranki, da pridobi sklic. S čim moram povezati ta generator? Ker, ko jaz napačno izpolnim sklic na plačilu računa za recimo plin, mi klik zavrne plačilo, ker sklic ni pravilen. Kje oz. kdo skrbi za bazo sklicev, ki čakajo na plačilo?
 

Jurij

Pripravnik
22. sep 2007
821
0
16
Vsak sam.
Če boš dal osebi A sklic 1234 in osebi B enak sklic, ne boš vedel čigavo plačilo si dobil. Ti si tisti, ki mora osebi dat točno določen sklic in si pri sebi zabeležiti, da ta sklic pomeni to osebo ali ta račun.
Gremo zopet na Elektro. Oni ti izdajo položnico s sklicem 1234, v svoj sistem si zabeležijo, da sklic 1234 pomeni decembrski račin za Janeza. Ko izdajo račun Micki, naredijo nov sklic, ki v njihovem sistemu ne sme že obstajati, torej dobijo recimo sklic 1235, ga natisnejo na položnico in v svojem sistemu zapišejo, da sklic 1235 pomeni decembrski račun Micke.
Ko Janez plača položnico, banka pošlje konec dneva izpisek o vseh transakcijah na računu Elektru, ti vidijo, da je prišlo 30€ s sklicem 1234, poglejo v svoj sistem, čemu pripada sklic in najdejo, da je to račun od Janeza za december. Preverijo znesek, vidijo da štima, poknjižijo plačilo in označijo, da je Janezev račun za december plačan.

Skratka, sam moraš voditi evidenco, katere sklice si izkoristil, da se ti ne podvajajo, in komu sklici pripadajo.
Sklic lahko pomeni točno en račun, lahko pa določeno stranko, svojčas si za Mobitel dobil vedno isti sklic, oni so dobili plačilo, so vedli da je zate, niso pa vedeli katero položnico si plačal, če si jih imel več odprtih, predvidevam, da so vedno zapirali najstarejšo.
 
Nazadnje urejeno:

Jurij

Pripravnik
22. sep 2007
821
0
16
Seveda se lahko sklici podvajajo, noben tega ne preprečuje, moraš sam skrbet, da ne daš več osebam enakega sklica. Sklicev tudi ni neskončno mnogo, prej ali slej se ti podvoji, ampak č se ti podvoji po 10 letih ni nič hujšega, boš že vedel, da gre za račun elektrike za pretekli mesec, ne za leto 1998.

To, da ti banka ne sprejme določenega sklica pomeni, da je kontrolna številka napačna. Npr. Sklic 12 1234567 je skoraj sigurno napačen, model 12 predvideva kontrolno številko na zadnjem mestu, če greš na tisto stran višje gor, ti lahko izračuna pravilno kontrolno številko za sklic 123456, zdaj sem vtipkal not in dobil 0. Torej, sklic 12 1234567 je napačen, pravilen pa 12 1234560. Kontrolna številka se izračuna na podlagi preostalih številk, njen namen je ta, da če se zmotiš pri vtipkavanju sklica pri eni številki, ne gre več skozi preverjanje.
Zopet primer. Imaš sklic 12 1234560, vtipkaš pomotoma 12 1244560, banka vzame sklic 124456 in izračuna kontrolno številko, dobi 6, ti pa imaš kontrolno 0, nekaj ne štima in zavrne sklic.

Edit: popravljene kontrolke na dejansko pravilne
 
Nazadnje urejeno:

jurek1973

Guru
3. sep 2007
4.131
1.087
113
Pa še psevdo koda za računanje sklica po modulu 11.
Vhodni niz mora biti dolg točno 12 znakov, če ne drugega, dodaj vodilne 0.

Koda:
proc KsModul11(s string) integer
var sum, i integer
sum = 0
for i from  1 to s.Size()
	sum = sum+integer(s[ i ])*(14-i)
sum = 11-sum.mod(11)
if sum=11 then sum=0 endIf
if sum=10 then sum=0 endIf
return(sum)
 

Crypto

Pripravnik
26. jan 2011
49
6
8
ksz

Podani generator ne dela pravilno, in tudi dela ni ravno za nekaj ur kot pravi Pepe. Pri teh sklicih je miljon enih cak, tako da je potrebno pravila prebrati zelo natančno.
Omenjeni generator ima probleme z dolžino, npr model 12 ima 13 mestni sklic, generator pa pusti vnesti 13 številk, doda kontrolko in ti ponudi 14 mestni sklic, kar pri modelu 12 ne gre. Manjka tudi še nekaj modelov, npr modela 21 in 31.
Vsi modeli recimo niso na voljo, nekateri so rezervirani za proračunske uporabnike. Ti modeli so kar tricki, saj so vezani na določen tip transakcijskega računa, za vsak sklop sklica je predpisano kaj mora biti notri (davčne, konti, ...).

Z uvedbo UPN in SEPA so se poleg SI modelov pojavili tudi RF modeli, kjer so v sklicu lahko tudi črke.

Problem z generatorjem je ta, da mora biti zelo natančen. Če zafrkneš 1 cifro se lahko zgodi, da tisoče ljudi ne bo moglo plačati svojih stvari. Zdaj če izdajaš le sklice z modelom 12, potem je morda res dela za nekaj ur, če želiš narediti za vse tako kot je treba...bo pa malo več dela.
 

mojamura

Fizikalc
25. jul 2007
1.355
1
36
sLOVEnia
ksz


4 REFERENCA SI
Z referenco SI se omogoča nadaljnja uporaba modelov za sklic na številko odobritve in obremenitve, ki so bila opredeljena v Navodilu za oblikovanje in uporabo modelov za sklicevanje na številko obremenitve in odobritve v plačilnem prometu (ZBS, junij 2006).
Struktura reference SI:
- na 1. in 2. mestu: konstanta SI
- na 3. in 4. mestu: številka modela
- od 5. do 26. mesta: vsebina modela, ki je sestavljena iz največ 22 znakov, od tega do 20 številk in največ dva vezaja

Primer vizualnega zapisa: SI05 19-1235-84503
Primer elektronskega zapisa: SI0519-1235-84503



4.1 Pregled in vsebina osnovnih modelov za zapis reference plačnika oz. prejemnika plačila ter pojasnila za njihovo uporabo

Številka modela Vsebina modela (razdelitev polja in pozicija kontrolnih številk v modelu) Število sklopov ( P)
Obvezno Dovoljeno
00 P1 - P2 - P3 1 3
01 (P1 - P2 - P3) K 1 3
02 P1 - (P2) K - (P3) K 3 3
03 (P1) K - (P2) K - (P3) K 3 3
04 (P1) K - P2 - (P3) K 3 3
05 (P1) K - P2 - P3 1 3
06 P1 - (P2 - P3) K 2 3
07 P1 - (P2) K - P3 2 3
08 (P1 - P2) K - (P3) K 3 3
09 (P1 - P2) K - P3 1 3
10 (P1) K - (P2 - P3) K 2 3
11 (P1) K - (P2) K - P3 2 3
12 (P1) K 1 1
18 (P1) K - (P2) K - P3 2 3
19 (P1) K - (P2) K - P3 2 3
28 (P1) K - (P2) K - P3 2 3
38 (P1) K - (P2) K - P3 2 3
40 (P1) K - (P2) K - P3 2 3
41 (P1) K - (P2) K - P3 2 3
48 (P1) K - (P2) K - P3 2 3
49 (P1) K - (P2) K - P3 2 3
51 (P1) K - (P2) K - P3 2 3
55 (P1) K - P2 - P3 1 3
58 (P1) K - (P2) K - P3 2 3
99 0 0
Uporabnik sam izbere številko modela in število podatkov v vsebini modela, ki jih bo uporabljal za številčno označevanje reference. Številka modela je dvomestni podatek, ki ga uporabnik vpiše v polje referenca za predpono SI (primer v Prilogi 1) in tako določi način kontrole vsebine modela.
Vsebina modela je lahko izpisana z enim, dvema ali s tremi podatki (P1 - P2 - P3). Podatki so ločeni z vezajem. Dolžina enega podatka je omejena na 12 številčnih znakov, tako da vsi trije podatki skupaj nimajo več kot 20 številčnih znakov, ne glede na število uporabljenih vezajev (eden ali dva).
Izjema je model 12, kjer je dolžina podatka (P1) 13 znakov, vključno s kontrolno številko. Pri plačilnih nalogih z OCR vrstico je obvezna uporaba reference po modelu 12 (primer v Prilogi 1). Podatek P1 se v OCR vrstici zapiše z vodilnimi ničlami.
Če je vsebina modela izkazana z enim podatkom velja, da je to podatek P1, če je izkazana z dvema podatkoma, sta to podatka P1 in P2. Podatka P2 in P3 se vpišeta brez vodilnih ničel.



Kontrolna številka podatka (K) je zadnja številka v podatku ali v skupini podatkov in je njen sestavni del. Izračunana je po modulu 11.

4.2 Uporaba modela
Izbira številke modela je odvisna od odločitve uporabnika, kateri podatki (P) v informaciji morajo biti pod računalniško kontrolo (Pn)K.
Model 00 se uporablja, ko podatki nimajo kontrolne številke, vendar morajo ustrezati splošnim kontrolam, opisanih v točki 4.1.
Model 01 se uporablja, ko imajo podatki skupno kontrolno številko.
Model 02 se uporablja, ko imata podatka P2 in P3 ločeno kontrolno številko. Podatek P1 nima kontrolne številke.
Model 03 se uporablja, ko imajo podatki P1, P2 in P3 ločeno kontrolno številko.
Model 04 se uporablja, ko imata podatka P1 in P3 ločeno kontrolno številko. Podatek P2 nima kontrolne številke.
Model 05 se uporablja, ko ima podatek P1 kontrolno številko. Podatka P2 in P3 nimata kontrolne številke.
Model 06 se uporablja, ko imata podatka P2 in P3 skupno kontrolno številko. Podatek P1 nima kontrolne številke.
Model 07 se uporablja, ko ima podatek P2 kontrolno številko. Podatka P1 in P3 nimata kontrolne številke.
Model 08 se uporablja, ko imata podatka P1 in P2 skupno kontrolno številko. Podatek P3 ima ločeno kontrolno številko.
Model 09 se uporablja, ko imata podatka P1 in P2 skupno kontrolno številko. Podatek P3 nima kontrolne številke.
Model 10 se uporablja, ko ima podatek P1 ločeno kontrolno številko. Podatka P2 in P3 imata skupno kontrolno številko.
Model 11 se uporablja, ko imata podatka P1 in P2 ločeni kontrolni številki. Podatek P3 nima kontrolne številke.
Model 12 se uporablja, ko ima podatek P1 kontrolno številko in je dolžina podatka P1 skupaj s kontrolno številko največ 13 znakov. Podatka P2 in P3 nista dovoljena.
Modeli 18, 19, 28, 38, 40, 41, 48, 49 in 51 se uporabljajo, ko imata podatka P1 in P2 ločeno kontrolno številko. Podatek P3 nima kontrolne številke.
Model 55 se uporablja, ko ima podatek P1 kontrolno številko. Podatka P2 in P3 nimata kontrolne številke.

Model 58 se uporablja, ko imata podatka P1 in P2 ločeni kontrolni številki. Podatek P3 nima kontrolne številke. Uporablja se izključno za posle spremljanja upravljanja likvidnosti sistema enotnega zakladniškega računa.
Model 99 se uporablja brez podatkov P1, P2 in P3.

4.3 Izračun kontrole številke
Priporočeno je, da ponudniki plačilnih storitev preverjajo pravilnost izračuna kontrolne številke v referenci SI in na ta način preprečijo napake, ki lahko nastanejo pri vnosu podatkov.
V kolikor ponudnik plačilnih storitev plačnika pri kontrolnem izračunu kontrolne številke ugotovi, da je le ta napačna, plačilo izvrši do prejemnika plačila z nespremenjeno vsebino reference, razen če ni sklenjen drugačen dogovor s plačnikom.
Izračun kontrolne številke z uporabo modula 11, s primeri uporabe, je opredeljen v Prilogi 3.


5 REFERENCA RF
Referenca RF se uvaja s shemami SEPA za kreditna in debetna plačila po standardu ISO 11649:2009(E). Ponudniki plačilnih storitev bodo pri izvajanju plačilnih transakcij upoštevali pravila za kontrolo izračuna kontrolnih številk. Referenca RF omogoča uporabo številk ter malih in velikih črk, večjo kontrolo in s tem večjo točnost podatkov ter uporabo v celotnem SEPA območju, zato je njena uporaba priporočljiva.
Predvideva se, da bo referenca RF v prihodnje nadomestila že obstoječe nacionalne standarde na področju določanja referenc v različnih državah območja SEPA.
Struktura reference RF:
- na 1. in 2. mestu: konstanta RF
- na 3. in 4. mestu: kontrolna številka, izračunana po modulu MOD 97-10, ki je definiran v standardu ISO/IEC 7064
- od 5. do 25. mesta: zaporedje dovoljenih znakov*, ki določajo nek dokument (npr. faktura, pogodba ipd.); vezaji, presledki in drugi posebni znaki niso dovoljeni
*Dovoljeni znaki: številke od 0 do 9; male in velike črke od A do Z po kodni tabeli (UTF-8), z naborom znakov v latinici.

Primera vizualnega zapisa: RF71 2348 231
RF45 SBO2 010
Vizualno se referenca zapiše v sklopih po štiri znake (številke in/ali črke). Posamezen sklop štirih znakov je med seboj ločen s presledkom, zaradi lažjega branja in zapisa pri vnosu podatkov. Zadnji sklop znakov lahko vsebuje tudi manj kot štiri znake (primer v Prilogi 2).
Primera elektronskega zapisa: RF712348231
RF45SBO2010
V elektronski obliki se vsi znaki reference pišejo skupaj brez medsebojnih presledkov.

5.2 Generiranje in izračun kontrolne številke
Generiranje kontrolne številke poteka v treh korakih:
1. Nizu znakov od 5. do 25. mesta dodamo na desni strani RF00.
2. Črke pretvorimo v številke skladno s tabelo, ki je navedena v poglavju 5.1.
3. Naredimo izračun kontrolne številke po modulu MOD 97-10 (ISO/IEC 7064).
Primer generiranja in izračuna kontrolne številke za referenco RF je podan v Prilogi 4.


Priloga 3: Izračun kontrolne številke z uporabo modula 11
Izračun kontrolne številke z uporabo modula 11 se opravi takole:
- posamezne številke v podatku se pomnožijo s ponderjem; ponder se začne s številko 2 na desni strani in poveča za 1 proti levi strani podatka,
- ponderji naraščajo od številke 2 do vključno 13, dolžina enega polja P(n) je lahko največ 12 znakov:
1 2 3 4 5 6 7 8 9 10 11 12 → število znakov
13 12 11 10 9 8 7 6 5 4 3 2 → ponderji
- zmnožki številk in ponderjev se seštejejo, seštevek pa deli s številko 11,
- ostanek pri delitvi se odšteje od številke 11, dobljeni rezultat je kontrolna številka (K).
Če je rezultat 10, je kontrolna številka 0 (ničla).
Številčnih podatkov, pri katerih je seštevek zmnožkov posameznih številk in ponderjev deljiv s številko 11, ostanek pri delitvi je 0 (rezultat = 11, kontrolna številka pa 0), se ne priporoča.
Primeri izračuna kontrolne številke:
a) podatek 1 0 2 6 7 4
ponder 7 6 5 4 3 2
seštevek zmnožkov 7 + 0 + 10 + 24 + 21 + 8 = 70
delitev seštevka z 11 70 : 11 = 6 (ostanek 4)
kontrolna številka 11 - 4 = 7 (kontr. št. = 7)
podatek s kontrolno številko 1 0 2 6 7 4 7

b) podatek 1 4
ponder 3 2
seštevek zmnožkov 3 + 8 = 11
delitev seštevka z 11 11 : 11 = 1 (ostanek 0)
kontrolna številka 11 - 0 = 11 (kontr. št. = 0)
podatek s kontrolno številko 1 4 0

c) podatek 5 4
ponder 3 2
seštevek zmnožkov 15 + 8 = 23
delitev seštevka z 11 23 : 11 = 2 (ostanek 1)
kontrolna številka 11 - 1 = 10 (kontr. št. 0).
podatek s kontrolno številko 5 4 0

Kontrolna številka je enomestna. Vpiše se kot zadnja številka v podatku, za katerega se izračunava in je sestavni del tega podatka.



vir: zbs