P0 hardening — forms, session resolve, payment methods

Featurekamo-internal
Shipped
May 28, 2026 at 8:36 PM UTC
Author
kamo
Commit
7d6348c

Forms (org-side): - **************** and /{productUid} edit pages - New LoanProductForm: basics / pricing / limits / terms / compliance sections, kind-aware fields (installment vs LOC), promissory-note template UID, allowed-state-codes - **************** product selection (only active products from this market), borrower-member, principal, optional term, borrower state, "save draft" vs "send" - /settings/features/lending: org-side Stripe Connect onboarding page (calls **************** redirects to Stripe) Borrower-side hardening: - New useCurrentSession() hook resolves memberId/orgId from /api/user-info (canonical *** path) — replaces fake KMEMBER/KORG cookie reads in My Loans, Offer Detail, Loan Detail, Lending Settings, PipelineLoanOffersTab, PipelineActiveLoansTab - New BorrowerPaymentMethodsCard: borrower can link ACH bank (Stripe payment_method id + mandate) or card, see linked methods, set default, revoke; embedded on /loans/[loanId] page - losApi: + startStripeConnectOnboarding Settings nav (2 of 3 places per memory rule): - SettingsStatusWindow adds "Loan Products" under Commerce + route entry for **************** - (sidebar.tsx has no POS entries — confirmed no-op)

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing