Log in with PayPal signs users in with their PayPal account. It suits commerce products where the buyer already has PayPal and you want one identity across sign-in and checkout.

## Copy the redirect URI

In the [Authdog console](https://console.authdog.com), select the project and environment, open **Authentication > Providers**, find **PayPal**, and click **Enable**. Copy the redirect URI shown in the form:

```url
https://identity.authdog.com/api/v1/callback/<connectionId>
```

## Create the application

1. Open the [PayPal Developer Dashboard](https://developer.paypal.com/dashboard/applications/live) and create an app under **Live**.
2. Open the app and enable **Log in with PayPal**.
3. Select **Advanced options** and add the redirect URI from Authdog as a **Return URL**.
4. Choose the personal information you need — at minimum the full name and email.
5. Save, then copy the **Client ID** and **Secret**.

## Configure Authdog

| Field | Value |
| --- | --- |
| **Client ID** | The client identifier from the provider |
| **Client Secret** | The client secret from the provider |

Save, then toggle the connection **active**.

## What PayPal returns

Authdog requests the `openid profile address` scopes and reads the profile from `https://api.paypal.com/v1/identity/oauth2/userinfo`.

The userinfo endpoint returns the payer id, name, email and its verified flag, and — with the `address` scope — the address on the account.

Only attributes you enabled on the app are released, so a field you did not tick simply arrives empty.

## Test it

1. Open your environment's hosted sign-in page, or link to `https://identity.authdog.com/api/v1/signin/<connectionId>`.
2. Select the PayPal button and complete the flow.
3. Confirm the user appears under **Users** in the console with a PayPal identity linked.

## Troubleshooting

| Symptom | Cause |
| --- | --- |
| `invalid_client` | Sandbox credentials used against the live endpoint |
| Missing email or name | The corresponding attribute is not enabled on the PayPal app |
| Redirect or callback URL error | The URI registered with the provider does not match Authdog's exactly |
| Works in one environment only | Each environment has its own `connectionId`, and so its own redirect URI to register |

## Related

| Read | To learn how to |
| --- | --- |
| [Connectors](/docs/connectors) | Set up any other social provider |
| [PayPal Sandbox](/docs/connectors/paypal-sandbox) | Test the same flow against sandbox accounts |
