API Documentation

Quickstart

First journal in five minutes

Three steps from zero to a balanced journal in the sandbox ledger. No billing, no sales call.

  1. 1

    Get sandbox credentials

    Self-serve signup. Your workspace issues a client_id and client_secret — exchange them for an access token (OAuth 2.0).

  2. 2

    Post a balanced journal

    Debits must equal credits or the API rejects the entry before it reaches the ledger.

  3. 3

    Read it back

    The journal is live in the general ledger, trial balance, and reports immediately.

Get sandbox keys

Prefer a guided walkthrough? Build embedded accounting in 20 minutes

Need the accounting model first? Read the Journal API guide or the general ledger API overview.

POST /v1/accounting/journals
curl https://api-sandbox.paprel.com/v1/accounting/journals \
  --request POST \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
  --data '{
  "currency": "USD",
  "date": "2026-06-11",
  "description": "Initial journal",
  "exchange_rate": "1",
  "lines": [
    {
      "account_code": "1010",
      "debit": "100.00",
      "credit": null,
      "description": "Cash movement"
    },
    {
      "account_code": "4000",
      "debit": null,
      "credit": "100.00",
      "description": "Revenue entry"
    }
  ],
  "meta_data": {
    "root_entity_type": "journal",
    "root_entity_id": "external-journal-001",
    "description": "Initial journal import"
  },
  "posted": true,
  "reference": "INIT-001"
}'
Response
{
  "data": {
    "journals": [
      {
        "id": "journal_...",
        "identifier": "JRN-2026-0001",
        "currency": "USD",
        "is_posted": true,
        "is_locked": false
      }
    ]
  }
}
The full API surface

159 endpoints across the accounting lifecycle

One OpenAPI 3.1 spec (v1.1.0) covers the ledger, receivables, payables, and the platform controls around them. Use the spec to generate SDKs in any language, browse the interactive reference below, or jump to what you need.

Accounting core

JournalsAccountsReconciliationsTransactions

Post balanced double-entry journals, manage the chart of accounts, and reconcile against the ledger of record.

Receivables

InvoicesQuotesCredit NotesClientsLate Fees

Bill customers, issue estimates and adjustments, and keep AR linked to the same books.

Payables

BillsPurchase OrdersVendorsExpenses

Record vendor bills, authorize procurement, and track what you owe end to end.

Catalog & delivery

ItemsProjectsTax

Manage the product/service catalog, project and timesheet billing, and tax configuration.

Company & platform

Stripe ConnectPayment GatewaysSMTPCurrenciesConnections

Configure payments, email, multi-currency, and per-tenant settings behind a white-label surface.

Access & audit

Roles & PermissionsActivitySystem Settings

Scope access with RBAC and keep a high-fidelity, exportable record of every system interaction.

See how these surfaces connect to payments, banks, email, and AI agents on the integrations page.

Loading API specification

OpenAPI 3.1 — large spec, this can take a few seconds.

Developer support

Need custom integration help?

Talk to the engineers building Paprel. Architecture review covering deployment mode, OAuth flows, MCP scope, and integration shape — replies come from the team, not a queue.