curl --request GET \
--url https://api.exowpee.com/v1/accounting/organization/books/{book}/reports/aged-balance \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.exowpee.com/v1/accounting/organization/books/{book}/reports/aged-balance"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.exowpee.com/v1/accounting/organization/books/{book}/reports/aged-balance', 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.exowpee.com/v1/accounting/organization/books/{book}/reports/aged-balance",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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.exowpee.com/v1/accounting/organization/books/{book}/reports/aged-balance"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.exowpee.com/v1/accounting/organization/books/{book}/reports/aged-balance")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.exowpee.com/v1/accounting/organization/books/{book}/reports/aged-balance")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"book": {
"type": "<string>",
"id": "<string>"
},
"side": "<string>",
"as_of": "2023-12-25",
"aging_basis": "accounting_date",
"rows": "<array>",
"totals": {},
"currency_code": "<string>",
"currency_exponent": 123
}{
"message": "<string>"
}{
"message": "<string>",
"errors": {}
}View aged balance (organization)
Shows open customer and supplier balances grouped by age at a chosen date (organization space).
curl --request GET \
--url https://api.exowpee.com/v1/accounting/organization/books/{book}/reports/aged-balance \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.exowpee.com/v1/accounting/organization/books/{book}/reports/aged-balance"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.exowpee.com/v1/accounting/organization/books/{book}/reports/aged-balance', 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.exowpee.com/v1/accounting/organization/books/{book}/reports/aged-balance",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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.exowpee.com/v1/accounting/organization/books/{book}/reports/aged-balance"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.exowpee.com/v1/accounting/organization/books/{book}/reports/aged-balance")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.exowpee.com/v1/accounting/organization/books/{book}/reports/aged-balance")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"book": {
"type": "<string>",
"id": "<string>"
},
"side": "<string>",
"as_of": "2023-12-25",
"aging_basis": "accounting_date",
"rows": "<array>",
"totals": {},
"currency_code": "<string>",
"currency_exponent": 123
}{
"message": "<string>"
}{
"message": "<string>",
"errors": {}
}journal_entries.viewreports
Conditions
- The accounting module must be part of the organization’s plan.
- In the organization space, the caller needs an accounting access grant on the book.
- The side parameter is required and must be customers or vendors.
- The book must have at least one fiscal year, which supplies the currency; otherwise the call answers 404.
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Identifier of the book the report covers (27-character KSUID string): the organization itself or one of its companies of the session organization.
Query Parameters
Required. Third parties to report on: customers (receivables, customer accounts) or vendors (payables, supplier accounts).
customers, vendors Date to state the open balances at, ISO 8601 format. Defaults to today. Items dated after this date are ignored, and an item lettered with a line dated after it still counts as open.
Response
The book the report covers. In the client space it is the session client's book; in the organization space it is the book named in the URL.
Show child attributes
Show child attributes
Which third parties the report covers, as requested: customers (receivables) or vendors (payables).
Date the open balances are stated at, ISO 8601 date format: the requested as_of, or today when none was sent.
What the age of an item is counted from. Always accounting_date: the age is the number of days from the accounting date of the entry line to as_of, not from a due date.
accounting_date One row per third-party account with open items: account_id, code, name, auxiliary_id, balance and the buckets not_due, b_0_30, b_31_60, b_61_90, b_91_180 and b_180_plus. Amounts are in minor units of currency_code (divide by 10 to the power currency_exponent): positive when the third party owes you (customers) or you owe it (vendors). not_due is always 0 because lines carry no due date yet.
Sum of balance and of each age bucket over all rows, in minor units of currency_code.
ISO 4217 code of the currency of every amount in the report.
Number of decimal places of the currency (0 for XOF). An amount in minor units divided by 10 to this power gives the amount in the currency.