🛒 Bringo

Integrations

Social Login

Let customers sign in with Google, Facebook or Apple. This page covers the website; the apps use native Google/Facebook/Apple sign-in configured in each app's Firebase & Login page.

Where to configure (website)

Admin → Settings → Login Setting. That tab lists every sign-in method — email/password, phone OTP, Google, Facebook and Apple. Switch a provider on and its Client ID / Client Secret boxes appear underneath.

Social login settings
Admin → Settings → Login Setting.

Google

  1. Google Cloud Console → APIs & Services → Credentials → Create OAuth client ID → Web application. (See the Google Cloud guide.)
  2. Authorized redirect URI: https://your-domain.com/account/auth/google/callback
  3. Copy the Client ID and Client Secret into the admin Social Login fields.

Facebook

  1. developers.facebook.com → create an app → add Facebook Login. (See the Facebook App guide.)
  2. Valid OAuth redirect URI: https://your-domain.com/account/auth/facebook/callback
  3. Copy the App ID and App Secret into the admin Social Login fields.
  4. Switch the app to Live mode in the Facebook dashboard so all users can log in.
🔗
The redirect URI must match exactly (including https and no trailing slash) or the provider will reject the login.
📱
Turning a provider on here also tells the apps to show that login button. But the apps still need their own native keys (Google web client id, Facebook app id) baked in at build time — see the app Firebase & Login page.

Apple

Apple sign-in is mandatory if you publish an iOS app that offers Google or Facebook login — App Review rejects builds that offer third-party sign-in without it.

  1. Apple Developer → Certificates, Identifiers & Profiles → your App ID → enable Sign In with Apple.
  2. Create a Services ID for the website, with your domain and the return URL https://your-domain.com/account/auth/apple/callback.
  3. Create a key with Sign In with Apple enabled and download the .p8 (once only).
  4. Paste the Services ID, Team ID, Key ID and key contents into the admin Login Setting fields.
🕶️
Apple lets users hide their real address and supply a relay address instead, and it returns the person's name only on the very first authorisation. The platform stores what it receives on that first sign-in; if you delete the account and sign in again, Apple sends no name and the profile appears blank until the user fills it in.

Verify each provider

Test in a private window while signed out of the provider — an already-authorised session can mask a broken configuration:

  1. Open https://your-domain.com/account/login and press the provider button.
  2. You should land on the provider's consent screen showing your app name — not an error, and not someone else's brand.
  3. After approving you should return signed in, and the account should appear in Admin → Customers.

Troubleshooting

"redirect_uri_mismatch" (Google)
The URI registered in Google Cloud differs from the one being sent — usually http vs https, a www. difference, or a trailing slash. They must match character for character.
"URL blocked" (Facebook)
The redirect URI is not in the app's Valid OAuth Redirect URIs list, or the app is still in Development mode. Both are in the Facebook Login settings.
Facebook works for you, nobody else
The app is in Development mode, which only admins/testers of the app can use. Switch it to Live.
"invalid_client"
Client ID and secret are mismatched or from a different project. Regenerate the secret and re-paste both.
Button visible in the app but nothing happens
The website toggle only controls visibility. The app also needs its own native ids compiled in — see the app's Firebase & Login page.
Google sign-in fails only in the Play release
The release is signed by Play App Signing, so its SHA-1 differs from your local build. Add the Play SHA-1 to Firebase.
Two accounts for the same person
They signed in with the phone OTP once and a social provider another time, using different addresses. Accounts are matched by verified email, so a provider that hides the address creates a separate record.