Systim API - Zarządzanie dokumentami magazynowymi

Strona główna API

addStoreDocument

Dodanie nowego dokumentu magazynowego

Wymagane parametry

token, id_magazynu, data_wystawienia,
data_wydania - dla dokumentów wydania (WZ, WW, WP)
data_przyjecia - dla dokumentów przyjęcia (PZ, ZW, PRW)
data_operacji, id_magazynu_zrodlowego - dla przesunięcia międzymagazynowego (MM)

rodzaj:
3 - Przyjęcie na magazyn (PZ)
9 - Zwrot wewnętrzny (ZW)
20 - Protokół wprowadzenia (PRW)
4 - Wydanie z magazynu (WZ)
10 - Wydanie wewnetrzne (WW)
11 - Wydanie na produkcję (WP)
8 - Przesunięcie międzymagazynowe (MM)

wymagane są pola produktów, tablica pozycje[], zawierająca elementy:

ilosc, cena_netto, id_produktu, jednostka

Opcjonalne parametry

uwagi, id_szablonu, id_numeracji, id_faktury, id_kontrahenta

Wartości zwracane

Zwracane wartości w przypadku powodzenia:
$dane['result'] - zawiera zmienną id dodanego dokumentu
W przypadku niepowodzenia:
$dane['error']['code']>0

Przykład wywołania w PHP

					//tablica zawierająca 2 pola WZ/PZ wraz z id produktu,ilością,kwotą i ceną netto, jednostką, stawką vat, 
					//kwotą vat i kwotą brutto
					$produkty['pozycje'][0] = array('cena_netto'=>2,'ilosc'=>1,'id_produktu'=>2,'jednostka'=>'kg');
					$produkty['pozycje'][1] = array('cena_netto'=>2,'ilosc'=>1,'id_produktu'=>3,'jednostka'=>'kg');
					$pozycje =  http_build_query($produkty);

					$c = curl_init();
					curl_setopt($c, CURLOPT_URL, 'https://abcd.systim.pl/jsonAPI.php');
					curl_setopt($c, CURLOPT_POST, true); //sposób przesyłania - (true metoda POST)
					curl_setopt($c, CURLOPT_POSTFIELDS, 'act=addStoreDocument'.
							'&token=6aed003dc54951c043f8d1ad4b4804a2a8a40f' .
							'&rodzaj=3'.    // przyjęcie na magazyn
							'&id_kontrahenta=1'.
							'&data_wystawienia=2013-04-28'.
							'&data_przyjecia=2013-04-29'.
							'&id_magazynu=1'.
							'&'.$pozycje);   //id_dostawy=1 - przesyłka kurierska
					curl_setopt($c, CURLOPT_RETURNTRANSFER, true);
					$wynik = curl_exec($c);
					curl_close($c);
					$dane = json_decode($wynik,true); // wartości w postaci tablicy asocjacyjnej

					if($dane['error']['code']>0) die($dane['error']['message']); //sprawdzamy czy wystąpił jakiś błąd, 
																			//jeśli tak, wyświetlamy go
					echo 'Id nowego dokumentu: ' . $dane['result'];
					



getStoreDocumentPDF

Pobieranie PDF dla istniejącego dokumentu magazynowego

Wymagane parametry

token, id

Opcjonalne parametry

brak

Wartości zwracane

Zwracane wartości w przypadku powodzenia:
$dane['result'] - zawiera zmienną file oraz name pobieranego PDF dokumentu
W przypadku niepowodzenia:
$dane['error']['code']>0

Przykład wywołania w PHP


					 $c = curl_init();
					 curl_setopt($c, CURLOPT_URL, 'https://abcd.systim.pl/jsonAPI.php');
					 curl_setopt($c, CURLOPT_POST, true); //sposób przesyłania - (true metoda POST)
					 curl_setopt($c, CURLOPT_POSTFIELDS, 'act=getStoreDocumentPDF'.
								'&token=6aed003dc54951c043f8d1ad4b4804a2a8a40f' .
								'&id=8'); 
					 curl_setopt($c, CURLOPT_RETURNTRANSFER, true);
					 $wynik = curl_exec($c);
					 curl_close($c);
					 $dane = json_decode($wynik,true); // wartości w postaci tablicy asocjacyjnej
					 
					 if($dane['error']['code']>0) die($dane['error']['message']); //sprawdzamy czy wystąpił jakiś błąd, 
																				//jeśli tak, wyświetlamy go

					 // dekodujemy i wstawiamy zawartość pliku pdf do zmiennej by potem ją zapisać, lub umożliwić pobranie
					 $fakturaPDF = base64_decode($dane['result']['file']);	
					 // nazwa pliku pdf
					 $nazwaPDF = $dane['result']['name'];
					 
					 
					



