Getting Started
The Base Data API allows you to read and update your organization’s base data (chart of accounts, taxes, currencies, contacts, etc.) using the Universal Accounting JSON format.
Endpoints
Section titled “Endpoints”| Method | Endpoint | Scope | Description |
|---|---|---|---|
| GET | /api/public/v1/base-data |
api:base-data:read |
Export base data |
| PATCH | /api/public/v1/base-data |
api:base-data:update |
Update base data |
Reading Base Data
Section titled “Reading Base Data”Export your organization’s base data in Universal Accounting JSON format.
const response = await fetch('https://api.kontera.ch/api/public/v1/base-data', { method: 'GET', headers: { 'Accept': 'application/json', 'Authorization': 'Bearer YOUR_ACCESS_TOKEN' // Requires api:base-data:read scope }});
const baseData = await response.json();
// baseData contains:// - organization: Company information// - accounts: Chart of accounts// - taxes: Tax rates and configurations// - currencies: Supported currencies// - taxPeriods: Tax period definitions// - contacts: Suppliers and contacts// - costCenters: Cost centers (optional)// - projects: Projects (optional)Updating Base Data
Section titled “Updating Base Data”Update your organization’s base data using the Universal Accounting JSON format.
const baseData = { organization: { companyName: 'My Company AG', leadCurrency: 'CHF' }, accounts: [ { externalId: '1000', number: '1000', description: 'Cash' }, { externalId: '1100', number: '1100', description: 'Bank Account', currency: 'CHF', iban: 'CH93 0076 2011 6238 5295 7' } ], currencies: [ { externalId: 'CHF', code: 'CHF' }, { externalId: 'EUR', code: 'EUR' } ], taxes: [ { externalId: 'VAT81', code: 'VAT81', description: 'VAT 8.1%', value: 8.1 } ], taxPeriods: [ { externalId: 'TP2025', isSubjectToTax: true, balanceTaxation: false, accountingMethod: 'ACCRUAL', startsAt: '2025-01-01', endsAt: '2025-12-31' } ]};
const response = await fetch('https://api.kontera.ch/api/public/v1/base-data', { method: 'PATCH', headers: { 'Content-Type': 'application/json', 'Accept': 'application/json', 'Authorization': 'Bearer YOUR_ACCESS_TOKEN' // Requires api:base-data:update scope }, body: JSON.stringify(baseData)});
const result = await response.json();// { success: true }Universal Accounting JSON Format
Section titled “Universal Accounting JSON Format”For the complete specification of the Universal Accounting JSON format, see: