Files
calendar/apps/web/modules/settings/organizations/new/flow.mermaid
T
837349e3d3 feat: Organization onboarding improvement - Payment before creation of org but onboarding doesn't require payment (#18990)
* create seed for org upgrade

* migrate about/new pages

* pages refactor + use persistant zustand store

* invited members view + confirm button

* add check to org slug

* check reserved subdomain

* remove quotes from subdomain env var

* intro to creation + billing

* create price

* fix types

* createWithPaymentIntent + permission check on teams

* open stripe link in popup

* intro to tests

* organization price and seat override tests

* move permissions to a new permission service

* update env and permission check

* intro to paid invoice trigger

* dont use subId

* wip

* Get e2e working with migration of teams and members

* fix ts errors

* Get flow working again

* Fix various issues and refactor

* Some more fixes

* Fix wrong page route link

* Platform onboarding fix and moving members of team to org rix

* Platform onboarding fix and moving members of team to org rix

* Fix tests, found a bug

* Get custom price flow working

* Get admin impersonation flow working for a non-existent user

* Fix unit test

* Admin onboarding handover

* fix admin onboarding tests

* fix ts error

* Get updateQuantity working

* More fixes

* fix test

* fix schema name

* Add tests

* Add missing file

* More tests

* Add more tests

* fix mt-2 moving down input into overflow

* fix handover layout removing HOC

* Update PR_TODO.md

* fix ts error due to merge conflict

---------

Co-authored-by: Hariom Balhara <hariombalhara@gmgmail.com>
Co-authored-by: Hariom <hariombalhara@gmail.com>
Co-authored-by: Omar López <zomars@me.com>
2025-03-13 11:17:43 +00:00

39 lines
1.6 KiB
Plaintext

graph TD
Start[Start] --> AboutOrg[About Organization Form]
AboutOrg -->|Set Name, Logo, Bio| Teams[Add Teams]
Teams -->|Create/Migrate Teams| Members[Add Team Members]
Members -->|Add Members & Invite| Payment[Payment]
Payment -->|Create Payment Intent| StripeCheckout[Stripe Checkout]
StripeCheckout -->|Success| PaymentSuccess[Payment Success View]
StripeCheckout -->|Failure| Payment
subgraph "About Organization"
AboutOrg -->|Store in onboardingStore| OrgData[Organization Data]
OrgData -->|"Name, Logo, Bio"| ValidateSlug[Validate Slug]
end
subgraph "Teams Setup"
Teams -->|Store in onboardingStore| TeamData[Teams Data]
TeamData -->|"Create New/Migrate"| TeamMembers[Team Members]
end
subgraph "Members Setup"
Members -->|Store in onboardingStore| MemberData[Members Data]
MemberData -->|"Invited/Migrating"| MembersList[Members List]
end
subgraph "Payment Process"
Payment -->|Create Intent| PaymentData[Payment Data]
PaymentData -->|"Billing Period, Price/Seat"| StripeSession[Stripe Session]
end
subgraph "Webhook Handling"
StripeCheckout -->|invoice.paid| WebhookHandler[Webhook Handler]
WebhookHandler -->|Process Payment| OrgCreation[Create Organization]
OrgCreation --> Complete[Complete]
end
style Start fill:#f9f,stroke:#333,stroke-width:2px
style Complete fill:#9f9,stroke:#333,stroke-width:2px
style StripeCheckout fill:#fdd,stroke:#333,stroke-width:2px
style WebhookHandler fill:#ddf,stroke:#333,stroke-width:2px