cURL
curl --request GET \
--url https://api.maesn.dev/accounting/journalEntries/{journalEntryId} \
--header 'X-ACCOUNT-KEY: <x-account-key>' \
--header 'X-API-KEY: <x-api-key>'import requests
url = "https://api.maesn.dev/accounting/journalEntries/{journalEntryId}"
headers = {
"X-API-KEY": "<x-api-key>",
"X-ACCOUNT-KEY": "<x-account-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'X-API-KEY': '<x-api-key>', 'X-ACCOUNT-KEY': '<x-account-key>'}
};
fetch('https://api.maesn.dev/accounting/journalEntries/{journalEntryId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.maesn.dev/accounting/journalEntries/{journalEntryId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-ACCOUNT-KEY: <x-account-key>",
"X-API-KEY: <x-api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.maesn.dev/accounting/journalEntries/{journalEntryId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-KEY", "<x-api-key>")
req.Header.Add("X-ACCOUNT-KEY", "<x-account-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.maesn.dev/accounting/journalEntries/{journalEntryId}")
.header("X-API-KEY", "<x-api-key>")
.header("X-ACCOUNT-KEY", "<x-account-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.maesn.dev/accounting/journalEntries/{journalEntryId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-KEY"] = '<x-api-key>'
request["X-ACCOUNT-KEY"] = '<x-account-key>'
response = http.request(request)
puts response.read_body{
"meta": {
"warnings": [
"Field not used by target system"
],
"pagination": {
"total": 125,
"perPage": 50,
"currentPage": 1,
"totalPages": 3
}
},
"data": [
{
"id": "8df2df10-0fae-40ad-9d22-f25e5ab0ba23",
"accountId": "94fdb7fd-13ae-47a6-8a2a-000e6ddc60d9",
"accountingPeriodId": "2021-06",
"accountingReason": "COMMERCIAL",
"createdDate": "2021-01-01T00:00:00Z",
"currency": "EUR",
"description": "Hotel for dreamforce",
"documentId": "b5e624e5-fb9e-4836-a443-87a3820f5b48",
"files": [
"file1.pdf"
],
"exchangeRate": "1,2045",
"isProvisional": "false",
"isReversal": false,
"journalLineItems": [
{
"id": "123f57fd-13ae-47a6-8a2a-000e6ddc60d9",
"accountCode": "4034",
"accountId": "da33b47c-98ca-4410-9c59-5db485ecaeb0",
"accountNumber": 8200,
"createdDate ": "2021-01-01T00:00:00Z",
"currency": "EUR",
"customerId": "782d89b56-13ae-47a6-8a2a-45e6ddc50d9",
"debitCreditIndicator": "DEBIT",
"description": "Uitgesteld 21600001 Kantoor 01-01-2021-31-12-2021",
"dimensions": [
{
"id": "efa82f42-fd85-11e1-a21f-0800200c9a33",
"categoryName": "CostCenter",
"code": "KD1",
"name": "Material/Waren"
}
],
"documentId": "b5e624e5-fb9e-4836-a443-87a3820f5b48",
"documentNumber": "123456789",
"exchangeRate": 1,
"supplierId": "998933b56-13ae-47a6-8a32a-45e6ddc50d9",
"taxRate": {
"id": "1895b05b-38a6-4a6a-9653-166389894350",
"code": "03",
"name": "Tax19",
"taxRatePercentage": "19"
},
"thirdPartyCode": "112233",
"totalGrossAmount": 1190,
"totalNetAmount": 1000,
"totalTaxAmount": 190,
"updatedDate": "2021-01-01T00:00:00Z"
}
],
"journalCode": "60",
"journalType": "FIN",
"number ": "21900030",
"recordType": "STANDARD",
"transactionDate": "2021-01-01T00:00:00Z",
"updatedDate": "2021-01-01T00:00:00Z",
"version": "AAAAACnY3os1"
}
]
}Journal Entries
Get journal entry
GET
/
accounting
/
journalEntries
/
{journalEntryId}
cURL
curl --request GET \
--url https://api.maesn.dev/accounting/journalEntries/{journalEntryId} \
--header 'X-ACCOUNT-KEY: <x-account-key>' \
--header 'X-API-KEY: <x-api-key>'import requests
url = "https://api.maesn.dev/accounting/journalEntries/{journalEntryId}"
headers = {
"X-API-KEY": "<x-api-key>",
"X-ACCOUNT-KEY": "<x-account-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'X-API-KEY': '<x-api-key>', 'X-ACCOUNT-KEY': '<x-account-key>'}
};
fetch('https://api.maesn.dev/accounting/journalEntries/{journalEntryId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.maesn.dev/accounting/journalEntries/{journalEntryId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-ACCOUNT-KEY: <x-account-key>",
"X-API-KEY: <x-api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.maesn.dev/accounting/journalEntries/{journalEntryId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-KEY", "<x-api-key>")
req.Header.Add("X-ACCOUNT-KEY", "<x-account-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.maesn.dev/accounting/journalEntries/{journalEntryId}")
.header("X-API-KEY", "<x-api-key>")
.header("X-ACCOUNT-KEY", "<x-account-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.maesn.dev/accounting/journalEntries/{journalEntryId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-KEY"] = '<x-api-key>'
request["X-ACCOUNT-KEY"] = '<x-account-key>'
response = http.request(request)
puts response.read_body{
"meta": {
"warnings": [
"Field not used by target system"
],
"pagination": {
"total": 125,
"perPage": 50,
"currentPage": 1,
"totalPages": 3
}
},
"data": [
{
"id": "8df2df10-0fae-40ad-9d22-f25e5ab0ba23",
"accountId": "94fdb7fd-13ae-47a6-8a2a-000e6ddc60d9",
"accountingPeriodId": "2021-06",
"accountingReason": "COMMERCIAL",
"createdDate": "2021-01-01T00:00:00Z",
"currency": "EUR",
"description": "Hotel for dreamforce",
"documentId": "b5e624e5-fb9e-4836-a443-87a3820f5b48",
"files": [
"file1.pdf"
],
"exchangeRate": "1,2045",
"isProvisional": "false",
"isReversal": false,
"journalLineItems": [
{
"id": "123f57fd-13ae-47a6-8a2a-000e6ddc60d9",
"accountCode": "4034",
"accountId": "da33b47c-98ca-4410-9c59-5db485ecaeb0",
"accountNumber": 8200,
"createdDate ": "2021-01-01T00:00:00Z",
"currency": "EUR",
"customerId": "782d89b56-13ae-47a6-8a2a-45e6ddc50d9",
"debitCreditIndicator": "DEBIT",
"description": "Uitgesteld 21600001 Kantoor 01-01-2021-31-12-2021",
"dimensions": [
{
"id": "efa82f42-fd85-11e1-a21f-0800200c9a33",
"categoryName": "CostCenter",
"code": "KD1",
"name": "Material/Waren"
}
],
"documentId": "b5e624e5-fb9e-4836-a443-87a3820f5b48",
"documentNumber": "123456789",
"exchangeRate": 1,
"supplierId": "998933b56-13ae-47a6-8a32a-45e6ddc50d9",
"taxRate": {
"id": "1895b05b-38a6-4a6a-9653-166389894350",
"code": "03",
"name": "Tax19",
"taxRatePercentage": "19"
},
"thirdPartyCode": "112233",
"totalGrossAmount": 1190,
"totalNetAmount": 1000,
"totalTaxAmount": 190,
"updatedDate": "2021-01-01T00:00:00Z"
}
],
"journalCode": "60",
"journalType": "FIN",
"number ": "21900030",
"recordType": "STANDARD",
"transactionDate": "2021-01-01T00:00:00Z",
"updatedDate": "2021-01-01T00:00:00Z",
"version": "AAAAACnY3os1"
}
]
}Field support per integration

