ac3bd6e8ea
Statistiken/Abo: Kundenfeedback 2026-07-24 komplett umgesetzt + Steuern: DATEV-Fixes 08+09/2025 (Sammel-Commit Branch-WIP)
...
Feedback-Umsetzung (dev/2026-07-22/feedback-analyse-2026-07-24.md, alle 10 Punkte):
- VIP-Statistik: eigener Berater ('ich', Linie 0) in Neue-Kundenabos- und beiden Top-10-Listen; Top-10-Umsatz sortiert nach abgerechneten Ist-Punkten + Abo-Anzahl-Spalte; Fußnote nicht-payline-wirksame Punkte (SalesVolumePoints::nonPaylinePoints)
- Führungskräfte-Liste: beide Sichten 'direkt' (an nächster FK abgeschnitten, additiv) und 'gesamt' (komplette Downline), Gesamt-Spalte nach Kundenzählweise
- Team-Abos: je Ebene 'abgerechnet (Monat)' und 'bis zum 25. erwartet'; Payline-Karte mit Teamabo-/Kundenabo-Zählern
- Incentive-Live-Ranking: Qualifizierte zuerst nummeriert (fixt auch isWinner rank<=max_winners)
- Porto: Netto-/Brutto-Kennzeichnung (Berater netto, Endkunden inkl. MwSt., portal_view-Flag; auch CRM-/Shop-Warenkorb + Checkout), Yard::shipping_tax-Fix
- Struktur-Ansicht: Abo-Badges 'A' (eigenes Abo) und '(n)' (Kundenabos) je Teampartner, gebatcht
- Abo-Löschung: Softdelete setzt active=0 (UserAbo deleting-Hook) + Bereinigungs-Migration für gelöschte-aber-aktive Abos
- Doku: technische Analyse + Kundinnen-Feedback-Dokument unter dev/2026-07-22/
- Tests: IncentiveRankingTest, TeamStructureAboBadgesTest, YardShippingTaxTest (neu); BackofficeStatisticsListsTest, TeamAboOverviewTest, PaylineForecastServiceTest, AboAdminDeleteTest, AboOneTimeViewTest erweitert
Außerdem enthalten (Branch-WIP vor dem Feedback): DATEV-Abgleich-Fixes 08+09/2025, USt-ID-Live-Validierung sowie restliche unkommittete Stände (u. a. Abo-Pause-Sprachkeys).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-24 13:56:02 +00:00
ce4750fd1a
Stripe-Integration (S4, S5, S7.6): Abos, Zahlungsart ändern, Zahlarten-Kommunikation
...
Phase S4 – Abos über Stripe (E2E komplett im Testmodus):
- Abo-/Recovery-Checkout: customer_creation=always + setup_future_usage=off_session
- StripePaymentService::chargeAbo (off-session PaymentIntent, Idempotency-Key),
StripeGateway, Provider-Dispatch im Abbuchungs-Cron (PAYONE-Pfad unverändert)
- Webhook: Zahlungsmittel-Capture vor Paid-Pfad, 503 payment_not_yet_visible bei
Cron-Transaktions-Race; Command stripe:process-pending-events (Cron-Ende + 10-min
Scheduler) verarbeitet liegengebliebene Events nach
- createNewAbo/advanceAboAfterRecoveryPayment Stripe-aware inkl. Race-Absicherung;
Recovery-Orders nutzen advanceAboAfterRecoveryPayment (latenter PAYONE-Duplikat-Bug)
- Migrationen: Stripe-Abo-Spalten auf shopping_payments; clearingtype varchar(3)→(20)
inkl. Reparatur der zu 'str' gekürzten Live-Zeilen
Phase S5 – Zahlungsart ändern (Scope: jede Zahlart, nicht nur Kreditkarte):
- Stripe Checkout mode=setup ohne Abbuchung; PAYONE-Abos ziehen beim Wechsel auf
Stripe um (Auslaufmodell §7.2)
- AboPaymentMethodService: beginStripeChange/finalize/applyStripePaymentMethod
(idempotent, detacht alte PM, card_changes-Log); Webhook setup_intent.succeeded
als Sicherheitsnetz; Einstiege Portal/CRM/Berater-Kunden-Link flow-abhängig
- Views/Mails flow-abhängig („Zahlungsweise" statt „Kreditkarte")
Phase S7.6 – Zahlarten-Kommunikation:
- Einheitliche Zahlarten-Logos (SVG) + wiederverwendbares Partial payment_logos;
Checkout/Footer zeigen Kern-Zahlarten + „···"-Icon, /zahlungsarten komplett neu
mit allen aktiven Stripe-Zahlarten (gegen Account-Konfiguration verifiziert)
und Vorkasse (PAYONE); Sofort/SEPA entfernt
Tests: StripeAboTest (15), StripePaymentMethodChangeTest (10),
PaymentMethodsCommunicationTest (28), PaymentProviderManagerTest angepasst.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-09 14:45:17 +00:00
6f21845607
Stripe-Integration (S0–S3): Einmalzahlungen über Stripe Checkout + Notfall-Go-Live
...
Wegen PAYONE-Ausfall vorgezogen live geschaltet: alle Einmalzahlungen
(Shop + Salescenter) laufen über Stripe Hosted Checkout, Abos sind bis
Phase S4 eingefroren.
- Provider-Abstraktion: PaymentProvider-Enum, PaymentGatewayInterface,
PaymentProviderManager (Settings-Schalter, provider-treu je Bestand),
PayoneGateway als unveränderter Adapter
- StripePaymentService: Checkout Session (eine Gesamtposition, Metadata,
success/cancel-Redirects), StripeClientWrapper (lazy, Dark Launch),
StripeCustomerService, StripeTransactionRecorder (client_secret-Redaction)
- Webhook /stripe/webhook: Signaturprüfung, Idempotenz über
stripe_webhook_events (Crash-Retry-Reprocessing), txaction-Prioritäten,
Betrags-Guard, lockForUpdate-Paid-Pfad, genau eine Bestätigungsmail
- Zahlungsmethoden-Anzeige aus charge.succeeded (carddata inkl. Wallet,
auftragsunabhängiges Backfill aus dem Event-Store)
- Checkout: Wartungsmodus mit Admin-Bypass, Abo-Freeze-Hinweis,
Stripe-Option (Online-Zahlung) statt Zahlartenwahl, Vorkasse ausblendbar
- Abo-Freeze-Guards: Cron user:make_abo_order, Retry, Kartenupdate
- Admin-Settings-Karte Zahlungen (Provider, Wartung, Freeze, Vorkasse)
- Hotfix: 500 bei Vorkasse ohne Clearing-Daten in admin/sales/_detail
und checkout-final (PAYONE-Ausfall)
- Doku dev/2026-07-08-stripe/ (Plan S0–S8, Konzept, IST-Analyse)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-08 15:56:41 +00:00
0660f4e0a0
Abo-Recovery: fehlgeschlagene Folgezahlung im Checkout nachholen
...
- Pay-now-Flow: bei fehlgeschlagenem Abo (Status 3) begleicht der Inhaber die
offene Rechnung im Standard-Checkout mit frei waehlbarer, abo-faehiger Zahlart
(nur eigenes Abo: Berater me-View + Kundenportal), payNow-Controller + Routen
- AboRecoveryCheckoutService baut die ShoppingInstance aus den Abo-Artikeln;
neue Spalte shopping_orders.recovery_user_abo_id verknuepft Bestellung<->Abo
- Bei Erfolg: AboHelper::advanceAboAfterRecoveryPayment schreibt das Abo fort
(Status->2, next_date) und uebernimmt die gewaehlte Zahlart als neues Token
fuer kuenftige Abbuchungen
- Neue Pay-now-Fehlermail (AboPaymentFailedMail) ersetzt die generische
Fehlermail im Abo-Cron; Link fuehrt auf die Abo-Detailseite (CRM bzw. Portal)
- Retry-/"extern erledigt"-Buttons nur noch fuer Admins; tote user/portal-
Retry-Routen entfernt
- Checkout: Recovery-Hinweis statt "Abschluss des Abonnements", Lieferadresse
vorbelegt, korrekter Zurueck-Link (Abo statt Shop)
- UserAbo::selfServiceDetailUrl zentralisiert die Abo-URL (Mail, Back-Links)
- Test-Command abo:test-recovery; Tests fuer payNow, Advance-Logik, Fehlermail
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-02 10:38:05 +00:00
34d8f60bbd
User Statistik
2026-05-18 17:23:28 +02:00
a95c2b665b
14-04-2026
2026-04-14 18:07:45 +02:00
4a8f4b4abc
20-02-2026
2026-02-20 17:55:06 +01:00
7325edebbd
23-01-2026
2026-01-23 17:35:23 +01:00
Kevin Adametz
3b2253147b
commit 08-2025
2025-08-12 18:01:59 +02:00
Kevin Adametz
824fa43e96
Updates to 03-2025
2025-04-01 10:36:47 +02:00
Kevin Adametz
7ec90d7e18
08 2024
2024-08-05 12:05:24 +02:00
Kevin Adametz
813b30e616
#53 , #52 , #51 change Points
2022-07-21 10:37:34 +02:00
Kevin Adametz
37371ab31c
Sammelbestellung von Extern
2022-07-18 18:07:31 +02:00
Kevin Adametz
29dd8537eb
API User Like
2021-12-25 02:59:15 +01:00
Kevin Adametz
2d9db4e52e
Country Prices | Homeparty | Shop | Order
2021-08-27 18:53:12 +02:00
Kevin Adametz
2ffc33dcd6
Custom Price / Land / User Order Homeparty
2021-08-20 18:22:21 +02:00
Kevin Adametz
e07be4a5f8
Homparty v1.0
2020-12-17 23:02:22 +01:00
Kevin Adametz
2160f7ddf5
Erweiterungen / Korrekturen Beraterbestellungen
2020-09-08 19:22:07 +02:00
Kevin Adametz
65edf8a8a7
Berater Bestellung / online
2020-08-24 18:17:02 +02:00
Kevin Adametz
a19f7700ea
Next Member Shopping
2020-08-21 18:20:40 +02:00
Kevin Adametz
557a1c83a6
cart responsive, Checkout from cart
2020-08-14 18:32:41 +02:00
Kevin Adametz
99d2d55818
Berater Bestellungen
2020-08-12 19:21:19 +02:00
Kevin Adametz
db76085333
MwSt
2020-07-01 13:21:35 +02:00
Kevin Adametz
9f7b6561ba
Registierung Korrekturen
2020-04-29 20:06:51 +02:00
Kevin Adametz
03402d0727
register step
2020-03-26 09:46:06 +01:00
Kevin Adametz
d16781edff
Berater Register, Mitgliedschat live
...
https://dev.adametz.media:3000/cliquers/mivita.care/issues/3
2020-03-09 14:45:09 +01:00
Kevin Adametz
557146fe78
Membership
2020-03-07 19:44:58 +01:00
Kevin Adametz
82e5a0c345
membership register
2020-02-15 14:53:32 +01:00
Kevin Adametz
3c0ab0f627
SEPA Payment
2020-01-08 19:40:16 +01:00
Kevin Adametz
1ad3f80bb0
Credit Card + php 7.3
2020-01-02 14:07:59 +01:00
Kevin Adametz
4228524dbf
Bug Netto in Card to Brutto
2019-06-11 14:35:33 +02:00
Kevin Adametz
efd3912a32
last fix for first online
2019-03-28 14:51:50 +01:00
Kevin Adametz
41da96ed43
last corrections for payments
2019-03-19 15:45:46 +01:00
Kevin Adametz
8ab92621f8
Payone, Shop, wizard
2019-03-04 17:05:44 +01:00
Kevin Adametz
c85ab3cb23
checkout, register, payment,
...
checkout correction,
register wizard,
payment packege,
2019-03-02 00:08:11 +01:00
Kevin Adametz
cb9082a8c6
payment Card first 4 payments inc. mails
2019-02-28 18:09:54 +01:00
Kevin Adametz
075a3675d5
save order
2019-02-25 22:16:08 +01:00
Kevin Adametz
3240061228
payone 2
2019-02-22 18:41:06 +01:00
Kevin Adametz
08e42f8f35
final checkout and card
2019-02-21 21:38:36 +01:00
Kevin Adametz
f24a0859b7
shipping costs
2019-01-07 00:15:41 +01:00
Kevin Adametz
dcca5315d7
user shops + shipping
2019-01-06 01:40:44 +01:00
Kevin Adametz
b1e0b54eae
Card + Products
2018-12-12 14:33:52 +01:00