curl --request POST \
--url https://sandbox.nmbr.co/services/payroll/accounting_code_rules/search \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"business_entity_id": "<id>",
"expense_accounting_codes": {
"include": [
"<id>"
]
},
"any_of": [
{
"tag_groups": {
"include": [
"<id>"
]
},
"has_tag": true
},
{
"types": {
"include": [
"earning"
]
}
}
]
}
'import requests
url = "https://sandbox.nmbr.co/services/payroll/accounting_code_rules/search"
payload = {
"business_entity_id": "<id>",
"expense_accounting_codes": { "include": ["<id>"] },
"any_of": [{
"tag_groups": { "include": ["<id>"] },
"has_tag": True
}, { "types": { "include": ["earning"] } }]
}
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({
business_entity_id: '<id>',
expense_accounting_codes: {include: ['<id>']},
any_of: [
{tag_groups: {include: ['<id>']}, has_tag: true},
{types: {include: ['earning']}}
]
})
};
fetch('https://sandbox.nmbr.co/services/payroll/accounting_code_rules/search', 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://sandbox.nmbr.co/services/payroll/accounting_code_rules/search",
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([
'business_entity_id' => '<id>',
'expense_accounting_codes' => [
'include' => [
'<id>'
]
],
'any_of' => [
[
'tag_groups' => [
'include' => [
'<id>'
]
],
'has_tag' => true
],
[
'types' => [
'include' => [
'earning'
]
]
]
]
]),
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://sandbox.nmbr.co/services/payroll/accounting_code_rules/search"
payload := strings.NewReader("{\n \"business_entity_id\": \"<id>\",\n \"expense_accounting_codes\": {\n \"include\": [\n \"<id>\"\n ]\n },\n \"any_of\": [\n {\n \"tag_groups\": {\n \"include\": [\n \"<id>\"\n ]\n },\n \"has_tag\": true\n },\n {\n \"types\": {\n \"include\": [\n \"earning\"\n ]\n }\n }\n ]\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://sandbox.nmbr.co/services/payroll/accounting_code_rules/search")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"business_entity_id\": \"<id>\",\n \"expense_accounting_codes\": {\n \"include\": [\n \"<id>\"\n ]\n },\n \"any_of\": [\n {\n \"tag_groups\": {\n \"include\": [\n \"<id>\"\n ]\n },\n \"has_tag\": true\n },\n {\n \"types\": {\n \"include\": [\n \"earning\"\n ]\n }\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox.nmbr.co/services/payroll/accounting_code_rules/search")
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 \"business_entity_id\": \"<id>\",\n \"expense_accounting_codes\": {\n \"include\": [\n \"<id>\"\n ]\n },\n \"any_of\": [\n {\n \"tag_groups\": {\n \"include\": [\n \"<id>\"\n ]\n },\n \"has_tag\": true\n },\n {\n \"types\": {\n \"include\": [\n \"earning\"\n ]\n }\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"object": "list",
"data": [
{
"id": "<id>",
"object": "accounting_code_rule",
"data": {
"business_entity": {
"id": "<id>",
"object": "business_entity",
"links": {
"self": "/business_entities/<id>"
}
},
"tag_group": {
"id": "<id>",
"object": "tag_group",
"links": {
"self": "/tag_groups/<id>"
}
},
"tag": {
"id": "<id>",
"object": "tag",
"links": {
"self": "/tags/<id>"
}
},
"type": null,
"subtype": null,
"business_preset": null,
"expense_accounting_code": {
"id": "<id>",
"object": "accounting_code",
"links": {
"self": "/accounting_codes/<id>"
}
},
"liability_accounting_code": null,
"expense_accounting_code_template": null,
"liability_accounting_code_template": null,
"created_at": "2026-01-01T00:00:00.000000Z",
"updated_at": "2026-01-01T00:00:00.000000Z"
},
"links": {
"self": "/accounting_code_rules/<id>"
}
}
],
"links": {
"first": "http://localhost/accounting_code_rules/search?page=1",
"last": "http://localhost/accounting_code_rules/search?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"last_page": 1,
"per_page": 15,
"total": 1,
"has_more": false
}
}Search accounting code rules
Search a business entity’s accounting code rules. The body is a filter set at the root, plus an optional any_of list of filter sets. The root set narrows every result; the any_of sets are combined with OR and then applied together with the root, so a rule matches when it satisfies the root set and at least one any_of entry. An empty body returns every rule for the business entity.
A filter set has the same shape at the root and in each any_of entry:
- A field group —
tag_groups,tags,types,subtypes,business_presets,expense_accounting_codes,liability_accounting_codes— carries anincludeand/orexcludelist of values.includematches rules whose field is one of the listed values;excludematches rules whose field is none of them, keeping rules where the field is unset. - Ahas_<field>boolean —has_tag_group,has_tag,has_type,has_subtype,has_business_preset,has_expense_accounting_code,has_liability_accounting_code— matches rules where the field is set (true) or unset (false).
Field groups and presence booleans within a set combine with AND.
curl --request POST \
--url https://sandbox.nmbr.co/services/payroll/accounting_code_rules/search \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"business_entity_id": "<id>",
"expense_accounting_codes": {
"include": [
"<id>"
]
},
"any_of": [
{
"tag_groups": {
"include": [
"<id>"
]
},
"has_tag": true
},
{
"types": {
"include": [
"earning"
]
}
}
]
}
'import requests
url = "https://sandbox.nmbr.co/services/payroll/accounting_code_rules/search"
payload = {
"business_entity_id": "<id>",
"expense_accounting_codes": { "include": ["<id>"] },
"any_of": [{
"tag_groups": { "include": ["<id>"] },
"has_tag": True
}, { "types": { "include": ["earning"] } }]
}
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({
business_entity_id: '<id>',
expense_accounting_codes: {include: ['<id>']},
any_of: [
{tag_groups: {include: ['<id>']}, has_tag: true},
{types: {include: ['earning']}}
]
})
};
fetch('https://sandbox.nmbr.co/services/payroll/accounting_code_rules/search', 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://sandbox.nmbr.co/services/payroll/accounting_code_rules/search",
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([
'business_entity_id' => '<id>',
'expense_accounting_codes' => [
'include' => [
'<id>'
]
],
'any_of' => [
[
'tag_groups' => [
'include' => [
'<id>'
]
],
'has_tag' => true
],
[
'types' => [
'include' => [
'earning'
]
]
]
]
]),
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://sandbox.nmbr.co/services/payroll/accounting_code_rules/search"
payload := strings.NewReader("{\n \"business_entity_id\": \"<id>\",\n \"expense_accounting_codes\": {\n \"include\": [\n \"<id>\"\n ]\n },\n \"any_of\": [\n {\n \"tag_groups\": {\n \"include\": [\n \"<id>\"\n ]\n },\n \"has_tag\": true\n },\n {\n \"types\": {\n \"include\": [\n \"earning\"\n ]\n }\n }\n ]\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://sandbox.nmbr.co/services/payroll/accounting_code_rules/search")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"business_entity_id\": \"<id>\",\n \"expense_accounting_codes\": {\n \"include\": [\n \"<id>\"\n ]\n },\n \"any_of\": [\n {\n \"tag_groups\": {\n \"include\": [\n \"<id>\"\n ]\n },\n \"has_tag\": true\n },\n {\n \"types\": {\n \"include\": [\n \"earning\"\n ]\n }\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox.nmbr.co/services/payroll/accounting_code_rules/search")
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 \"business_entity_id\": \"<id>\",\n \"expense_accounting_codes\": {\n \"include\": [\n \"<id>\"\n ]\n },\n \"any_of\": [\n {\n \"tag_groups\": {\n \"include\": [\n \"<id>\"\n ]\n },\n \"has_tag\": true\n },\n {\n \"types\": {\n \"include\": [\n \"earning\"\n ]\n }\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"object": "list",
"data": [
{
"id": "<id>",
"object": "accounting_code_rule",
"data": {
"business_entity": {
"id": "<id>",
"object": "business_entity",
"links": {
"self": "/business_entities/<id>"
}
},
"tag_group": {
"id": "<id>",
"object": "tag_group",
"links": {
"self": "/tag_groups/<id>"
}
},
"tag": {
"id": "<id>",
"object": "tag",
"links": {
"self": "/tags/<id>"
}
},
"type": null,
"subtype": null,
"business_preset": null,
"expense_accounting_code": {
"id": "<id>",
"object": "accounting_code",
"links": {
"self": "/accounting_codes/<id>"
}
},
"liability_accounting_code": null,
"expense_accounting_code_template": null,
"liability_accounting_code_template": null,
"created_at": "2026-01-01T00:00:00.000000Z",
"updated_at": "2026-01-01T00:00:00.000000Z"
},
"links": {
"self": "/accounting_code_rules/<id>"
}
}
],
"links": {
"first": "http://localhost/accounting_code_rules/search?page=1",
"last": "http://localhost/accounting_code_rules/search?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"last_page": 1,
"per_page": 15,
"total": 1,
"has_more": false
}
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
The business entity whose accounting code rules to search.
A list of filter sets combined with OR; a rule matches when it satisfies at least one entry. Each entry has the same shape as the root filter set. An omitted or empty list applies no OR condition.
Hide child attributes
Hide child attributes
Hide child attributes
Hide child attributes
allowance, deduction, earning, employee_benefit, employer_benefit, employer_statutory_withholding, reimbursement, statutory_withholding allowance, deduction, earning, employee_benefit, employer_benefit, employer_statutory_withholding, reimbursement, statutory_withholding Hide child attributes
Hide child attributes
allowance, deduction, earning, employee_benefit, employer_benefit, employer_statutory_withholding, reimbursement, statutory_withholding allowance, deduction, earning, employee_benefit, employer_benefit, employer_statutory_withholding, reimbursement, statutory_withholding Response
OK
The type of the object in Nmbr ("list").
Hide child attributes
Hide child attributes
The unique identifier of the object in Nmbr.
The type of the object in Nmbr ("accounting_code_rule").
Hide child attributes
Hide child attributes
The line item type this rule applies to (e.g. earning, deduction). When combined with subtype, narrows the rule to a specific line item category. Mutually exclusive with business_preset.
255The line item subtype this rule applies to (e.g. wage, salary). Must be accompanied by a type.
255A business preset this rule applies to. Provides the highest specificity match. Mutually exclusive with type and subtype.
The liability accounting code assigned when this rule matches.
Assembles a formatted accounting code for the journal entry report: each segment resolves to a value, is wrapped and transformed, and the results are concatenated in order. Only valid on rules with no tag and no tag group; null when unset.
Hide child attributes
Hide child attributes
Ordered segments concatenated into the generated code.
1 - 20 elementsEmits the referenced accounting code's code.
- Fixed accounting code
- Tag group code
Hide child attributes
Hide child attributes
accounting_code Id of an accounting code in this business entity.
Literal text prepended to the resolved value.
255Literal text appended to the resolved value.
255Transforms applied to the resolved value in the order listed.
alphanumeric, lowercase, uppercase Truncates the resolved value to this many characters.
x >= 1Substituted when the resolved value is empty. When absent or empty, an empty segment is dropped instead — prefix and suffix included.
255Assembles a formatted accounting code for the journal entry report: each segment resolves to a value, is wrapped and transformed, and the results are concatenated in order. Only valid on rules with no tag and no tag group; null when unset.
Hide child attributes
Hide child attributes
Ordered segments concatenated into the generated code.
1 - 20 elementsEmits the referenced accounting code's code.
- Fixed accounting code
- Tag group code
Hide child attributes
Hide child attributes
accounting_code Id of an accounting code in this business entity.
Literal text prepended to the resolved value.
255Literal text appended to the resolved value.
255Transforms applied to the resolved value in the order listed.
alphanumeric, lowercase, uppercase Truncates the resolved value to this many characters.
x >= 1Substituted when the resolved value is empty. When absent or empty, an empty segment is dropped instead — prefix and suffix included.
255The date and time the object was created in Nmbr.
The date and time the object was last updated in Nmbr.

