Profile: Rechnungsadresse is always a street address, no Packstation toggle

Matches /checkout's own billing card exactly (an invoice needs a real
postal address) — the profile form previously offered a Lieferart/
Packstation choice for what's actually always used as the billing
address, inconsistent now that a separate "Lieferadresse" section exists.
This commit is contained in:
Marco
2026-07-30 08:48:04 +00:00
parent e3352d7e32
commit 8c843c0ac1
3 changed files with 57 additions and 54 deletions
+3 -13
View File
@@ -16,10 +16,7 @@ export async function PATCH(request: Request) {
const {
firstName,
lastName,
deliveryMethod,
street,
packstationNumber,
postNumber,
zip,
city,
country,
@@ -44,7 +41,8 @@ export async function PATCH(request: Request) {
!firstName ||
typeof lastName !== "string" ||
!lastName ||
(deliveryMethod !== "address" && deliveryMethod !== "packstation") ||
typeof street !== "string" ||
!street ||
typeof zip !== "string" ||
!zip ||
typeof city !== "string" ||
@@ -54,12 +52,6 @@ export async function PATCH(request: Request) {
) {
return NextResponse.json({ ok: false, reason: "Bitte alle Pflichtfelder ausfüllen." }, { status: 400 });
}
if (deliveryMethod === "address" && !street) {
return NextResponse.json({ ok: false, reason: "Bitte Straße und Hausnummer angeben." }, { status: 400 });
}
if (deliveryMethod === "packstation" && (!packstationNumber || !postNumber)) {
return NextResponse.json({ ok: false, reason: "Bitte Packstation- und Postnummer angeben." }, { status: 400 });
}
// Both independently optional (see Customers.ts's own comment) — only
// format-checked when actually provided, same as the backend field itself.
const normalizedVatId = typeof vatId === "string" && vatId ? normalizeVatId(vatId) : undefined;
@@ -97,10 +89,8 @@ export async function PATCH(request: Request) {
const result = await updateCustomerProfile(session.token, session.customer.id, {
firstName,
lastName,
deliveryMethod,
deliveryMethod: "address",
street,
packstationNumber,
postNumber,
zip,
city,
country,