listStoreDocuments

Pobranie listy dokumentów magazynowych

Wymagane parametry

token,

Opcjonalne parametry

ids (id dokumentów rozdzielane przecinkami np. 3,4,5,2)
data (data określająca rok i miesiąc wystawienia dokumentów np. 2022-01)
data_od
data_do (zakres dat dla zakresu wyniku np. data_od=2021-02-01 data_do=2021-02-03)

Wartości zwracane

Zwracane wartości w przypadku powodzenia:
$dane['result'] - jest tablicą asocjacyjną o wartościach:
id, kontrahent, id_kontrahenta, kwota_netto, data_operacji, numer_dokumentu, data_wystawienia, rodzaj,
W przypadku niepowodzenia:
$dane['error']['code']>0

Rodzaje dokumentów

3 - Przyjęcie na magazyn (PZ)
9 - Zwrot wewnętrzny (ZW)
20 - Protokół wprowadzenia (PRW)
4 - Wydanie z magazynu (WZ)
10 - Wydanie wewnetrzne (WW)
11 - Wydanie na produkcję (WP)
8 - Przesunięcie międzymagazynowe (MM)

Przykład wywołania w PHP


					 $c = curl_init();
					 curl_setopt($c, CURLOPT_URL, 'https://abcd.systim.pl/jsonAPI.php');
					 curl_setopt($c, CURLOPT_POST, true); //sposób przesyłania - (true metoda POST)
					 curl_setopt($c, CURLOPT_POSTFIELDS, 'act=listStoreDocuments'.
								'&token=6aed003dc54951c043f8d1ad4b4804a2a8a40f' .
								'&ids=6,7,8'); 
					 curl_setopt($c, CURLOPT_RETURNTRANSFER, true);
					 $wynik = curl_exec($c);
					 curl_close($c);
					 $dane = json_decode($wynik,true); // wartości w postaci tablicy asocjacyjnej
					 
					 if($dane['error']['code']>0) die($dane['error']['message']); //sprawdzamy czy wystąpił jakiś błąd, 
																				//jeśli tak, wyświetlamy go
																				 
					 // Dane wylistowanych faktur
					 
					 foreach($dane['result'] as $id=>$dane)
					 {
						echo 'Id faktury: ' . $id . ' Numer faktury: ' . $dane['numer_dokumentu'] . 
							 ' Rodzaj: ' . $dane['rodzaj'] . ' Nazwa kontrahenta: ' . $dane['kontrahent'] .
							 ' Data operacji: ' . $dane['data_operacji'] . ' Kwota netto: ' . $dane['kwota_netto'] .
							 ' Data wystawienia: ' . $dane['data_wystawienia'] . 
							 ' Id kontrahenta: ' . $dane['id_kontrahenta'] . '
'; }



getStoreDocument

Pobranie danych dokumentu przyjęcia/wydania

Wymagane parametry

token, id

Wartości zwracane

Zwracane wartości w przypadku powodzenia:
$dane['result']['faktura'] - jest tablicą asocjacyjną o wartościach:
numer_faktury, pelny_numer, rodzaj, id_kontrahenta, kontrahent, data_wystawienia, data_operacji, kwota_netto, magazyn, uwagi, dostawa, powiazany_dokument
$dane['result']['adres'] - jest tablicą asocjacyjną o wartościach:
odbiorca, nip, kod, miejscowosc, ulica, wojewodztwo, panstwo oraz:
$dane['result']['pola'] - jest tablicą asocjacyjną o wartościach:
id, id_faktury, id_produktu, ilosc, cena_netto, kwota_netto, jednostka, opis, pkwiu, numer_seryjny, kod_produktu, kod_kreskowy, id_pola_faktur, ilosc_wydania
$dane['result']['wydania_z_dostaw'][] - jest tablicą asocjacyjną o wartościach:
id_pozycji_wydania, ilosc

W przypadku niepowodzenia:
$dane['error']['code']>0

Przykład wywołania w PHP


 $c = curl_init();
 curl_setopt($c, CURLOPT_URL, 'https://abcd.systim.pl/jsonAPI.php');
 curl_setopt($c, CURLOPT_POST, true); //sposób przesyłania - (true metoda POST)
 curl_setopt($c, CURLOPT_POSTFIELDS, 'act=getStoreDocument'.
            '&token=6aed003dc54951c043f8d1ad4b4804a2a8a40f' .
            '&id=4'); 
 curl_setopt($c, CURLOPT_RETURNTRANSFER, true);
 $wynik = curl_exec($c);
 curl_close($c);
 $dane = json_decode($wynik,true); // wartości w postaci tablicy asocjacyjnej
  
 if($dane['error']['code']>0) die($dane['error']['message']); //sprawdzamy czy wystąpił jakiś błąd, 
                                                            //jeśli tak, wyświetlamy go
                                                              
 // Dane wylistowanych faktur
  
 $dane_faktury = $dane['result']['faktura'];
 
echo 'Id faktury: ' . $id . ' Numer faktury: ' . $dane_faktury['numer_faktury'] . 
     ' Data operacji: ' . $dane_faktury['data_operacji'] . ' Nazwa kontrahenta: ' . $dane_faktury['kontrahent'] .
     ' Rodzaj: ' . $dane_faktury['rodzaj'] . ' Kwota netto: ' . $dane_faktury['kwota_netto'] .
     ' Data wystawienia: ' . $dane_faktury['data_wystawienia'] . ' Id kontrahenta: ' . $dane_faktury['id_kontrahenta'] .
	 ' Id powiązanej faktury: ' . $dane_faktury['powiazany_dokument'] .
     '
'; foreach($dane['result']['pola'] as $numer_pola=>$pole) { echo '

ID faktury: ' . $pole['id_faktury'] . ' ID produktu: ' . $pole['id_produktu'] . ' Ilosc: ' . $pole['ilosc'] . ' Cena netto: ' . $pole['cena_netto'] . ' Kwota netto: ' . $pole['kwota_netto'] . ' Jednostka: ' . $pole['jednostka'] . ' Opis: ' . $pole['opis'] . ' PKWiU: ' . $pole['pkwiu'] . ' Numer seryjny: ' . $pole['numer_seryjny'] . ' Kod produktu: ' . $pole['kod_produktu'] . ' Kod kreskowy: ' . $pole['kod_kreskowy']; } foreach($dane['result']['wydania_z_dostaw'][0] as $numer_pola=>$pole) { echo '

Powiązane pola faktur: ' . $pole['id_pozycji_wydania']; Ilość wydanych produktów: ' . $pole['iloscj']; }

