Rezepte & Behandlungen
Erstellen Sie Checkout-Sitzungen für Rezepte oder Behandlungen. Diese Endpoints übernehmen die Rezeptvalidierung, die Checkout-Erstellung und geben eine Checkout-URL oder einen Bestellentwurf zurück, über den der Patient seinen Kauf abschließen kann.Rezept-Checkout erstellen
Laden Sie ein oder mehrere signierte Rezepte (als Base64-kodierte PDFs) zusammen mit Positionen und Patientendaten hoch, um einen Checkout zu erstellen.Eindeutiger Bezeichner für den Shop
create_prescription_checkout
Anfragekörper
| Feld | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
reserved_draft_order_id | string | Nein | Shopify Legacy-DraftOrder-ID aus dem Produkte-Reservierungsendpoint. Wenn gesetzt, aktualisiert RxScale diesen Bestellentwurf, statt einen neuen Checkout zu erstellen |
prescriptions | array | Nein | Liste der Rezeptobjekte mit id und pdf_base64 |
prescriptions[].id | string | Ja | Ihre interne ID für dieses Rezept (wird zur Verknüpfung mit Positionen verwendet) |
prescriptions[].pdf_base64 | string | Ja | Base64-kodiertes PDF des signierten Rezepts |
lines | array | Nein | Positionen für den Checkout |
lines[].sku_uid | string | Ja | SKU-UID aus dem Produktkatalog |
lines[].quantity | integer | Ja | Zu bestellende Menge |
lines[].prescription_id | string | Nein | Verknüpft die Position mit einem Rezept über dessen id |
patient_data | object | Ja | Demografische Patientendaten |
patient_data.first_name | string | Ja | Vorname des Patienten |
patient_data.last_name | string | Ja | Nachname des Patienten |
patient_data.date_of_birth | integer | Ja | Geburtsdatum als Unix-Zeitstempel |
patient_data.gender | string | Ja | Geschlecht des Patienten (male, female, divers) |
buyerIdentity | object | Bedingt | Shopify-Cart-Buyer-Identity. Erforderlich, wenn checkout_type draft_order_without_checkout_request ist; wird für checkout_link-Carts und Checkout-Anfragen für Bestellentwürfe verwendet |
buyerIdentity.email | string | Nein | E-Mail-Adresse des Käufers |
buyerIdentity.phone | string | Nein | Telefonnummer des Käufers |
buyerIdentity.countryCode | string | Nein | Shopify-Ländercode des Käufers |
buyerIdentity.customerAccessToken | string | Nein | Shopify-Storefront-Customer-Access-Token. Wenn er mit checkout_type: "checkout_link" gesendet wird, verknüpft Shopify den Cart mit dem Kundenkonto |
checkout_type | string | Nein | Checkout-Typ: checkout_link, draft_order (Standard) oder draft_order_without_checkout_request |
prepaid | boolean | Nein | Gibt an, ob die Bestellung bereits extern bezahlt wurde. Standardwert ist false; der Wert wird als Shopify-Bestellattribut prepaid=true oder prepaid=false angehängt. Das Feld ändert das Verhalten von checkout_type nicht |
external_order_id | string | Nein | Ihre externe Bestell-ID. Wenn gesetzt, hängt RxScale sie als Shopify-Bestellattribut external_order_id an |
delivery | object | Nein | Lieferdaten, die als Attribute an die Shopify-Bestellung angehängt werden |
delivery.delivery_type | string | Nein | Lieferart. Der Store-Betreiber ordnet diesen Wert seinen eigenen Versandmethoden zu |
delivery.delivery_price | integer | Nein | Lieferpreis, der als Attribut an die Shopify-Bestellung angehängt wird |
transaction | object | Nein | Transaktionsdaten, die als Attribute an die Shopify-Bestellung angehängt werden |
transaction.transaction_id | string | Nein | Transaktions-ID, die als Attribut an die Shopify-Bestellung angehängt wird |
transaction.transaction_amount | integer | Nein | Transaktionsbetrag, der als Attribut an die Shopify-Bestellung angehängt wird |
billing_address | object | Nein | Rechnungsadresse, die an den Shopify-Bestellentwurf angehängt wird. Wird ignoriert, wenn checkout_type checkout_link ist |
billing_address.first_name | string | Nein | Vorname des Empfängers |
billing_address.last_name | string | Nein | Nachname des Empfängers |
billing_address.address1 | string | Nein | Einzeilige Straßenadresse inklusive Hausnummer |
billing_address.city | string | Nein | Stadt |
billing_address.province | string | Nein | Bundesland, Provinz oder Region. Gesetzt für Länder wie IE; wird als leerer String für Länder wie DE gesendet |
billing_address.country_code | string | Nein | ISO-Ländercode |
billing_address.zip | string | Nein | Postleitzahl |
shipping_address | object | Nein | Lieferadresse, die an den Shopify-Bestellentwurf angehängt wird. Wird ignoriert, wenn checkout_type checkout_link ist |
shipping_address.first_name | string | Nein | Vorname des Empfängers |
shipping_address.last_name | string | Nein | Nachname des Empfängers |
shipping_address.address1 | string | Nein | Einzeilige Straßenadresse inklusive Hausnummer |
shipping_address.city | string | Nein | Stadt |
shipping_address.province | string | Nein | Bundesland, Provinz oder Region. Gesetzt für Länder wie IE; wird als leerer String für Länder wie DE gesendet |
shipping_address.country_code | string | Nein | ISO-Ländercode |
shipping_address.zip | string | Nein | Postleitzahl |
buyerIdentity.customerAccessToken gilt nur, wenn checkout_type auf checkout_link gesetzt ist, da Shopify dieses Feld für Storefront-Carts verwendet. Es verknüpft kein Kundenkonto mit Shopify-Bestellentwürfen.Senden Sie
buyerIdentity, wenn Sie checkout_type: "draft_order_without_checkout_request" verwenden. RxScale lehnt die Anfrage ohne dieses Feld ab, weil keine Shopify-Checkout-Anfrage gesendet wird, über die Kundendaten später erfasst werden könnten.Checkout-Typen
Das Feldcheckout_type steuert, wie die Bestellung in Shopify erstellt wird:
| Wert | Beschreibung |
|---|---|
draft_order | Erstellt einen Shopify-Bestellentwurf und sendet eine Checkout-Anfrage an den Kunden (Standard) |
checkout_link | Gibt einen Shopify-Checkout-Link zurück, über den der Kunde die Zahlung direkt abschließen kann |
draft_order_without_checkout_request | Erstellt einen Shopify-Bestellentwurf, ohne eine Checkout-Anfrage an den Kunden zu senden. Erfordert buyerIdentity, weil Kundendaten nicht über eine Shopify-Checkout-Anfrage erfasst werden |
Wenn
reserved_draft_order_id gesetzt ist, wird checkout_type ignoriert. RxScale speichert die signierten Rezepte und ergänzt _prescription_uid-Metadaten an den passenden reservierten Draft-Order-Positionen. Die Zuordnung erfolgt über die Shopify-Variante aus sku_uid; doppelte sku_uid-Werte werden abgelehnt, weil sie nicht eindeutig sind. Der reservierte Bestellentwurf muss zum Telemedizin-Anbieter gehören, der mit dem API-Schlüssel verknüpft ist.Beispielanfrage
Antwort
reserved_draft_order_id verwendet wird, erstellt RxScale keinen neuen Checkout und keinen neuen Bestellentwurf. Der vorhandene reservierte Bestellentwurf wird aktualisiert und kann nach der Zahlung den normalen Shopify-Bestell- und Fulfillment-Prozess durchlaufen.
Behandlungs-Checkout erstellen
Erstellen Sie einen Checkout für behandlungsbasierte Bestellungen (kein Rezept erforderlich).Eindeutiger Bezeichner für den Shop
create_treatment_checkout
Anfragekörper
| Feld | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
lines | array | Ja | Positionen für den Checkout |
lines[].sku_uid | string | Ja | SKU-UID aus dem Produktkatalog |
lines[].quantity | integer | Ja | Zu bestellende Menge |
lines[].anamnesis_id | string | Nein | Anamnese-ID zur Verknüpfung mit einem Patientenfragebogen |
buyerIdentity | object | Bedingt | Shopify-Cart-Buyer-Identity. Erforderlich, wenn checkout_type draft_order_without_checkout_request ist; wird für checkout_link-Carts und Checkout-Anfragen für Bestellentwürfe verwendet |
buyerIdentity.email | string | Nein | E-Mail-Adresse des Käufers |
buyerIdentity.phone | string | Nein | Telefonnummer des Käufers |
buyerIdentity.countryCode | string | Nein | Shopify-Ländercode des Käufers |
buyerIdentity.customerAccessToken | string | Nein | Shopify-Storefront-Customer-Access-Token. Wenn er mit checkout_type: "checkout_link" gesendet wird, verknüpft Shopify den Cart mit dem Kundenkonto |
checkout_type | string | Nein | Checkout-Typ: checkout_link, draft_order (Standard) oder draft_order_without_checkout_request |
buyerIdentity.customerAccessToken gilt nur, wenn checkout_type auf checkout_link gesetzt ist, da Shopify dieses Feld für Storefront-Carts verwendet. Es verknüpft kein Kundenkonto mit Shopify-Bestellentwürfen.Senden Sie
buyerIdentity, wenn Sie checkout_type: "draft_order_without_checkout_request" verwenden. RxScale lehnt die Anfrage ohne dieses Feld ab, weil keine Shopify-Checkout-Anfrage gesendet wird, über die Kundendaten später erfasst werden könnten.