SaaS und Rechnungsstellung

Krypto-Rechnungsstellung für B2B-SaaS

Wie B2B-Kunden SaaS-Rechnungen in Krypto bezahlen: wann die Zahlung erstellt wird, wie Sie abgleichen und Teilzahlungen, Verlängerungen und Erstattungen behandeln.

Manche B2B-Kunden möchten Ihre Rechnungen in Krypto bezahlen: internationale Teams, Unternehmen mit Problemen im Bankverkehr, Krypto-native Firmen. Das zu ermöglichen ist nicht schwer, aber Rechnungen verhalten sich anders als ein Shop-Checkout, und einige Designentscheidungen bestimmen, ob Ihr Finanzteam zufrieden ist oder genervt. Dieser Leitfaden behandelt diese Entscheidungen.

Warum ein SaaS-Unternehmen Krypto-Rechnungen anbietet

Krypto ist selten der Hauptweg, auf dem ein SaaS-Unternehmen bezahlt wird, und muss es auch nicht sein. Sie ist als zusätzliche Option nützlich, wenn:

  • Kunden in Ländern sitzen, in denen Karten oder Banküberweisungen langsam, teuer oder unzuverlässig sind;
  • der Käufer ein Krypto-natives Unternehmen ist, das Lieferanten bereits in Stablecoins bezahlt;
  • Sie Zahlungen wollen, die nicht von Bankzeiten abhängen und nicht rückbuchbar sind.

Behalten Sie Karten und Banküberweisungen für alle anderen. Krypto ist eine weitere Zeile in der Liste „So bezahlen Sie“ auf Ihrer Rechnung.

Wie sich eine Rechnung von einem Checkout unterscheidet

Ein Shop-Checkout erstellt die Zahlung im Moment des Kaufs. Eine Rechnung wird zuerst ausgestellt und Tage oder Wochen später bezahlt, oft von einem Finanzteam, das einem internen Prozess folgt. Das ändert einiges:

  • Der Betrag wird in Dollar fixiert, nicht in Coins. Sie stellen die Rechnung in Dollar aus; der Zahler sendet den Gegenwert in dem Asset, das er nutzt.
  • Der Wechselkurs lässt sich nicht wochenlang halten. Bei Qvard wird der Kurs ab Erstellung der Zahlung für eine Stunde fixiert. Ein bei Rechnungsstellung gesetzter Kurs wäre bei Zahlung längst überholt.
  • Eine Referenz ist nötig. Finanzteams brauchen auf jeder Zahlung eine Rechnungsnummer, um sie abzugleichen.
  • Zahler durchlaufen Freigabeprozesse. Sie zahlen eventuell in Teilen oder verspätet; Sie brauchen daher klare Regeln für Teilzahlungen.

Zahlung erstellen, wenn der Kunde zahlen will

Die zentrale Designentscheidung: Erstellen Sie die Kryptozahlung nicht bei Rechnungsstellung. Erstellen Sie sie, wenn der Kunde sich zum Zahlen entscheidet.

Platzieren Sie auf der Rechnungsseite einen Button „Mit Krypto bezahlen“. Klickt der Kunde darauf, erstellt Ihr Backend eine Zahlung mit der Rechnungsnummer als id und dem fälligen Betrag in Dollar und leitet den Kunden dann auf die Zahlungsseite. Der Kurs ist dann für die nächste Stunde fixiert, genau das Zeitfenster, das der Kunde zum Senden der Überweisung braucht.

Die Rechnungsnummer als id bringt zwei Vorteile. Klickt der Kunde zweimal oder wird Ihre Anfrage wiederholt, liefert Qvard für dieselbe id und Zahlungsmethode die bestehende Zahlung zurück, statt ein Duplikat anzulegen. Und der Webhook, der das Ergebnis meldet, trägt dieselbe id, sodass Sie die Rechnung ohne Zuordnungstabelle finden.

Node.jspay-invoice.js
// Runs when the customer clicks "Pay with crypto" on invoice INV-2026-0142,
// not when the invoice is issued: the exchange rate is fixed for one hour.
async function payInvoiceWithCrypto(invoice) {
  const res = await fetch('https://api.qvard.com/api/v1/payment', {
    method: 'POST',
    headers: { Authorization: 'Bearer ' + process.env.QVARD_API_KEY, 'Content-Type': 'application/json' },
    body: JSON.stringify({
      id: invoice.number,        // "INV-2026-0142": clicking twice returns the same payment
      price: invoice.amountUsd   // amount due, in US dollars
    })
  });
  if (!res.ok) throw new Error('Qvard ' + res.status);
  return (await res.json()).redirectUrl;   // open this payment page for the customer
}

Mit dem Webhook abgleichen

Wenn die Zahlung abgeschlossen ist, sendet Qvard einen Webhook an Ihren Server mit der id (Ihrer Rechnungsnummer) und dem Status. Ihr Handler markiert die Rechnung als bezahlt und erfasst die Transaktion. Drei Gewohnheiten machen das zuverlässig:

  • Prüfen Sie die Signatur im mitgesendeten Header X-Qvard-Signature (HMAC-SHA256 mit Ihrem geheimen Schlüssel) und weisen Sie Abweichungen zurück.
  • Antworten Sie mit genau HTTP 200; sonst wird die Benachrichtigung erneut gesendet, bis zu fünfmal innerhalb von etwa sechs Minuten.
  • Machen Sie den Handler idempotent, damit ein wiederholtes Ereignis die Zahlung nicht doppelt erfasst.

Der Webhook meldet die Zahlung, nicht die Rechnung; speichern Sie daher neben der Rechnung die Zahlungs-id, das Datum und den Status. So hat Ihre Buchhaltung eine Zeile pro Zahlung zum Abgleich mit dem erwarteten Kontoauszug. Den vollständigen Handler finden Sie in Kryptozahlungen auf einer Website annehmen.

