Zum Inhalt springen
Dokumentation

API

API

Die Partner-API ermöglicht es Ihrem System, Gutscheine auszustellen, nachzuschlagen und einzulösen. Es ist einfaches HTTP mit JSON — es gibt kein SDK, das Sie installieren müssen.

Basis-URL

https://api.kuvert.dk

Authentifizierung

Alle Aufrufe werden mit einem API-Schlüssel im Authorization-Header als Bearer-Token authentifiziert.

Terminal
curl https://api.kuvert.dk/v1/api/giftcards \
  -H "Authorization: Bearer pk_live_..."

Schlüssel werden unter Einstellungen → API-Schlüssel erstellt. Nur der Eigentümer kann sie erstellen und widerrufen. Es gibt zwei Präfixe, und Sie wählen nicht zwischen ihnen:

PräfixWird verwendet für
pk_test_Testen. Berührt kein echtes Geld.
pk_live_Produktion. Arbeitet mit echten Karten und Salden.

Ihr Shop verkauft in genau einer Stripe-Umgebung, und der Schlüssel erhält diese Umgebung. Ein Demo-Shop erhält einen pk_test_-Schlüssel; ein Shop, der echtes Geld verkauft, erhält einen pk_live_. Schlüssel aus der anderen Umgebung werden beim ersten Aufruf abgelehnt — deshalb gibt es keinen Button, der falsch wählen kann.

Alle Aufrufe sind an das Unternehmen des Schlüssels gebunden. Sie können die Karten eines anderen Unternehmens nicht sehen oder berühren, und ein Schlüssel funktioniert nur, während das Unternehmen aktiv ist — ein Unternehmen, das Stripe noch nicht abgeschlossen hat oder das ausgesetzt ist, erhält 401.

Antwortformat

Antworten sind JSON. Ein Gutschein liegt unter dem Schlüssel giftCard, eine Liste unter giftCards.

Fehler

Ein Fehler hat immer dieselbe Form: ein Objekt mit einem Feld namens error.

JSON
{ "error": "unauthorized" }
StatuserrorBedeutet
400invalid_issue_requestDer Textteil entspricht nicht dem, was die Ausstellung erfordert.
400invalid_redeem_requestDer Textteil entspricht nicht dem, was die Einlösung erfordert.
400bad_requestDer Aufruf fehlt etwas Grundlegendes, typischerweise der Code im Pfad.
400not_a_gift_cardDer Code im Pfad ist ein Ticketcode (TKT-…). Er gehört zur Eincheckung, nicht zu einem Gutschein — die Antwort ist 400 und nicht 404, sodass Sie nicht nach einer Karte suchen, die es nie gab.
401unauthorizedDer Schlüssel fehlt, wurde widerrufen, oder das Unternehmen ist nicht aktiv.
404gift_card_not_foundDer Code existiert nicht auf diesem Unternehmen.
409idempotency_key_conflictDer Schlüssel wurde auf einer ANDEREN Karte verwendet. Ein wiederverwendeter Schlüssel wiederholt nur genau den Aufruf, für den er verwendet wurde — er kann bei einer neuen Karte niemals erfolgreich sein.
409cash_claim_cannot_be_deniednoCashClaim kann nicht auf einer VERKAUFTEN Karte gesetzt werden. Eine Karte, für die der Kunde bezahlt hat, trägt das Recht, den Restbetrag in bar ausgezahlt zu bekommen, und dieses Recht kann ein Flag nicht aufheben — geben Sie sie stattdessen als b2b oder comp aus.
404merchant_not_foundDer Schlüssel ist gültig, aber das Unternehmen dahinter existiert nicht mehr. Selten, und nichts, das ein Client beheben kann — kontaktieren Sie uns.
404order_not_foundResend hat die Karte gefunden, aber nicht die Bestellung, aus der sie stammt. Eine manuell ausgegebene Karte hat keine Bestellung und kann daher nicht auf diese Weise erneut gesendet werden.
409card_has_no_deliveryDie Karte wurde niemals von uns versendet — sie wurde über den Tresen ausgegeben. Es gibt keine Zustellung zum Wiederholen.
409order_has_recipient_listDie Bestellung wird Karte für Karte adressiert, daher gibt es keine einzelne Adresse auf der Bestellung zu korrigieren. Senden Sie die einzelne Karte stattdessen mit recipient erneut — es ist der eine Empfänger, um den es bei der Korrektur geht.
422invalid_recipientrecipient im Body von Resend ist keine E-Mail-Adresse, an die wir senden können. Lassen Sie das Feld weg, um an die Adresse zu senden, die die Karte bereits hat.
502delivery_failedWir haben unseren Anbieter erreicht, und dieser lehnte den Versand ab. Die Karte hat keinen Fehler, und nichts wurde belastet — versuchen Sie es erneut, oder überprüfen Sie die Adresse.

Die Einlösung hat zusätzlich ihre eigenen Antwortkodes — der Status der Karte, ihre Gültigkeit, Verzögerung und der Saldo. Diese sind in der Tabelle unter Einlösen auf der Seite Gutschein zusammengefasst. Einer von ihnen taucht erneut auf: card_inactive wird auch von Einlösung umkehren beantwortet, aber unter engeren Bedingungen — dort nur für stornierte oder eingefrorene Karten, und diese haben ihre eigene Tabelle weiter unten.