Business Central
Business Central
If you’re not using the Interactive Authentication Flow, make sure the query parameters
environmentName and companyId are correctly populated.
You can obtain these values by using the GET Environments and GET Companies endpoints available under the Authentication section.boolean
string
string
string[]
string
string
string
string

Dinero
Dinero
If you’re not using the Interactive Authentication Flow, make sure the query parameter
companyId is correctly populated.Only provisional journal entries (unbooked) can be retrieved by ID.
When retrieving a journal entry by ID, include the version in the
version query parameter. Use the version returned when executing the POST Journal entry endpoint.string
required
boolean
string
string
boolean
Indicates whether the journal entry is provisional (draft) or booked (finalized).If set to
true, the journal entry is provisional ; if set to false, the journal entry is booked.It retrieves always
true since the endpoint only works for provisional journal entries.JournalLineItem[]
string
string
For date format details visit the
Standardized Data section.string

Exact Online
Exact Online
If you’re not using the Interactive Authentication Flow, make sure the query parameter
companyId is correctly populated.
You can obtain this value by using the GET Companies endpoint available under the Authentication section.boolean
string
string
string
string
string
string
JournalLineItem[]
string
string

fortnox
fortnox
When retrieving a journal entry by ID, make sure to send the journal code as the
journalCode query parameter.boolean
string
string
string
string
JournalLineItem[]
string
string
string

