Preskoči na glavno vsebino

API – Prepočet predajných cien

API - Ako v cenníku alebo na skupine tovaru prepočítať predajnú cenu podľa nastavenej cenotvorby?

Avtor: Petr Pech

REST API vie prepočítať predajnú cenu ceníkovej položky podľa pravidiel, ktoré má nastavené — východiskovej ceny, spôsobu výpočtu, percenta a zaokrúhlenia. Prepočet je možné spustiť nad jednotlivou položkou cenníka, alebo nad celou skupinou tovaru; obe varianty majú vlastný endpoint.


Cenník

PUT /c/{firma}/cenik/(filtr)/prepocti-prodejni-cenu

Namiesto filtra je možné uviesť priamo ID ceníkovej položky:

PUT https://demo.flexibee.eu/c/demo/cenik/147/prepocti-prodejni-cenu

Použiť je možné aj ľubovoľnú filtráciu a prepočítať tak viac položiek jedným dopytom:

PUT https://demo.flexibee.eu/c/demo/cenik/(skupZboz='code:ZBOŽÍ')/prepocti-prodejni-cenu


Skupina tovaru

PUT /c/{firma}/skupina-zbozi/(filtr)/prepocti-prodejni-cenu

Prepočet nad skupinou tovaru prejde všetky ceníkové položky, ktoré do skupiny patria. Filter opäť zastúpi aj samotné ID skupiny:

PUT https://demo.flexibee.eu/c/demo/skupina-zbozi/7/prepocti-prodejni-cenu


Z čoho sa cena počíta

Prepočet nič neprijíma v tele požiadavky — vychádza výhradne z nastavenia ceníkovej položky, respektíve skupiny tovaru:

Vlastnosť

Význam

typCenyVychoziK

Východisková cena, z ktorej sa počíta — napríklad typCenyVychozi.nakCena (nákupná cena).

typVypCenyK

Spôsob výpočtu — typVypCeny.prirazka, typVypCeny.rabat a ďalšie.

procZakl

Marža, prirážka, rabat alebo zľava v percentách.

zaokrJakK, zaokrNaK

Spôsob a rád zaokrúhlenia výslednej ceny.

Výsledok sa zapíše do cenaZakl (a odvodených cenaZaklBezDph a cenaZaklVcDph). Napríklad pri položke s nákupnou cenou 75 a prirážkou 100 % vyjde predajná cena 150.

ℹ️ Ak má položka východiskovú cenu nastavenú na typCenyVychozi.zadna, nie je z čoho počítať a prepočet ju ponechá bez zmeny.


Odpoveď a chybové stavy

Úspešný prepočet vracia 200 OK:

<?xml version="1.0" ?>
<winstrom version="1.0">
<success>true</success>
</winstrom>

⚠️ Odpoveď neuvádza, koľko záznamov sa prepočítalo. Filter, ktorý nič nenájde — aj odkaz na neexistujúce ID — vracia rovnako 200 s success true. Výsledok preto overujte prečítaním cenaZakl u dotknutých položiek.

Situácia

Odpoveď

Volanie metódou GET alebo DELETE

405 Method Not Allowed

Chybne zapísaný názov služby v URL

404, adresaNeplatnaUrl — Adresa … nie je platná.


Súvisiace

Ste s tem dobili odgovor na svoje vprašanje?