Collmex API: Überblick

Das Collmex API ist eine Programmierschnittstelle für den Datenaustausch mit externen Programmen. Mögliche Szenarien sind z.B. die Anbindung von externen Shops, Rechnungs-Programmen oder Kassen.

Die verwendeten Datentypen basieren auf den CSV-Dateien, die auch für den interaktiven Upload verwendet werden. Die hier zusätzlich definierten Satzarten finden nur im API Verwendung und ergänzen die bekannten Satzarten für den Upload.

Das Kommunikationsprotokoll ist ein einfaches HTTP-POST, mit dem die Daten im CSV-Format (text/csv) hoch geladen werden. Als Ergebnis werden wiederum Daten im CSV-Format zurück gegeben. In einem Upload können beliebig viele Satzarten enthalten sein.

Mit dem frei erhältlichen Kommandozeilenprogramm cURL, können die CSV-Dateien auf einfache Weise ausgetauscht werden. Die Verwendung von cURL ist nur ein Beispiel, wie die Kommunikation technisch erfolgen kann. Jede Programmiersprache kann verwendet werden, mit der ein HTTP-POST möglich ist.

Die URL bzw. der Endpunkt für den Datenaustausch ist: https://www.collmex.de/c.cmx?XXXXX,0,data_exchange wobei XXXXX die Kunden- bzw. Mandantennummer ist.

Beispiel für einen Datenaustausch mittels cURL per Kommandozeile: curl -k -o download.csv --data-binary @upload.csv -H "Content-Type: text/csv" https://www.collmex.de/c.cmx?XXXXX,0,data_exchange.

In PHP:

  $ch = cURL_init("https://www.collmex.de/c.cmx?XXXXX,0,data_exchange");
  cURL_setopt($ch, CURLOPT_POST, 1); 
  cURL_setopt($ch, CURLOPT_POSTFIELDS, "LOGIN;user;password\nCUSTOMER_GET;9999;1\n");
  cURL_setopt($ch, CURLOPT_HTTPHEADER, Array("Content-Type: text/csv")); 
  cURL_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
  cURL_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  $message = curl_exec($ch);
  echo cURL_error($ch);
  cURL_close($ch);
  echo str_replace("\n", "<br>", $message);

Von Partnern wurden SDK's für PHP und node.js zur freien Verwendung veröffentlicht. (Nutzung ohne Gewähr).

Siehe auch: Collmex API Inhalt