curl --request POST \
--url https://api.exowpee.com/v1/accounting/client/fiscal-years/{fiscalYear}/result-allocation \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"accounting_date": "2023-12-25",
"allocations": [
{
"amount": 2
}
],
"description": "<string>"
}
'import requests
url = "https://api.exowpee.com/v1/accounting/client/fiscal-years/{fiscalYear}/result-allocation"
payload = {
"accounting_date": "2023-12-25",
"allocations": [{ "amount": 2 }],
"description": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
accounting_date: '2023-12-25',
allocations: [{amount: 2}],
description: '<string>'
})
};
fetch('https://api.exowpee.com/v1/accounting/client/fiscal-years/{fiscalYear}/result-allocation', 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/client/fiscal-years/{fiscalYear}/result-allocation",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'accounting_date' => '2023-12-25',
'allocations' => [
[
'amount' => 2
]
],
'description' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.exowpee.com/v1/accounting/client/fiscal-years/{fiscalYear}/result-allocation"
payload := strings.NewReader("{\n \"accounting_date\": \"2023-12-25\",\n \"allocations\": [\n {\n \"amount\": 2\n }\n ],\n \"description\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.exowpee.com/v1/accounting/client/fiscal-years/{fiscalYear}/result-allocation")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"accounting_date\": \"2023-12-25\",\n \"allocations\": [\n {\n \"amount\": 2\n }\n ],\n \"description\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.exowpee.com/v1/accounting/client/fiscal-years/{fiscalYear}/result-allocation")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"accounting_date\": \"2023-12-25\",\n \"allocations\": [\n {\n \"amount\": 2\n }\n ],\n \"description\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"owner_type": "<string>",
"journal_id": "<string>",
"fiscal_period_id": "<string>",
"accounting_date": "2023-12-25",
"reference": "<string>",
"description": "<string>",
"source_type": "<string>",
"source_id": "<string>",
"source_event": "<string>",
"metadata": {},
"currency_code": "<string>",
"currency_exponent": 123,
"status": "<string>",
"reversal_of_entry_id": "<string>",
"refund_of_entry_id": "<string>",
"posted_at": "2023-11-07T05:31:56Z",
"lines": "<array>",
"attachments_count": 123,
"attachments": "<array>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
}{
"message": "<string>",
"errors": {}
}Allocate the year result (client account)
Client space, on the client’s own books. Records how a closed year’s profit is split between reserves, retained earnings and dividends.
curl --request POST \
--url https://api.exowpee.com/v1/accounting/client/fiscal-years/{fiscalYear}/result-allocation \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"accounting_date": "2023-12-25",
"allocations": [
{
"amount": 2
}
],
"description": "<string>"
}
'import requests
url = "https://api.exowpee.com/v1/accounting/client/fiscal-years/{fiscalYear}/result-allocation"
payload = {
"accounting_date": "2023-12-25",
"allocations": [{ "amount": 2 }],
"description": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
accounting_date: '2023-12-25',
allocations: [{amount: 2}],
description: '<string>'
})
};
fetch('https://api.exowpee.com/v1/accounting/client/fiscal-years/{fiscalYear}/result-allocation', 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/client/fiscal-years/{fiscalYear}/result-allocation",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'accounting_date' => '2023-12-25',
'allocations' => [
[
'amount' => 2
]
],
'description' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.exowpee.com/v1/accounting/client/fiscal-years/{fiscalYear}/result-allocation"
payload := strings.NewReader("{\n \"accounting_date\": \"2023-12-25\",\n \"allocations\": [\n {\n \"amount\": 2\n }\n ],\n \"description\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.exowpee.com/v1/accounting/client/fiscal-years/{fiscalYear}/result-allocation")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"accounting_date\": \"2023-12-25\",\n \"allocations\": [\n {\n \"amount\": 2\n }\n ],\n \"description\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.exowpee.com/v1/accounting/client/fiscal-years/{fiscalYear}/result-allocation")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"accounting_date\": \"2023-12-25\",\n \"allocations\": [\n {\n \"amount\": 2\n }\n ],\n \"description\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"owner_type": "<string>",
"journal_id": "<string>",
"fiscal_period_id": "<string>",
"accounting_date": "2023-12-25",
"reference": "<string>",
"description": "<string>",
"source_type": "<string>",
"source_id": "<string>",
"source_event": "<string>",
"metadata": {},
"currency_code": "<string>",
"currency_exponent": 123,
"status": "<string>",
"reversal_of_entry_id": "<string>",
"refund_of_entry_id": "<string>",
"posted_at": "2023-11-07T05:31:56Z",
"lines": "<array>",
"attachments_count": 123,
"attachments": "<array>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
}{
"message": "<string>",
"errors": {}
}fiscal_years.allocate_result
Conditions
- The accounting module must be part of the organization’s plan.
- The year must be closed.
- A result can be allocated once: refused when a posted allocation already exists for the year (a reopened year allows a new one after the old one was reversed).
- No later fiscal year of the book may be closed.
- The year must have closed with a non-zero result.
- The amounts of the allocations must add up exactly to the absolute value of the result, with no tolerance.
- The accounting date must fall in the next fiscal year (the one starting the day after this one ends), which is created by rollover when missing; a gap between the years is refused. The date must also fall in an open period.
- The result must still stand on the result account 131 (profit) or 139 (loss); refused when it was moved by hand.
- For a profit each target must map to an account of the book; the legal reserve cannot go beyond 20 % of the capital.
- For a loss only retained_earnings is accepted as target.
- Each target can appear only once in the list.
- The account mappings the allocation uses must be configured: the result account, the account of each chosen target, and the capital account when the legal reserve is a target.
- Posts one entry in the miscellaneous (OD) journal, dated in the next year: for a profit, debits the result account 131 for the whole result and credits the chosen target accounts (legal reserve, other reserves, retained earnings, dividends payable); for a loss, debits retained earnings and credits the loss account 139.
- The description defaults to ‘Affectation du résultat’ followed by the year label when omitted.
- The closed year’s own figures are not changed.
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Identifier of the fiscal year (27-character KSUID string).
Query Parameters
Response mode. Default none; none answers 204 No Content.
none, resource Comma-separated JSON keys of the root resource (id is always rendered). Available: id, owner_type, journal_id, fiscal_period_id, accounting_date, reference, description, source_type, source_id, source_event, metadata, currency_code, currency_exponent, status, reversal_of_entry_id, refund_of_entry_id, posted_at, created_at, updated_at, attachments_count.
Comma-separated include paths, each optionally followed by its fields in parentheses: units(id,sku),units.uomUnit(id,name). Max depth 6, max 40 paths. Available: lines, lines.account, attachments.
Body
Required. Date of the allocation entry, ISO 8601 date. It must fall in the fiscal year following the one being allocated (the shareholders' decision date) and in an open fiscal period.
Required list of at least one allocation. The amounts must add up exactly to the absolute result of the year. Each target may appear only once.
1Show child attributes
Show child attributes
Optional description of the entry, up to 255 characters. Defaults to 'Affectation du résultat' followed by the year label.
255Response
Resource (only with response=resource).
Identifier of the journal entry (27-character KSUID).
Kind of book the entry belongs to: organization, company or client.
Identifier of the journal the entry is posted in (27-character KSUID).
Identifier of the fiscal period covering the accounting date, set by the server (27-character KSUID).
Date the entry counts for in the books (YYYY-MM-DD).
Free-text reference given at posting, or copied from the original entry on a reversal; null when none.
Free-text description given at posting; on a reversal, a text naming the original entry; null when none.
Kind of record that generated the entry (for example reversal, opening_balances or recurring_entry, or a business flow); null for a manual entry.
Identifier of the record that generated the entry; null for a manual entry.
Event of the source record that generated the entry (for example reversed, opening or run: for a recurring occurrence); null for a manual entry.
Extra data stored by automatic postings, such as fee snapshots or the company identifier; null for most manual entries.
ISO 4217 currency code of the entry, taken from the fiscal year (for example XOF).
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.
State of the entry: posted (in force), reversed (cancelled by a reversal entry) or refunded (refunded by a refund entry).
When the entry is a reversal, the identifier of the entry it cancels; otherwise null.
When the entry is a refund, the identifier of the entry it refunds; otherwise null.
Moment the entry was posted, ISO 8601, set by the server.
Debit and credit lines of the entry. Present only when requested with include=lines; amounts are integers in minor units (divide by 10 to the power currency_exponent).
Number of supporting documents attached to the entry.
Supporting documents of the entry. Present only when requested with include=attachments and the caller holds the entry_attachments.list permission.
Date and time the record was created (ISO 8601, UTC).
Date and time the record was last changed (ISO 8601, UTC).