mivita/public/images/payments-assets/mbway.svg
Kevin dd1c8f9a1e 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

1 line
5.8 KiB
XML

<svg viewBox="0 0 38 24" role="img" width="38" height="24" aria-labelledby="pi-mbway" xmlns="http://www.w3.org/2000/svg"><title id="pi-mbway">MB WAY</title><path opacity=".07" d="M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3z"/><path fill="#fff" d="M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32"/><path d="M2.652 18.267l-.059.459a.38.38 0 00.381.424H17.88c.232 0 .41-.198.383-.424l-.061-.459a.658.658 0 01.579-.72.646.646 0 01.712.579l.057.445c.116.998-.448 1.872-1.456 1.872H2.761c-1.008 0-1.573-.874-1.457-1.872l.058-.445a.646.646 0 01.711-.579.657.657 0 01.579.72" fill="#d81e25"/><path d="M18.225 10.154c0 .608-.215.952-.571 1.374l-.036.043.05.029c.705.43 1.197 1.079 1.234 1.991.055 1.359-1.097 2.482-2.463 2.479h-3.602a.642.642 0 01-.634-.65V8.435c0-.361.283-.652.632-.652l2.974.009c1.297.002 2.416.955 2.416 2.362m-1.793 4.659c.726 0 1.303-.528 1.288-1.223-.016-.712-.663-1.172-1.385-1.174h-1.46a.595.595 0 01-.588-.605c0-.337.264-.606.588-.606h.974c.658-.026 1.165-.424 1.196-1.046.032-.666-.539-1.165-1.238-1.165H13.44l-.008 5.819h3" fill="#100f0d"/><path d="M6.616 13.676l.016.049.018-.049c.168-.46.369-.969.583-1.525.22-.584.439-1.143.658-1.675.221-.541.431-1.024.631-1.444.2-.429.366-.724.493-.886a.97.97 0 01.781-.354h.149c.199 0 .354.053.47.15.107.093.171.2.188.323l.931 7.219a.593.593 0 01-.159.437c-.105.1-.256.149-.453.149-.198 0-.353-.047-.469-.138a.506.506 0 01-.218-.361c-.03-.24-.06-.507-.089-.8-.04-.292-.186-1.552-.226-1.868-.038-.327-.301-2.368-.389-3.109l-.008-.062-.299.625c-.101.215-.21.474-.331.776-.119.3-.241.618-.36.954-.13.325-.707 1.972-.707 1.972-.052.15-.154.451-.245.727a12.48 12.48 0 01-.202.572.82.82 0 01-.744.455.813.813 0 01-.746-.455 10.32 10.32 0 01-.202-.572c-.093-.276-.193-.577-.248-.727 0 0-.577-1.647-.704-1.972a29.247 29.247 0 00-.363-.954c-.12-.302-.229-.561-.328-.776l-.3-.625-.007.062c-.09.741-.35 2.782-.39 3.109-.041.316-.186 1.576-.226 1.868-.03.293-.06.56-.093.8a.502.502 0 01-.215.361c-.116.091-.273.138-.47.138-.197 0-.345-.049-.451-.149-.106-.106-.159-.252-.16-.437l.931-7.219a.529.529 0 01.189-.323.703.703 0 01.467-.15h.151c.325 0 .585.119.781.354.128.162.292.457.492.886.202.42.41.903.632 1.444.219.532.439 1.091.659 1.675.214.556.415 1.065.582 1.525" fill="#100f0d"/><path d="M4.79 3.419h11.322c1.066 0 1.597.8 1.722 1.856l.047.339a.662.662 0 01-.583.725.652.652 0 01-.715-.587l-.046-.323c-.047-.401-.217-.711-.625-.711H4.989c-.407 0-.577.31-.625.711l-.043.323a.653.653 0 11-1.301-.138l.047-.339c.126-1.056.656-1.856 1.723-1.856" fill="#d81e25"/><path d="M25.154 11.027c-.079.302-.159.625-.244.969-.085.343-.17.67-.253.984-.082.313-.161.588-.236.825a3.002 3.002 0 01-.185.486c-.089.154-.243.232-.464.232-.061 0-.141-.013-.241-.039-.098-.025-.18-.096-.248-.21a3.005 3.005 0 01-.185-.511 24.53 24.53 0 01-.235-.873c-.084-.33-.165-.679-.249-1.047a79.928 79.928 0 01-.223-1.026c-.066-.316-.121-.587-.166-.808a13.422 13.422 0 01-.074-.4c-.004-.028-.007-.047-.007-.058v-.033c0-.093.033-.169.106-.228a.42.42 0 01.264-.086c.1 0 .179.022.241.064.06.039.105.113.132.218 0 .01.016.091.045.239.032.148.07.338.116.568.048.232.101.49.158.776.058.285.117.576.182.869.063.293.128.576.191.853.063.275.12.512.176.708a36.527 36.527 0 00.381-1.38c.066-.256.13-.51.19-.767l.17-.712c.053-.221.098-.415.136-.586.039-.171.069-.297.091-.379a.46.46 0 01.157-.248c.079-.06.17-.09.281-.09a.46.46 0 01.299.095.437.437 0 01.148.243c.062.268.127.57.199.903a59.514 59.514 0 00.463 2.011c.084.327.163.617.24.869.055-.197.115-.434.178-.708l.194-.85c.067-.289.129-.578.19-.865l.167-.771a106.486 106.486 0 00.164-.778c.027-.105.072-.179.132-.218a.418.418 0 01.24-.064c.104 0 .193.03.264.086a.28.28 0 01.109.228v.033a6.253 6.253 0 01-.088.458 108.095 108.095 0 01-.392 1.829 49.61 49.61 0 01-.244 1.042c-.08.33-.156.621-.232.872a2.898 2.898 0 01-.185.506.439.439 0 01-.252.218.92.92 0 01-.245.047.663.663 0 01-.099-.01.748.748 0 01-.141-.033.516.516 0 01-.148-.078.362.362 0 01-.117-.144 3.826 3.826 0 01-.178-.52 37.54 37.54 0 01-.458-1.776c-.077-.332-.15-.645-.215-.935" fill="#100f0d"/><path d="M31.315 12.279a40 40 0 00-.33-.984 17.49 17.49 0 00-.411-1.065l-.052-.142a.692.692 0 00-.053.136 16.567 16.567 0 00-.408 1.071c-.1.299-.209.627-.325.984zm-1.835.718a24.52 24.52 0 00-.22.732 5.932 5.932 0 01-.178.553c-.06.16-.181.241-.363.241-.127 0-.219-.032-.278-.096a.347.347 0 01-.086-.243.36.36 0 01.016-.109c.011-.031.045-.144.105-.337.057-.191.132-.431.226-.717.093-.286.197-.599.31-.939a34.26 34.26 0 01.707-1.941c.115-.289.224-.522.322-.696a.382.382 0 01.178-.192.785.785 0 01.303-.049c.123 0 .225.021.309.059a.324.324 0 01.178.198c.078.164.171.386.279.662.106.278.22.578.338.899.118.322.235.651.352.985.115.336.223.648.318.937l.248.738c.068.203.113.335.128.393.01.035.017.071.017.109a.32.32 0 01-.099.243c-.067.064-.163.096-.289.096-.096 0-.164-.022-.213-.064a.404.404 0 01-.11-.177 11.55 11.55 0 01-.196-.553c-.073-.225-.153-.468-.235-.732H29.48" fill="#100f0d"/><path d="M34.12 12.443a.654.654 0 01-.079-.091 5.456 5.456 0 01-.33-.514 9.736 9.736 0 01-.275-.497c-.09-.177-.177-.356-.262-.534a12.458 12.458 0 01-.231-.496c-.071-.155-.13-.289-.178-.4a1.671 1.671 0 01-.112-.298.428.428 0 01-.005-.062c0-.099.034-.182.103-.246a.395.395 0 01.286-.101c.11 0 .187.028.235.083.047.056.082.11.103.165.01.029.038.088.079.181l.152.346c.061.138.13.289.207.453.079.166.156.328.237.488.079.159.158.311.232.458.073.144.145.264.21.359a6.14 6.14 0 00.34-.603c.12-.242.236-.48.347-.716.11-.238.204-.447.286-.627.079-.182.127-.295.144-.339a.666.666 0 01.103-.165c.046-.055.126-.083.235-.083.122 0 .216.034.287.101a.327.327 0 01.101.246c0 .026 0 .048-.002.062-.003.014-.011.035-.02.062l-.096.239a24.658 24.658 0 01-.405.903c-.087.178-.174.355-.265.531-.091.175-.182.344-.274.503-.09.158-.175.295-.252.404a1.237 1.237 0 01-.156.188v1.707c0 .11-.035.199-.105.27a.37.37 0 01-.268.103.37.37 0 01-.268-.103.366.366 0 01-.104-.27v-1.707" fill="#100f0d"/></svg>