Configuration · Customer login methods (Google, Facebook)

Chooses how customers can sign in to the centre’s app and web: a Google OAuth project selected from the platform’s registered Google login configurations, and/or Facebook with an app id and secret.

AreaConfiguration
Routesconfiguration.centers.new · configuration.centers.edit
Centre modulesalways available
Staff levelsroot · admin · manager · scmanager
Modelscenter · google-login-config
UI labelconfiguration.center.login-configuration
Coverage3 use cases · 1 happy · 3 failure

How it works

The route loads every googleLoginConfig (client id + project name) sorted by project name, so Google projects are registered centrally and only selected per centre. Facebook is configured inline; the centre model requires facebookAppSecret whenever facebookAppId is filled. These are credentials, so they are visible to anyone who can edit the centre.

Use cases

Why someone opens this (3)

  • Letting customers register with Google to reduce sign-up friction.
  • Moving a centre to a new Facebook app.
  • Reusing one Google OAuth project across a group’s centres.

Path map

flowchart LR
    F(["Customer login methods Google, Facebook"]):::feat
    F --> H1["Social login enabled"]:::ok
    F -.-> X1["Facebook id without secret"]:::bad
    F -.-> X2["No Google projects registered"]:::bad
    F -.-> X3["Wrong credentials"]:::bad
    classDef feat fill:#566066,stroke:#566066,color:#ffffff,font-weight:bold
    classDef ok fill:#e3f1ea,stroke:#0d6b42,color:#0d4a2e
    classDef bad fill:#f7e6e2,stroke:#9a2d1c,color:#6e1f13

Happy paths

Social login enabled

  1. Admin opens the login configuration section of the centre.
  2. Selects the Google project and enters the Facebook app id and secret.
  3. Saves; the app offers both sign-in buttons.

Failure paths

QA checklist

Tick these off while regression-testing this feature. The boxes are plain Markdown, so progress is visible in git diffs.

  • ✅ Social login enabled
  • ⛔ Facebook id without secret
  • ⛔ No Google projects registered
  • ⛔ Wrong credentials

Implementation


Generated from doc/feature-inventory.json · id config-customer-login · commit 276788ca6