# Pennylane — Accounting API: connection

> Canonical URL: https://developers.apideck.com/apis/accounting/pennylane/connection

# Connecting Pennylane

## Prerequisites

- An active Pennylane account ([app.pennylane.com](https://app.pennylane.com)). Pennylane is available in **France and Germany**: check that your consumers are in one of those markets before you begin.
- At least one company set up in Pennylane
- An account user with permission to grant third-party access to the company

## Steps

1. Click **Authorize** to start the OAuth flow.
2. Log in to your Pennylane account (if you aren't already).
3. Pick the Pennylane company you want to connect, then review and approve the requested [scopes](https://pennylane.readme.io/docs/v2-scopes).
4. You'll be redirected back and the connection will show as **Connected**.

## Notes

- Pennylane access tokens are valid for 24 hours and are refreshed automatically.
- Refresh tokens are rotated on every refresh and expire after 90 days of inactivity. If a connection sits unused for that long, the consumer will need to re-authorize.
- Each connection is scoped to a single Pennylane company. To sync more than one company, create a separate Vault connection per company.

## Troubleshooting

| Issue | Solution |
|-------|----------|
| "Not Connected" after authorization | Refresh the page and try again. If the redirect URI in the dashboard doesn't match the one registered with Pennylane, the OAuth flow will fail silently. |
| 403 errors when reading or writing a resource | The connection was authorized without the matching scope. Re-authorize and tick the required scope. |
| Missing data | Confirm the data exists in the Pennylane company that was selected during authorization: connections are per company, not per workspace. |


[API reference](https://developers.apideck.com/apis/accounting/reference.md) · [Coverage matrix](https://developers.apideck.com/apis/accounting/coverage)
