Modul proširuje Balans procedurama za izradu velikog broja računa (billing) prema pravilima registrovanim u ugovorima.
Sledeći markeri (markup text) biće dinamički zamenjeni odgovarajućim vrednostima iz okruženja:
| Marker | Značenje | Napomena |
|---|---|---|
{{cassa_amount}} | Ukupan iznos uslovnog rabata. | Iznos uslovnog rabata koji se može ostvariti izražen u valuti računa blnsDDIzlaz.TotCassa . |
{{cassa_duedate}} | Datum do kada treba izvršiti uplatu. | Datum je zadat u short date formatu. |
{{cassa_percent}} | Ukupno umanjenje izraženo kroz procenat od početne vredosti. | |
{{cassa_reducedtotal}} | Vrednost računa umanjena za vrednost uslovnog rabata. | Formula je Format(blnsDDIzlaz.Total - blnsDDIzlaz.TotCassa, gcRNDSTD) . |
{{cassa_valuta}} | Oznaka valute u kojoj su izraženi iznosi kase. | |
{{transmonth_srb}} | Naziv meseca datuma prometa na srpskom. | Postojanje ovog markera automatski prikazuje izbornik datuma prometa na formi za odabir ugovora. |
{{transyear_num}} | Godina (u vidu broja) datuma prometa. | Postojanje ovog markera automatski prikazuje izbornik datuma prometa na formi za odabir ugovora. |
Parametri modula zadaju se JSON objektom u polju Parametri definicije modula (fn_dodatnimoduli).
{
{"procedures":[{JSON "procedure"}]} -- matrica billing procedura sa različitim postavkama obračuna (minimalno jedan član).
}
[
{
"procedure_id":<procedure code> -- Numerička oznaka procedure - jedinstvena unutar matrice definisanih procedura.
"procedure_name":"<naziv procedure>" -- Naziv procedure od značaja za korisnika. Ovo će biti prikazano u izborniku.
"procedure_type":<be_billingprocedure> -- Identifikator način obračuna iz enumeratora ''BE_BillingProcedures'', služi za rutiranje procedure kroz Billing sistem.
"document_header":{} -- JSON objekat sa definicijom zaglavlja računa-obračuna.
"line_item":{} -- JSON objekat sa definicijom linije računa.
Ukoliko ne postoji ili je prazno linije će se povući prema definiciji u ugovoru. Pri tom važe zamene ''{{}}'' tagova u skladu sa definicijom.
"payment_terms":{} -- JSON objekat sa parametrima sa uslovima plaćanja.
"invoicing_rules":{} -- JSON objekat sa posebnim pravilima pri izradi računa na bazi ugovora.
}
]
| Enumerator | Vrednost | Opis |
|---|---|---|
| beBillingProcDefault | 0 | |
| beBillingProcEnpSrb | 12407080 | Obračun po ugovorima za elektronsku naplatu putarine. Od “Puteva Srbije” se dobija fajl koji služi kao izvor za fakturisanje. |
| beBillingProcSimple | 12411120 | Obračun jednostavnim množenjem cene i količine zadate u ugovoru. |
{
"issuing_date": "+-wd0" -- Pomeraj u radnim danima datuma izdavanja računa.
Mora početi sa "+" ili "-" što znači da se dani dodaju ili oduzimaju.
Sledi uvek dvokarakterska oznaka:
"wd" označava radni dan; Npr. "+wd1" znači: "Jedan dan nakon današnjeg dana (sutra) pod uslovom da to nisu subota ili nedelja."
Ako jesu uzeće prvi dan nakon njih, tj. ponedeljak."
"ds" bilo koji dan osim nedelje; Npr. "-ds2" znači: "Dva dana pre današnjeg dana (prekjuče) ali ako to nije bila nedelja."
Ako jeste uzeće se dan koji joj prethodi, tj. subota.
"ad" bilo koji dan; Npr. "+ad2" znači: "Dva dana od sada, pa makar to bila i nedelja."
"ld" Poslednji dan meseca; Npr. "-ld1" znači "poslednji dan prethodnog meseca", dok "+ld0" znači "poslednji dan tekućeg meseca".
Nakon toga sledi broj dana/mesci/perioda na šta se već oznaka odnosila.
"transac_date": "+-wd0" -- Tumačenje je isto kao u prethodnom slučaju.
"currency": "contract" -- Id valute se određuje na osnovu ugovora ("contract") ili ...
"tax_struct": "contract" | "<ractip>" -- Id obračunske strukture:
"contract" - preuzeti iz ugovora,
ractip - Id obračunske strukture za domaće kupce.
}
{
"id":<elid elementa> -- Balans ''elementi.elid'' id artikla koji služi za iskazivanje obračuna.
"stock_id":<sklid skladišta> -- Balans ''skladista.sklid" Id skladišta sa kog će se stavka fakturisati.
"custom_text":"<Markup text>" -- Markup tekst sa aktivnim elementima koji će biti zamenjeni odgovarajućim vrednostima pri izradi linije.
}
{
"cassa":[{}] -- Matrica definicija kasa skonta koje mogu da se dobiju ukoliko se ispune uslovi.
}
{
"qtt_mode":"" -- Oznaka koja govori kako se procesira podatak o količinama prilikom fakturisanja. Moguće vrednosti su:
"force_one" - količina u fakturi je uvek jedan. U ovom slučaju cena će biti jednaka vrednosti ugovora ili vrednosti reda ukoliko se preuzima svaka stavka za sebe.
"contracted" - količina u fakturi biće preuzeta iz ugovora. Za cenu se uzima jedinična cena iz ugovora.
}
{
"id":<id kasa skonta>, -- Id kasa-skonta koji će biti ubačen u račun (referenca na ''defCustData.CusID'')
"due_term":["fixed_day"], -- Način obračuna datuma važenja kase:
-- "fixed_day" znači da je zadat dan u mesecu zaključno sa kojim trba izvršiti zadati procenat da bi se kasa ostvarila.
"due_day":<dan u mesecu>, -- Dan u mesecu zaključno sa kojim treba izvršiti plaćanje.
"due_perc":<procenat>, -- Procenat plaćanja koji treba da se izvrši za uzimanje kase.
"invoice_comment":"<napomena>" -- Dodatak na prateći tekst računa u kom se ova kasa iskoristi. Napomena se provlači kroz marker-parser.
}