Fügt Unterstützung für mehrere (Teil-)Zahlungen auf Rechnungen hinzuWichtige Änderungen
Das ändert sich
Wir führen Unterstützung für mehrere (Teil-)Zahlungen für Rechnungen und Stornorechnungen ein. Rechnungen dokumentieren auch Überzahlungen und können jetzt auch Out-of-Band-Zahlungen verfolgen. Außerdem fügen wir das Feld confirmation_ zum Objekt „Rechnung“ hinzu, um die Unterstützung für die Verwendung des Payment Element zu verbessern.
Warum ist dies eine wichtige Änderung?
- Die Felder
payment_,intent charge,paidundpaid_wurden aus demout_ of_ band Invoice-Objekt entfernt. - Das Feld
Rechnungaus den Objekten PaymentIntent und Zahlung entfernt. - Die Felder
application_undfee_ amount transfer_wurden aus demdata Rechnung-Objekt entfernt. Für Zahlungen, die über Stripe erfolgen, sind diese Felder nun über das zugrunde liegende PaymentIntent-Objekt zugänglich, indem Siepayments.imdata. payment. payment_ intent Rechnung-Objekt erweitern. - Das Feld
refundim Objekt Stornorechnung wurde eingestellt und durch einrefunds-Array ersetzt. - Das Feld
amount_im Objektpaid Invoicegibt nun Out-of-Band-Zahlungen wieder.
Ergebnis
Wir haben das Rechnungszahlungs-Objekt eingeführt, um die Verbindung zwischen Zahlungen und Rechnungen darzustellen, und frühere Rechnungs- und Zahlungszeiger auf relevante Objekte entfernt. Aktualisieren Sie Ihre Integration so, dass nicht mehr davon ausgegangen wird, dass eine einzelne Rechnung mit einer einzigen Zahlung bezahlt werden muss. Nutzen Sie das neue Objekt für die Rechnungszahlung, um die Verbindung zwischen Zahlungen und Rechnungen zu verstehen.
Das Array invoice. payments auf Zahlungsinformationen überprüfen
Sie können invoice. bei der Interaktion mit dem Invoice-Objekt überprüfen, indem Sie die Eigenschaft payments erweitern:
Das Array invoice. enthält eine Liste aller mit der Rechnung verbundenen Zahlungen sowie deren jeweiligen Zuordnungs- und Zahlungsstatus.
Verwenden Sie die neuen Endpoints für Rechnungszahlungen für Zahlungen und die Verbindung von Rechnungen
Um die Verbindung zwischen einem Payment Intent und einem Rechnungs-Objekt zu verstehen, können Sie den Endpoint zum Auflisten von Rechnungszahlungen verwenden:
confirmation_secret für Payment Element-Integrationen verwenden
Für Payment Element-Integrationen, insbesondere für Abonnement-Integrationen, die bisher auf der Erweiterung von invoice. oder latest_ beruhten, können Sie jetzt das neue Feld invoice. im Rechnungsobjekt verwenden, indem Sie confirmation_ erweitern:
Auf application_fee_amount und transfer_data über PaymentIntents zugreifen
Mit dem Entfernen der Felder application_ und transfer_ aus dem Rechnung-Objekt können Sie für über Stripe abgewickelte Zahlungen nun über das zugrunde liegende PaymentIntent-Objekt auf diese Felder zugreifen. Erweitern Sie dazu payments., wenn Sie die Rechnung abrufen:
Sie können dann über das erweiterte PaymentIntent-Objekt auf invoice. und invoice. zugreifen. Diese Felder sind nur für Zahlungen verfügbar, die über Stripe abgewickelt werden, wenn der Zahlungstyp payment_ ist.
Rechnungen mit Out-of-Band-Zahlungen identifizieren
Nach dem Entfernen des Felds paid_ können Sie jetzt Rechnungen mit Out-of-Band-Zahlungen mit der Eigenschaft invoice.payments identifizieren.
Um zu überprüfen, ob eine Rechnung vollständig außerhalb von Stripe bezahlt wurde, überprüfen Sie, ob der Rechnungsstatus bezahlt, der amount_due größer als 0 und die Summe der Zahlungen vom Typ PaymentIntent im Array invoice.payments gleich 0 ist.
Um zu überprüfen, ob eine Rechnung teilweise außerhalb von Stripe bezahlt wird, überprüfen Sie, ob der amount_ größer als 0 und die Summe der Zahlungen vom Typ PaymentIntent im Array invoice. kleiner als der amount_paid ist.
Änderungen
Upgrade
Zugehörige Änderungen
- Ersetzt die Preisfelder der obersten Ebene durch eine verbesserte Preismodellierung für Rechnungsposten und Rechnungseinzelposten
- Ersetzt steuerbezogene Eigenschaften der obersten Ebene durch eine verbesserte Steuermodellierung für Rechnungen, Rechnungsposten und Stornorechnungsposten
- Fügt Zuständigkeitsebene und Grund für die Besteuerung zu manuellen Steuerbeträgen auf Rechnungen hinzu