Odoo
Odoo
Query parameters:Supported response fields:
boolean
string
string
enum
Available options (3-letter ISO 4217):
AED, AFN, ALL, AMD, ANG, AOA, ARS, AUD, AWG, AZN, BAM, BBD, BDT, BGN, BHD, BIF, BMD, BND, BOB, BRL, BSD, BTN, BWP, BYR, BZD, CAD, CDF, CHF, CLP, CNY, COP, CRC, CUC, CVE, CZK, DJF, DKK, DOP, DZD, EEK, EGP, ERN, ETB, EUR, FJD, FKP, GBP, GEL, GHS, GIP, GMD, GNF, GQE, GTQ, GYD, HKD, HNL, HRK, HTG, HUF, IDR, ILS, INR, IQD, IRR, ISK, JMD, JOD, JPY, KES, KGS, KHR, KMF, KPW, KRW, KWD, KYD, KZT, LAK, LBP, LKR, LRD, LSL, LTL, LVL, LYD, MAD, MDL, MGA, MKD, MMK, MNT, MOP, MRO, MUR, MVR, MWK, MXN, MYR, MZM, NAD, NGN, NIO, NOK, NPR, NZD, OMR, PAB, PEN, PGK, PHP, PKR, PLN, PYG, QAR, RON, RSD, RUB, SAR, SBD, SCR, SDG, SEK, SGD, SHP, SLL, SOS, SRD, SYP, SZL, THB, TJS, TMT, TND, TRY, TTD, TWD, TZS, UAH, UGX, USD, UYU, UZS, VEB, VND, VUV, WST, XAF, XCD, XDR, XOF, XPF, YER, ZAR, ZMK, ZWRstring
JournalLineItem[]
Show properties
Show properties
string
string
string
string
enum
Available options (3-letter ISO 4217):
AED, AFN, ALL, AMD, ANG, AOA, ARS, AUD, AWG, AZN, BAM, BBD, BDT, BGN, BHD, BIF, BMD, BND, BOB, BRL, BSD, BTN, BWP, BYR, BZD, CAD, CDF, CHF, CLP, CNY, COP, CRC, CUC, CVE, CZK, DJF, DKK, DOP, DZD, EEK, EGP, ERN, ETB, EUR, FJD, FKP, GBP, GEL, GHS, GIP, GMD, GNF, GQE, GTQ, GYD, HKD, HNL, HRK, HTG, HUF, IDR, ILS, INR, IQD, IRR, ISK, JMD, JOD, JPY, KES, KGS, KHR, KMF, KPW, KRW, KWD, KYD, KZT, LAK, LBP, LKR, LRD, LSL, LTL, LVL, LYD, MAD, MDL, MGA, MKD, MMK, MNT, MOP, MRO, MUR, MVR, MWK, MXN, MYR, MZM, NAD, NGN, NIO, NOK, NPR, NZD, OMR, PAB, PEN, PGK, PHP, PKR, PLN, PYG, QAR, RON, RSD, RUB, SAR, SBD, SCR, SDG, SEK, SGD, SHP, SLL, SOS, SRD, SYP, SZL, THB, TJS, TMT, TND, TRY, TTD, TWD, TZS, UAH, UGX, USD, UYU, UZS, VEB, VND, VUV, WST, XAF, XCD, XDR, XOF, XPF, YER, ZAR, ZMK, ZWRstring
string
string
number
number
number
string
string
string
string
string