Unterzahlungen und Börsengebühren

Das häufigste Support-Ticket bei Krypto-Rechnungen ist die Unterzahlung. Der Zahler sendet etwas weniger als nötig, und die Rechnung ist nicht beglichen. Typische Gründe:

  • der Kunde hat von einem Börsenkonto gezahlt, und die Börse hat ihre Auszahlungsgebühr vom gesendeten Betrag abgezogen;
  • der Kunde hat den Betrag gerundet;
  • der Kunde hat die Überweisung in zwei Teilen gesendet.

Eine Unterzahlung erscheint mit dem Status partial. Legen Sie Ihre Regel vorab fest und schreiben Sie sie auf die Rechnung: Entweder bleibt die Rechnung offen, bis die Differenz eintrifft, oder Sie akzeptieren Zahlungen innerhalb einer kleinen Toleranz. Die Rechnungsseite sollte anzeigen, was eingegangen ist und was noch fehlt, damit der Kunde ohne Rückfrage beim Support nachzahlen kann.

Ein Tipp für die Rechnung: Wer von einer Börse zahlt, sollte die Auszahlungsgebühr zum Betrag addieren.

Verlängerungen und Abonnements

Bei Karten belastet ein Abonnement den Kunden automatisch. Eine Kryptozahlung ist anders: Der Kunde sendet die Überweisung jedes Mal selbst, eine Verlängerung lässt sich also nicht aus seiner Wallet „ziehen“.

Praktikabel ist folgendes Vorgehen: Stellen Sie die Verlängerungsrechnung wie gewohnt aus und senden Sie dem Kunden einen Link zum Bezahlen, mit demselben Button und derselben Zahlungserstellung wie bei einer ersten Rechnung. Qvard erstellt pro Anfrage eine Zahlung; wiederkehrende Abrechnung übernimmt Ihr eigenes Abrechnungssystem, das für jeden Zeitraum eine neue Zahlung erstellt. Erinnern Sie den Kunden vor der Fälligkeit, und wenn Sie für Jahrespläne bei Zahlung in Krypto einen Rabatt gewähren, machen Sie ihn auf der Rechnung sichtbar.

Erstattungen und Gutschriften

Eine bestätigte Kryptoüberweisung ist endgültig, eine Erstattung ist also eine neue Überweisung von Ihnen an den Kunden. Vereinbaren Sie die Adresse schriftlich mit dem Kunden, da eine Überweisung an eine falsche Adresse nicht zurückzuholen ist. Die Qvard-API enthält einen Payout-Aufruf, um Gelder von Ihrem Guthaben an eine Adresse zu senden, mit Ihrer eigenen id, damit eine Wiederholung das Geld nicht doppelt sendet; Sie können auch manuell im Kundenbereich auszahlen.

Ordnen Sie die Erstattung der ursprünglichen Rechnung zu und stellen Sie die übliche Gutschrift aus, damit Ihre Bücher dieselbe Geschichte erzählen wie die Blockchain.

Checkliste für die Buchhaltung

Besprechen Sie mit Ihrem Steuerberater die Punkte, die von Ihrem Land abhängen, und stellen Sie die Daten bereit, die er braucht:

  • Rechnungsnummer, Zahlungs-id, Datum, Betrag in Dollar sowie genutztes Asset und Netzwerk;
  • wie Sie den Eingang und eine mögliche Umwandlung in Fiat verbuchen;
  • wie die vom Kunden gezahlte Netzwerkgebühr behandelt wird;
  • wie und wann Sie auf Ihre Wallet auszahlen.

Dies sind allgemeine Informationen, keine Steuer- oder Rechtsberatung.

Wo Qvard passt

Qvard ist ein Custodial-Krypto-Zahlungsgateway: Sie erstellen eine Zahlung über die API, der Kunde zahlt auf einer gehosteten Zahlungsseite in USDT oder USDC in den wichtigsten Netzwerken (oder in BTC oder LTC), und der Endstatus erreicht Ihren Server per Webhook. Das Geld wird Ihrem Händlerguthaben gutgeschrieben, und Sie zahlen es auf Ihre Wallet aus. Speziell für SaaS-Teams siehe Kryptozahlungen für SaaS; die Grundlagen in was ein Krypto-Zahlungsgateway ist.

FAQ

Kann ich Rechnungen in Krypto statt in Dollar ausstellen?

Sie stellen die Rechnung in US-Dollar aus, und der Zahler sendet den Gegenwert in dem Asset, das er wählt. So bleiben Ihre Preise stabil und Ihre Buchhaltung in einer Währung.

Wie lange gilt der Wechselkurs?

Bei Qvard ist der Kurs ab Erstellung der Zahlung eine Stunde lang fixiert. Erstellen Sie die Zahlung, wenn der Kunde zahlen will, nicht bei der Rechnungsstellung.

Was passiert, wenn der Kunde weniger als die Rechnung zahlt?

Die Zahlung erscheint mit dem Status partial. Sie können die Rechnung offen halten, bis die Differenz eintrifft, oder sie innerhalb einer von Ihnen festgelegten Toleranz akzeptieren; nennen Sie die Regel auf der Rechnung.

Kann ich ein Abonnement automatisch abbuchen?

Nein. Eine Kryptozahlung wird vom Kunden gesendet und lässt sich daher nicht automatisch von einer Wallet abbuchen. Ihr Abrechnungssystem stellt jede Verlängerung aus und sendet dem Kunden einen Zahlungslink.

Ähnliche Artikel

Ähnliche Artikel