For Agents
Export approved invoice postings from Candis, sync master data such as ledger accounts and contacts, and download invoice files.
Get started with Candis API in minutes using your preferred integration method.
# Add to your MCP client config (Claude Desktop, Cursor, Windsurf)
{
"jentic": {
"url": "https://api.jentic.com/mcp",
"auth": "oauth"
}
}
# Then ask your agent:
"export approved invoices from Candis"
# → Jentic returns the GET /events tool with parameter schema, agent executes.What an agent can do with Candis API API.
Export approved invoice batches for posting to a downstream accounting ledger via /organizations/{organizationId}/exports
Retrieve the line-item postings for a specific export via /exports/{exportId}/postings
Sync master data including general ledger accounts, contacts, cost dimensions, tax codes, and payment conditions via the /imports/* endpoints
Update existing master-data records via PUT on the same /imports/* endpoints
GET STARTED
Use for: Export approved invoices from Candis to our accounting system, List all exports created in the last week, Retrieve the line-item postings for a specific export, Import general ledger accounts into a Candis organisation
Not supported: Does not handle invoice capture UI, approval-workflow configuration, or payment execution — use for exporting approved invoice postings and syncing accounting master data only.
Jentic publishes the only available OpenAPI document for Candis API, keeping it validated and agent-ready.
Jentic publishes the only available OpenAPI specification for Candis API, keeping it validated and agent-ready. The Candis API exposes the AP automation platform's accounting data: it exports approved invoices and their postings for downstream ledgers, lets external systems import and update core master data such as general ledger accounts, contacts, cost dimensions, tax codes, payment conditions, and additional delivery costs, and provides direct file downloads for archived invoice documents. Nineteen endpoints span 10 resources and use bearer-JWT authentication tied to a single Candis organisation.
Track the status of import jobs via /organizations/{organizationId}/imports/{processId}
Download archived invoice files by ID via /organizations/{organizationId}/files/{fileId}
Read organisation metadata via /organizations/info to scope subsequent calls
Patterns agents use Candis API API for, with concrete tasks.
★ Approved Invoice Export to ERP
Finance teams using Candis for invoice capture and approval need to push approved invoices into their general ledger system on a schedule. POST /organizations/{organizationId}/exports creates an export batch, GET /exports/{exportId}/postings returns the booked postings, and the resulting payload feeds directly into ERPs such as DATEV, SAP, or NetSuite.
POST /organizations/{organizationId}/exports to create the daily export, then GET /exports/{exportId}/postings and write each posting to the ERP's journal-entry endpoint.
Master Data Synchronisation from ERP
When master data changes in the ERP (new vendors, ledger accounts, cost centres, tax codes), those updates must flow into Candis so AP coding stays consistent. The /imports/* endpoints accept POST to seed and PUT to update, and /imports/{processId} reports per-job processing status so the integration can retry failures.
POST /organizations/{organizationId}/imports/contacts with the latest vendor list from the ERP, then poll GET /imports/{processId} until the job reports completion.
Audit and Document Retrieval
Auditors and finance ops sometimes need to pull the original invoice document for a specific posting. The export response references file IDs that GET /organizations/{organizationId}/files/{fileId} resolves to the archived document, letting an audit bot download supporting evidence on demand.
Resolve the fileId from a posting via GET /organizations/{organizationId}/exports/{exportId}/postings, then GET /organizations/{organizationId}/files/{fileId} to download the original PDF.
AI Agent AP Workflows via Jentic
Through Jentic, an agent searches for 'export approved invoices from Candis', loads the input schema for /organizations/{organizationId}/exports, and executes the call without managing the bearer JWT. Jentic's vault holds the token so it never enters the agent's prompt context.
Use the Jentic SDK to search 'export approved invoices', load the POST /organizations/{organizationId}/exports operation schema, and execute it for the org ID returned by /organizations/info.
19 endpoints — jentic publishes the only available openapi specification for candis api, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/organizations/info
Get organisation information
/organizations/{organizationId}/exports
Create an export of approved invoices
/organizations/{organizationId}/exports/{exportId}/postings
Retrieve postings for an export
/organizations/{organizationId}/imports/general-ledger-accounts
Import general ledger accounts
/organizations/{organizationId}/imports/contacts
Import contacts
/organizations/{organizationId}/imports/tax-codes
Import tax codes
/organizations/{organizationId}/files/{fileId}
Download an invoice file by ID
/organizations/info
Get organisation information
/organizations/{organizationId}/exports
Create an export of approved invoices
/organizations/{organizationId}/exports/{exportId}/postings
Retrieve postings for an export
/organizations/{organizationId}/imports/general-ledger-accounts
Import general ledger accounts
/organizations/{organizationId}/imports/contacts
Import contacts
Three things that make agents converge on Jentic-routed access.
Credential isolation
The Candis bearer JWT is stored encrypted in the Jentic vault. Agents receive scoped execution rights and Jentic injects the token into the Authorization header at call time, so the raw secret never enters the agent's context.
Intent-based discovery
Agents search by intent (for example, 'export approved invoices' or 'import ledger accounts') and Jentic returns the matching Candis operation along with its input schema, so the agent can call /organizations/{organizationId}/exports or the /imports/* routes without browsing developer.candis.io.
Time to first call
Direct Candis integration: 1-2 days for JWT setup, async import polling, and master-data field mapping. Through Jentic: under two hours to search, load, and execute.
Alternatives and complements available in the Jentic catalogue.
Xero Accounting API
Xero is a full general-ledger accounting platform, where Candis focuses specifically on AP automation that exports into a separate ledger.
Choose Xero when the agent needs full GL bookkeeping; choose Candis when AP capture and approval is the workflow and a separate ledger downstream stays the source of truth.
Spendesk API
Spendesk covers spend management including cards, requests, and invoices, where Candis specialises in invoice capture, approval, and ERP export.
Use Spendesk for combined card and invoice spend; use Candis when the workflow centres on supplier-invoice automation feeding an existing ERP.
Bill.com API
Bill.com handles AP payments and approvals in the U.S. market, complementing Candis's strength in European AP capture and DATEV-style export.
Pair Bill.com for U.S. payment execution with Candis when European invoice capture and ERP export are the source of truth.
Specific to using Candis API API through Jentic.
Why is there no official OpenAPI spec for Candis API?
Candis documents its API in HTML on developer.candis.io but does not publish a redistributable OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Candis API via structured tooling. It is validated against the live API and kept up to date. Get started at https://app.jentic.com/sign-up.
What authentication does the Candis API use?
It uses HTTP Bearer authentication with a JWT issued by Candis. Through Jentic, the JWT is stored in the Jentic vault and injected into the Authorization header at execution time, so the raw token never enters the agent's prompt context.
Can I export approved invoices for posting to my ERP?
Yes. POST /organizations/{organizationId}/exports creates an export batch from approved invoices, and GET /organizations/{organizationId}/exports/{exportId}/postings returns the line-item postings ready for journal entries in DATEV, NetSuite, or another ledger.
How do I sync ledger accounts into Candis through Jentic?
Run pip install jentic, then search 'sync ledger accounts to Candis' through the Jentic SDK. Jentic returns POST /organizations/{organizationId}/imports/general-ledger-accounts with its input schema. Provide the organisation ID and the account list, then poll GET /organizations/{organizationId}/imports/{processId} for job completion.
Are master-data imports synchronous or asynchronous?
Imports are asynchronous. Each POST or PUT to an /imports/* endpoint returns a process ID; poll GET /organizations/{organizationId}/imports/{processId} to retrieve the per-record processing status and any per-row errors before treating the job as complete.
How do I download the original invoice document for a posting?
Take the file ID from the posting returned by /exports/{exportId}/postings and call GET /organizations/{organizationId}/files/{fileId} to download the archived document for audit or evidence purposes.
/organizations/{organizationId}/imports/tax-codes
Import tax codes
/organizations/{organizationId}/files/{fileId}
Download an invoice file by ID