mServer: HTTP rozhraní¶
POHODA mServer je HTTP server vestavěný do Pohody. Přijímá dataPack
v těle HTTP POST a vrací responsePack – tedy totéž XML jako při souborovém
importu/exportu (Formát XML: dataPack).
Provoz¶
Pohoda musí běžet; jedna konfigurace mServeru obsazuje jednu instanci programu, kterou nelze zároveň používat k ruční práci. Pro ruční práci spusťte Pohodu podruhé.
Typické použití: mKasa, aplikace třetích stran, internetové obchody.
Stormware doporučuje provoz na serverovém OS ve vnitřní síti; mServer nepoužívejte na stroji s veřejnou IP adresou. Komunikace je v základu nešifrovaná HTTP (starší dokumentace) – případné TLS řešte reverzní proxy.
Zdroj: stormware.cz/pohoda/xml/mserver (přehled); detaily níže vycházejí z implementace klienta PHP-Pohoda-Connector.
Koncové body¶
Cesta |
Použití |
|---|---|
|
POST s |
|
Kontrola dostupnosti (POST s autentizací). Odpověď obsahuje text
|
HTTP hlavičky¶
Hlavička |
Význam |
|---|---|
|
|
|
Název aplikace (zobrazí se v agendě XML Import). |
|
Výběr konkrétní instance / konfigurace mServeru. |
|
|
|
|
Ukázka s curl:
curl -sS -X POST http://192.168.0.1:444/xml \
-H "STW-Authorization: Basic $(printf 'user:pass' | base64)" \
-H "STW-Application: MojeAplikace" \
-H "Content-Type: application/xml" \
--data-binary @datapack.xml
Note
ASP/HTTP konektor pro mServer (oficiální návod Stormware) používá
hlavičku Stw-Server-Name pro výběr serveru; v přímém volání ji
nepoužívejte.
Kódy odpovědí¶
Kód |
Obvyklá příčina u mServeru |
|---|---|
|
Požadavek zpracován; stav jednotlivých záznamů je v XML odpovědi. |
|
Syntakticky nesprávný požadavek (špatné XML). |
|
Chybí autentizace, nebo uživatel v Pohodě neexistuje. |
|
Uživatel nemá právo otevřít účetní jednotku. |
|
Špatná URL – chybí cesta |
|
Použita jiná metoda než POST. |
|
Vypršel čas zpracování. |
|
Nespecifikovaná chyba při zpracování. |
|
Proxy / služba nedostupná / timeout brány. |
Poznámky ke klientům¶
Odpověď je ve Windows-1250 – převeďte na UTF-8.
Nastavte rozumný timeout (výchozí v PHP-Pohoda-Connector je 30 s); velké exporty trvají déle.
Komprese je volitelná (
POHODA_COMPRESS).