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,
"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,
"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.
The date and time the object was created in Nmbr.
The date and time the object was last updated in Nmbr.

