There are two ways to join an organization on CodeCharter: someone invites you by email, or your verified email address matches a domain the organization has set up for auto-join. Both end the same way: you become a member with the role you were given, and land in the organization.
Following an invitation link
When someone with the right permissions invites you, you receive an email with the organization's name, who invited you, the role you're being given, and the invitation's expiry date. The email also explains whether you'll be asked to create an account or just sign in, depending on whether one already exists for your address. The email contains a link — click it to open the redemption page.
What that page shows you depends entirely on the state of your invited address, not on a choice you make yourself:
If you don't have an account yet
The redemption page asks directly for a name (optional) and a password. There is no separate registration step and no verification email to wait for: as soon as you submit the form, your account is created and the invitation accepted, in one step.
If you already have a confirmed account
Sign in if you're not already; the redemption page takes you there and back automatically afterwards. As long as you sign in with the exact email address the invitation was sent to, you'll then see just an Accept button. One click adds you to the organization immediately, with the role from the invitation.
If you're signed in with a different address, the invitation is rejected with an explanation instead of being applied — it is never attached to the wrong account silently. Sign out and sign back in with the invited address, or ask whoever sent the invitation to resend it to the correct one.
If an unconfirmed account already exists for your address
This happens when an account was created for that address but a sign-in was never confirmed and no password was ever set for it. The redemption page tells you so and lets you set a new password. Doing so claims that account and joins you to the organization; all prior sign-ins, second factors and passkeys on that account are removed at that point, since there is no way to know who set them up.
If the organization is full
Every role except BillingManager uses a seat of the organization's plan, see Roles and permissions. If accepting the invitation would exceed the seats included in the plan, the redemption page tells you the organization is full, and the organization's owners are notified once. The invitation itself is not withdrawn: it stays open until its normal expiry date and becomes acceptable as soon as the organization has enough free seats again. You don't need a new link — pressing Accept again once the organization has made room, or simply reopening the original link, is enough.
Auto-join through your email domain
An organization can verify an email domain and offer auto-join to anyone who registers or signs in with an address on that domain, see Domain verification. If your verified email address matches such a domain, you see a join offer during onboarding — for example right after registering — and in the organization switcher. The offer names the organization and the role you would get.
Joining through an auto-join offer is always an explicit action: you see the offer and confirm it yourself. It is never applied automatically in the background. The same seat limit as for invitations applies — if the organization has no free seat for the role, the offer tells you so and notifies the owners.
If you have a pending invitation and a matching auto-join offer for different organizations at the same time, both are shown, and accepting one does not remove the other. Belonging to more than one organization is normal.
When an invitation or offer doesn't go through
The redemption page explains why when it can't accept an invitation or offer as sent:
| Situation | What you see |
|---|---|
| The organization has no free seat left for the role | The organization is full; its owners have been notified |
| You're signed in with a different address than the one invited | The invitation is for a different email address than your account |
| The invitation has expired | The invitation has expired |
| The invitation or offer was already accepted or withdrawn | It is no longer valid |
| The invitation no longer exists | It no longer exists |
Ask whoever manages the organization to send a fresh invitation if yours has expired or was withdrawn.
Related pages
- Invite members: how an organization sends and manages invitations.
- Roles and permissions: what each role can do.
- Domain verification: how an organization sets up auto-join for a verified domain.