delStoreDocument

Usunięcie wskazanego dokumentu magazynowego.

Wymagane parametry

token, id

Wartości zwracane

Zwracane wartości w przypadku powodzenia:
$dane['result'] - zawiera zmienną id dodanego dokumentu
W przypadku niepowodzenia:
$dane['error']['code']>0

Przykład wywołania w PHP

 $c = curl_init();
 curl_setopt($c, CURLOPT_URL, 'https://abcd.systim.pl/jsonAPI.php');
 curl_setopt($c, CURLOPT_POST, true); //sposób przesyłania - (true metoda POST)
 curl_setopt($c, CURLOPT_POSTFIELDS, 'act=delStoreDocument'.
            '&token=6aed003dc54951c043f8d1ad4b4804a2a8a40f' .
            '&id=4'); 
 curl_setopt($c, CURLOPT_RETURNTRANSFER, true);
 $wynik = curl_exec($c);
 curl_close($c);
 $dane = json_decode($wynik,true); // wartości w postaci tablicy asocjacyjnej
  
 if($dane['error']['code']>0) die($dane['error']['message']); //sprawdzamy czy wystąpił jakiś błąd, 
                                                            //jeśli tak, wyświetlamy go
           
					
Wersja DEMO - przetestuj za darmo! Załóż konto Systim w 15 sekund!