Sage Active
Sage Active
If you’re not using the Interactive Authentication Flow, make sure the query parameter
companyId is correctly populated.
You can obtain this value by using the GET Companies endpoint available under the Authentication section. Please use the id field as the companyId.boolean
string
string
string
string
JournalLineItem[]
string
string
string
string

Twinfield
Twinfield
If you’re not using the Interactive Authentication Flow, make sure the query parameter
companyId is correctly populated.
You can obtain this value by using the GET Companies endpoint available under the Authentication section.Make sure the query parameter
journalCode is correctly populated.
In order to get the journalCode you can use the GET Journals endpoint available under the Accounting section.boolean
string
string
string
string
boolean

Tripletex
Tripletex
Use the Interactive Authentication Flow to connect Tripletex. It works for both token types: with an accountant token, the user picks the client company from a list;
with a regular single-company token, the user’s own company is selected automatically and no list is shown. You can also set companyId directly if you already know the client company id (accountant tokens only).
boolean
string
string
Tripletex converts all amounts to NOK. This field always returns
NOK.string
boolean
Indicates whether the journal entry is provisional (draft) or booked (finalized).If set to
true, the journal entry is provisional; if set to false, the journal entry is booked.JournalLineItem[]
string
If
isProvisional is true, this is a temporary number assigned to the draft.string
string

Visma e-conomic
Visma e-conomic
This endpoint retrieves draft journal entries only.
boolean
string
string
string
string
boolean
Indicates whether the journal entry is provisional (draft) or booked (finalized).
Always returns
true since this endpoint only retrieves draft entries.string
JournalLineItem[]
string
string
string

Xero
Xero
Query parameters:Supported response fields:
boolean
string
string
string
string
string[]
JournalLineItem[]
Show properties
Show properties
string
string
enum
Available options (3-letter ISO 4217):
AED, AFN, ALL, AMD, ANG, AOA, ARS, AUD, AWG, AZN, BAM, BBD, BDT, BGN, BHD, BIF, BMD, BND, BOB, BRL, BSD, BTN, BWP, BYR, BZD, CAD, CDF, CHF, CLP, CNY, COP, CRC, CUC, CVE, CZK, DJF, DKK, DOP, DZD, EEK, EGP, ERN, ETB, EUR, FJD, FKP, GBP, GEL, GHS, GIP, GMD, GNF, GQE, GTQ, GYD, HKD, HNL, HRK, HTG, HUF, IDR, ILS, INR, IQD, IRR, ISK, JMD, JOD, JPY, KES, KGS, KHR, KMF, KPW, KRW, KWD, KYD, KZT, LAK, LBP, LKR, LRD, LSL, LTL, LVL, LYD, MAD, MDL, MGA, MKD, MMK, MNT, MOP, MRO, MUR, MVR, MWK, MXN, MYR, MZM, NAD, NGN, NIO, NOK, NPR, NZD, OMR, PAB, PEN, PGK, PHP, PKR, PLN, PYG, QAR, RON, RSD, RUB, SAR, SBD, SCR, SDG, SEK, SGD, SHP, SLL, SOS, SRD, SYP, SZL, THB, TJS, TMT, TND, TRY, TTD, TWD, TZS, UAH, UGX, USD, UYU, UZS, VEB, VND, VUV, WST, XAF, XCD, XDR, XOF, XPF, YER, ZAR, ZMK, ZWRstring
enum
Available options:
DEBIT, CREDITstring
string
string
number
number
number
string
string
string
string
Headers
API key
Example:
"example value"
Account key
Example:
"example value"
Path Parameters
Query Parameters
Last modified on September 11, 2026
Was this page helpful?