PharmaAutopilot
...

CLI Referenz

Die msv3 CLI ist ein Entwickler-Tool zum Testen von MSV3-Verbindungen und Operationen direkt gegen Grosshaendler -- ohne einen laufenden Gateway-Server. Sie spricht MSV3/SOAP direkt mit Ihren Grosshaendler-Zugangsdaten.

Wann die CLI verwenden

  • Zugangsdaten vor der Integration verifizieren
  • Echtzeit-Verfuegbarkeit interaktiv pruefen
  • Testbestellungen in der NOWEDA-Sandbox aufgeben
  • Vertragsdaten und Lieferfenster inspizieren

Wann stattdessen die API/SDKs verwenden

  • Produktive Bestellungen
  • Automatisierte Workflows
  • Webhook-Verwaltung

Installation

Die CLI wird als einzelne statische Binary ausgeliefert:

# Aus Source bauen
cargo build --release -p msv3-cli
./target/release/msv3 --version

# Oder direkt installieren
cargo install --path cli

Befehle

msv3 --help

MSV3 developer tool - test connections and operations against wholesalers directly.

Usage: msv3 <COMMAND>

Commands:
  wholesalers         List all known wholesalers
  test-connection     Test connectivity and credentials against a wholesaler
  check-availability  Check availability of a PZN
  order               Place an order for a PZN
  contracts           Retrieve contract data from a wholesaler

msv3 wholesalers

Alle vorkonfigurierten Grosshaendler mit ihrem Verifizierungsstatus auflisten.

msv3 wholesalers

  noweda                NOWEDA eG                                    [verified]
  noweda_test           NOWEDA eG (Test Environment)                 [verified]
  phoenix               PHOENIX Pharmahandel                         [verified]
  gehe                  GEHE Pharma Handel GmbH                      [verified]
  sanacorp              Sanacorp Pharmahandel GmbH                   [verified]
  alliance_healthcare   Alliance Healthcare Deutschland AG           [verified]
  fiebig                Fiebig & Schlottmann GmbH & Co. KG           [verified]
  ebert_jacobi          Ebert + Jacobi GmbH & Co. KG                 [verified]
  max_jenne             Max Jenne Pharmagrosshandlung                 [verified]
  hageda_stumpf         HAGEDA-STUMPF GmbH & Co. KG                  [verified]
  otto_geilenkirchen    Otto Geilenkirchen GmbH & Co. KG             [verified]
  kehr_berlin           Kehr Pharma Grosshandel Berlin GmbH          [verified]
  krieger_pharma        Krieger + Pohlmann GmbH & Co. KG             [verified]

msv3 test-connection

Zugangsdaten verifizieren und Round-Trip-Latenz zum Grosshaendler messen.

msv3 test-connection \
  --wholesaler noweda \
  --username Now00079800 \
  --password your-password
FlagPflichtBeschreibung
--wholesalerJaGrosshaendler-ID (aus msv3 wholesalers)
--usernameJaMSV3-Benutzername vom Grosshaendler
--passwordJaMSV3-Passwort vom Grosshaendler

Erfolgreiche Ausgabe:

Connected to NOWEDA eG (142ms)

NOWEDA Sandbox testen:

msv3 test-connection \
  --wholesaler noweda_test \
  --username Now00079800 \
  --password test-password

msv3 check-availability

Echtzeit-Verfuegbarkeit fuer eine einzelne PZN pruefen.

msv3 check-availability \
  --wholesaler noweda \
  --username Now00079800 \
  --password your-password \
  --pzn 761271 \
  --quantity 5
FlagPflichtBeschreibung
--wholesalerJaGrosshaendler-ID
--usernameJaMSV3-Benutzername
--passwordJaMSV3-Passwort
--pznJaPZN (numerisch, 1-8 Ziffern)
--quantityJaAbzufragende Menge

Ausgabe (verfuegbar):

Availability for PZN 761271

  5/5 units available
    normal: 5 units, ETA: 2026-04-28T10:00:00, Tour: 00345H

Ausgabe (teilweise verfuegbar):

  2/5 units available
    normal: 2 units, ETA: 2026-04-28T10:00:00, Tour: 00345H
    backorder: not deliverable (out_of_stock)

msv3 order

Bestellung fuer eine einzelne PZN aufgeben.

msv3 order \
  --wholesaler noweda \
  --username Now00079800 \
  --password your-password \
  --pzn 761271 \
  --quantity 3 \
  --delivery backorder
FlagPflichtStandardBeschreibung
--wholesalerJa--Grosshaendler-ID
--usernameJa--MSV3-Benutzername
--passwordJa--MSV3-Passwort
--pznJa--PZN (numerisch, 1-8 Ziffern)
--quantityJa--Bestellmenge
--deliveryNeinnormalnormal, backorder, grouped, disposition

Ausgabe (bestaetigt):

Order confirmed
  PZN 761271: 3/3 units, Normal
  Tour: 00345H (ETA: 2026-04-28T10:00:00+02:00)

Ausgabe (abgelehnt):

Order fault [3002]: Artikel nicht bestellbar
Error: Order rejected by wholesaler

msv3 contracts

Vertragsdaten und Lieferfenster fuer einen Grosshaendler abrufen.

msv3 contracts \
  --wholesaler noweda \
  --username Now00079800 \
  --password your-password

Ausgabe:

Contract data for NOWEDA eG

  Customer ID:       Now00079800
  Bulk availability: yes
  Return offers:     yes
  Batch orders:      yes

  Order windows:
    monday        until 10:29
    monday        until 14:30
    tuesday       until 10:29
    tuesday       until 14:30
    wednesday     until 10:29

Scripting-Tipps

Passwoerter nicht hartcodieren -- Umgebungsvariablen verwenden:

export MSV3_USER="Now00079800"
export MSV3_PASS="$(cat ~/.msv3-password)"

msv3 test-connection \
  --wholesaler noweda \
  --username "$MSV3_USER" \
  --password "$MSV3_PASS"

Exit-Code in CI pruefen:

if msv3 test-connection --wholesaler noweda --username "$U" --password "$P"; then
  echo "Zugangsdaten gueltig"
else
  echo "Zugangsdaten ungueltig - Deploy abgebrochen"
  exit 1
fi

Unterschiede zwischen CLI und API

Die CLI spricht MSV3/SOAP direkt, ohne den Gateway-REST-API-Umweg. Das bedeutet:

FeatureCLIAPI/SDK
Gateway API KeyNicht noetigErforderlich
Bestellungen an echten GrosshaendlerJaJa (mit pk_live_)
Sandbox-Modusnoweda_test ID verwendenpk_test_ Key verwenden
Multi-Artikel-BestellungenNur einzelne PZNBis zu 50 Artikel
Webhook-VerwaltungNeinJa
LieferbenachrichtigungenNeinJa
RetourenNeinJa
IdempotenzNeinJa

Fuer Produktions-Workflows verwenden Sie die API oder ein SDK. Die CLI ist fuer Zugangsdaten-Tests und Entwicklungs-Exploration gedacht.