21 lines
1.6 KiB
Markdown
21 lines
1.6 KiB
Markdown
# B2B Meghívó és Shadow Identity Specifikáció
|
|
|
|
## 1. Modul célja és Masterbook 2 illeszkedés
|
|
A fejlesztés célja a B2B flotta csatlakozási folyamat megvalósítása a Masterbook 2 "Shadow Identity Check" logikájával. A tulajdonosok vagy adminisztrátorok e-mail alapján meghívhatnak tagokat a szervezetükbe.
|
|
|
|
## 2. Adatmodell változások (Alembic terv)
|
|
A `VerificationToken` táblában szükséges a `user_id` mezőt nullable-re állítani, valamint egy `extra_data` JSON mezőt hozzáadni a meghívó metaadatainak (org_id, role, email) tárolásához, mivel új (még nem regisztrált) felhasználók számára is készülhet meghívó token.
|
|
|
|
A `sync_engine.py` segítségével legeneráljuk az Alembic migrációt.
|
|
|
|
## 3. Shadow Identity Check Logika
|
|
A `complete_kyc` folyamat során, mielőtt egy frissen regisztrált `User` `Person` rekordja véglegesítésre kerülne, a rendszer azonosítja a "Shadow" profilokat a `last_name`, `first_name` (és opcionálisan `birth_date`) alapján.
|
|
- Ha egyezés van: az új `User` megörökli az eddig "Shadow" formában (pl. AI általi OCR betöltéssel) létező `Person` rekordot, és a megárvult eredeti `Person` rekord deaktiválódik.
|
|
|
|
## 4. Új API Végpontok (`organizations.py`)
|
|
- `POST /{org_id}/invitations`: Meghívó küldése (e-mail ellenőrzéssel). Meglévő felhasználónál `OrganizationMember` készül "pending" státusszal. Új felhasználónál `VerificationToken` generálódik.
|
|
- `POST /invitations/{token}/accept`: Meghívó elfogadása token alapján.
|
|
|
|
## 5. Tesztelés
|
|
E2E teszt script (`test_invitation_e2e.py`) futtatása az `sf_api` konténerben a fenti forgatókönyvek ellenőrzésére.
|