Kundenansicht neu P7: Bestellung Fassung 6 mit Kundenart vom Server und Wortlaut-Nachweis
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
bf1e968a83
commit
99e1987bc4
5 files changed
+324
-15
No files matched your search
@@ -574,6 +574,7 @@ function checkoutMessage(product, lateStart, offer) {
|
||||
* Position, Beschreibung, Hinweistext und Testrabatt richten sich nach dem Produkt.
|
||||
* startChoice: 'sofort' (Leistung und erste Abbuchung sofort) oder 'nach_frist' (Probezeit ohne Leistung
|
||||
* und ohne Abbuchung bis consent.serviceStartAt, dem Tag nach dem Ende der Widerrufsfrist, deadlines.js).
|
||||
* consent.termsVersion (optional, Fassung 6): die Fassung, der der Kunde zugestimmt hat; ohne sie gilt config.abo.termsVersion.
|
||||
* offer: individuelles Angebot { id, stripeCouponId, text } -> Coupon im Checkout; bei Testkonten
|
||||
* bleibt der Testrabatt im Checkout und das Angebot wird nach dem Abschluss angehaengt (offerDeferred).
|
||||
*/
|
||||
@@ -603,8 +604,8 @@ export async function createAboCheckout(customer, consent, productKey, offer = n
|
||||
webklarCustomerId: customer.$id,
|
||||
email: customer.email || '',
|
||||
productKey,
|
||||
termsVersion: config.abo.termsVersion,
|
||||
consentTextVersion: config.abo.termsVersion,
|
||||
termsVersion: consent.termsVersion || config.abo.termsVersion,
|
||||
consentTextVersion: consent.termsVersion || config.abo.termsVersion,
|
||||
termsAcceptedAt: consent.termsAcceptedAt,
|
||||
startChoice: consent.startChoice,
|
||||
earlyStartConsentAt: consent.earlyStartConsentAt || '',
|
||||
|
||||
@@ -112,3 +112,17 @@ export async function speichereVertragsNachweis({ customerId, art, bezug = '', t
|
||||
throw Object.assign(new Error(FEHLER_NACHWEIS), { status: 500 })
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Wie speichereVertragsNachweis, fuer die Routen: jeder Fehler (auch eine Pruefung der Eingaben) wird zu einem 500 mit FEHLER_NACHWEIS,
|
||||
* damit der Kunde nie einen internen Text sieht und die Handlung (Stripe-Sitzung, Wechsel, Speicheraenderung, Antrag) unterbleibt.
|
||||
*/
|
||||
export async function speichereNachweisFuerRoute(args) {
|
||||
try {
|
||||
return await speichereVertragsNachweis(args)
|
||||
} catch (err) {
|
||||
if (err?.status === 500 && err.message === FEHLER_NACHWEIS) throw err
|
||||
console.error(`[vertragsnachweis] Nachweis abgelehnt: ${err?.name ?? 'Fehler'} ${err?.status ?? ''} ${err?.message ?? ''}`.trim())
|
||||
throw Object.assign(new Error(FEHLER_NACHWEIS), { status: 500 })
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user