# pennylane-sdk (PHP) > Unofficial PHP SDK for the Pennylane API, the French accounting and invoicing platform. Complete coverage of the Company API v2 and Firm API v1, typed response objects, safe retries and client side throttling. Package: composer require goatandcow7/pennylane-sdk | Repository: https://github.com/GoatAndCow7/pennylane-sdk-php ## Documentation - [pennylane-sdk-php](https://goatandcow7.github.io/pennylane-sdk-php/): The unofficial PHP SDK for the Pennylane API, the French accounting and invoicing platform used by tens of thousands of companies and accounting firms. - [Getting started](https://goatandcow7.github.io/pennylane-sdk-php/getting-started/): From zero to your first Pennylane API calls in a few minutes. - [Accounting operations](https://goatandcow7.github.io/pennylane-sdk-php/guides/accounting/): Beyond invoicing, the API exposes the accounting core: journals, chart of accounts, entries, lettering, trial balance and legal exports. - [Authentication](https://goatandcow7.github.io/pennylane-sdk-php/guides/authentication/): Pennylane supports three authentication modes. All of them end up as a Bearer token in the Authorization header, which the SDK sets for you. - [French e-invoicing (2026 reform)](https://goatandcow7.github.io/pennylane-sdk-php/guides/e-invoicing/): France mandates electronic invoicing for domestic B2B transactions: - [Errors, retries and rate limits](https://goatandcow7.github.io/pennylane-sdk-php/guides/errors-and-retries/): Everything the SDK throws derives from Pennylane\Sdk\Exception\PennylaneException: - [Firm API (accounting firms)](https://goatandcow7.github.io/pennylane-sdk-php/guides/firm-api/): Accounting firms (cabinets d'expertise comptable) get a dedicated API to work across their whole client portfolio: list the companies they manage, read and p... - [Invoicing lifecycle](https://goatandcow7.github.io/pennylane-sdk-php/guides/invoicing/): This guide walks the full life of a customer invoice: draft, finalize, send, get paid, reconcile. - [OAuth 2.0 apps](https://goatandcow7.github.io/pennylane-sdk-php/guides/oauth/): Building an app that other Pennylane companies install? Pennylane supports the standard authorization-code flow. Ask Pennylane for partner credentials (clien... - [Pagination and filtering](https://goatandcow7.github.io/pennylane-sdk-php/guides/pagination/): List endpoints return a CursorPage. The simplest way to use it: iterate with foreach, and let the SDK fetch the following pages lazily, under the client thro... - [Webhooks](https://goatandcow7.github.io/pennylane-sdk-php/guides/webhooks/): Pennylane webhooks are in beta. Pennylane itself recommends keeping the changelog endpoints as a fallback while the feature stabilizes. Known event types so ... - [Clients](https://goatandcow7.github.io/pennylane-sdk-php/api/clients/): The SDK has two entry points. Both are final classes with readonly resource properties, so every resource is available right after construction and cannot be... - [Accounting](https://goatandcow7.github.io/pennylane-sdk-php/api/company/accounting/): These resources cover the company's general ledger: journals, the chart of accounts, ledger entries and their lines, the trial balance, and fiscal years. - [Analytics (categories)](https://goatandcow7.github.io/pennylane-sdk-php/api/company/analytics/): These resources cover the categories used to tag treasury and analytical records, and the groups that organize them. - [Banking](https://goatandcow7.github.io/pennylane-sdk-php/api/company/banking/): This page covers the treasury side of the Company API: bank accounts, the reference list of bank establishments used when creating one, and bank transactions... - [E-invoicing](https://goatandcow7.github.io/pennylane-sdk-php/api/company/e-invoicing/): France's e-invoicing reform routes invoices through registered platforms (PDP/PA). This page - [Exports](https://goatandcow7.github.io/pennylane-sdk-php/api/company/exports/): Accounting exports are asynchronous jobs: you create a job for a period, then poll it until its - [Invoicing (sales)](https://goatandcow7.github.io/pennylane-sdk-php/api/company/invoicing/): This page covers the customer-facing side of the Company API: customers, quotes, customer - [Payment mandates](https://goatandcow7.github.io/pennylane-sdk-php/api/company/mandates/): Payment mandates authorize direct debit collection from a customer. The Company API supports - [Webhooks and misc](https://goatandcow7.github.io/pennylane-sdk-php/api/company/misc/): This page rounds up the remaining Company API resources: standalone file uploads, change event - [Purchases](https://goatandcow7.github.io/pennylane-sdk-php/api/company/purchases/): This page covers the purchasing side of the Company API: the supplier directory, supplier invoices (purchase bills) from import through payment and accountin... - [Errors](https://goatandcow7.github.io/pennylane-sdk-php/api/errors/): Every exception raised by the SDK derives from Pennylane\Sdk\Exception\PennylaneException, itself a RuntimeException. Catch that base type to handle any SDK ... - [Filters](https://goatandcow7.github.io/pennylane-sdk-php/api/filters/): Pennylane\Sdk\Filter builds one filter condition for the filter query parameter accepted by list methods. Build conditions with the static helpers and pass t... - [Firm resources](https://goatandcow7.github.io/pennylane-sdk-php/api/firm/): Resources of PennylaneFirm. Every method takes $companyId as its first argument, except FirmCompanies. FirmCompanies, FirmFiscalYears and FirmTrialBalance us... - [OAuth](https://goatandcow7.github.io/pennylane-sdk-php/api/oauth/): Pennylane\Sdk\OAuth\OAuthApp implements the OAuth 2.0 authorization code flow for multi company partner integrations. - [Pagination](https://goatandcow7.github.io/pennylane-sdk-php/api/pagination/): List methods return a page object rather than a plain array. Both page types implement \Countable and \IteratorAggregate, so a foreach over the result walks ... - [Webhook helpers](https://goatandcow7.github.io/pennylane-sdk-php/api/webhooks/): Pennylane\Sdk\Webhooks\Webhooks verifies webhook delivery signatures and parses payloads. Pennylane webhooks are in beta: they POST a JSON payload to your HT... ## Optional - [Complete documentation in a single file](https://goatandcow7.github.io/pennylane-sdk-php/llms-full.txt)