Bank Rules

Bank Rules AI Tools

Open in ChatGPT

Open in ChatGPT to ask questions about this page

Open in Claude

Open in Claude to ask questions about this page

Copy as Markdown

Copy this page as markdown to use with AI assistants

View as Markdown

Open this page as markdown in a new tab

In Zoho Books, you can automate the categorization of the bank feeds. The transaction rules feature in banking will help you in automatically identifying the bank transaction and categorizing it under the criteria provided by you.

Download Bank Rules OpenAPI Document

Attribute

rule_id
string
ID of the Rule
rule_name
string
Name of the Rule
rule_order
integer
Order of the rule
rule_category
string
Specifies the scope of accounts to which the rule applies. Use selected_accounts to specific accounts and provide the corresponding account_ids. Use all_accounts to apply the rule across all accounts in the organization, all_banks for all bank accounts, or all_credit_cards for all credit card accounts. Allowed Values: selected_accounts, all_accounts, all_banks, all_credit_cards.
target_accounts_formatted
string
Comma-separated display string of bank and credit card account names to which the rule applies
target_accounts_count
integer
Total number of accounts the rule applies to.
apply_to
string
Entities to which Rule must be applied
criteria_type
string
Type of Criteria
record_as
string
Entity as which it should be recorded
account_id
string
Account ID of the Bank
account_name
string
Name of the account
criterion
array
List of criteria based on which the rule will be applied.
Show Sub-Attributes arrow
criteria_id
string
ID of the Criteria
field
string
Field involved in the Criteria
comparator
string
Comparator used in Criteria
value
string
Value to be compared with

Example

{ "rule_id": "460000000048005", "rule_name": "Minimum Deposit Rule", "rule_order": 0, "rule_category": "selected_accounts", "target_accounts_formatted": "Savings Account, Checking Account", "target_accounts_count": 2, "apply_to": "deposits", "criteria_type": "and", "record_as": "deposit", "account_id": "460000000000361", "account_name": "Petty Cash", "criterion": [ { "criteria_id": "460000000048009", "field": "amount", "comparator": "greater_than_or_equals", "value": "500.00" } ] }

Create a rule AI Tools

Open in ChatGPT

Open in ChatGPT to ask questions about this page

Open in Claude

Open in Claude to ask questions about this page

Copy as Markdown

Copy this page as markdown to use with AI assistants

View as Markdown

Open this page as markdown in a new tab

Create a rule and apply it on deposit/withdrawal for bank accounts and on refund/charges for credit card accounts.
OAuth Scope : ZohoBooks.banking.CREATE

Arguments

rule_name
string
(Required)
Name of the Rule
rule_category
string
(Required)
Specifies the scope of accounts to which the rule applies. Use selected_accounts to specific accounts and provide the corresponding account_ids. Use all_accounts to apply the rule across all accounts in the organization, all_banks for all bank accounts, or all_credit_cards for all credit card accounts. Allowed Values: selected_accounts, all_accounts, all_banks, all_credit_cards.
account_ids
string
Comma-separated list of account IDs to which the rule applies. Applicable only when rule_category is selected_accounts. Do not send this parameter when rule_category is all_accounts, all_banks, or all_credit_cards.
apply_to
string
(Required)
Specifies whether the rule applies to deposits or withdrawals. This applies to both bank accounts and credit card accounts. Allowed Values: deposits, withdrawals.
criteria_type
string
(Required)
Specifies whether all the criteria have to be satisfied or not. Allowed Values : and and or
auto_categorize
string
Specifies the auto-categorization behavior when the rule criteria are matched. recognize: Matching bank statements are recognized by the rule and can be categorized manually. autocategorize: Matching bank statements are automatically categorized in Zoho Books based on the rule. Allowed Values: autocategorize and recognize.
criterion
array
(Required)
List of criteria used to define conditions for applying the bank rule.
Show Sub-Attributes arrow
field
string
Field involved in the Criteria
comparator
string
Comparator used in Criteria
value
string
Value to be compared with
record_as
string
(Required)
Record the transaction based on the value specified in the apply_to node. For bank accounts: If apply_to is deposits: sales_without_invoices, transfer_fund, interest_income, other_income, expense_refund, deposit. If apply_to is withdrawals: expense, transfer_fund, card_payment, owner_drawings. For credit card accounts: If apply_to is deposits: card_payment, transfer_fund, expense_refund, refund. If apply_to is withdrawals: expense, transfer_fund. Allowed Values: expense, deposit, refund, transfer_fund, card_payment, sales_without_invoices, expense_refund, interest_income, other_income, owner_drawings.
account_id
string
Account which is involved in the rule with the target account.
customer_id
string
ID of the customer.(Applicable for sales_without_invoices,deposit, expense)
tax_id
string
Tax ID involved in the transaction.
reference_number
string
Specifies if Reference number is manual or generated from the statement. Allowed Values: manual and from_statement
vat_treatment
string
🇬🇧 United Kingdom
only
(Optional) VAT treatment for the bank rules. VAT treatment denotes the location of the customer, if the customer resides in UK then the VAT treatment is uk. If the customer is in an EU country & VAT registered, you are resides in Northen Ireland and selling/purchasing Goods then his VAT treatment is eu_vat_registered, if he resides outside of the UK then his VAT treatment is overseas (For Pre Brexit, this can be split as eu_vat_registered, eu_vat_not_registered and non_eu).
tax_treatment
string
GCC , 🇰🇪 Kenya
, 🇿🇦 South Africa
only
VAT treatment for the bank transaction.Choose whether the contact falls under: vat_registered,vat_not_registered,gcc_vat_not_registered,gcc_vat_registered,non_gcc.
dz_vat_registered and dz_vat_not_registered are supported only for UAE.
For Kenya Edition: vat_registered ,vat_not_registered ,non_kenya(A business that is located outside Kenya).
For SouthAfrica Edition: vat_registered, vat_not_registered, overseas(A business that is located outside SouthAfrica).
is_reverse_charge_applied
boolean
🇿🇦 South Africa
only
(Required if customer tax treatment is vat_registered)
Used to specify whether the transaction is applicable for Domestic Reverse Charge (DRC) or not.
product_type
string
🇬🇧 United Kingdom
, 🇿🇦 South Africa
, Europe only
Product Type associated with the Rule. Allowed values:
For UK and Europe: digital_service, goods and service.
For SouthAfrica Edition: service, goods, capital_service and capital_goods.
tax_authority_id
string
🇺🇸 United States
only
ID of the Tax Authority Associated with the Rule
tax_exemption_id
string
🇮🇳 India
, 🇺🇸 United States
only
ID of the Tax Exemption Associated with the Rule
location_id
string
Unique identifier of the business location to associate with the rule. Use the location_id returned by the Locations API for the same organization. Note: This value is a set of numeric characters.

Query Parameters

organization_id
string
(Required)
ID of the organization

Request Example

Click to copy
parameters_data='{"field1":"value1","field2":"value2"}'; headers_data = Map(); headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"); response = invokeUrl [ url: "https://www.zohoapis.com/books/v3/bankaccounts/rules?organization_id=10234695" type: POST headers: headers_data content-type: application/json parameters: parameters_data connection: <connection_name> ]; info response;
OkHttpClient client = new OkHttpClient(); MediaType mediaType = MediaType.parse("application/json"); RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}"); Request request = new Request.Builder() .url("https://www.zohoapis.com/books/v3/bankaccounts/rules?organization_id=10234695") .post(body) .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f") .addHeader("content-type", "application/json") .build(); Response response = client.newCall(request).execute();
const options = { method: 'POST', headers: { Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f', 'content-type': 'application/json' }, body: '{"field1":"value1","field2":"value2"}' }; fetch('https://www.zohoapis.com/books/v3/bankaccounts/rules?organization_id=10234695', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));
import http.client conn = http.client.HTTPSConnection("www.zohoapis.com") payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}" headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f", 'content-type': "application/json" } conn.request("POST", "/books/v3/bankaccounts/rules?organization_id=10234695", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
const http = require("https"); const options = { "method": "POST", "hostname": "www.zohoapis.com", "port": null, "path": "/books/v3/bankaccounts/rules?organization_id=10234695", "headers": { "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f", "content-type": "application/json" } }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.write(JSON.stringify({field1: 'value1', field2: 'value2'})); req.end();
curl --request POST \ --url 'https://www.zohoapis.com/books/v3/bankaccounts/rules?organization_id=10234695' \ --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \ --header 'content-type: application/json' \ --data '{"field1":"value1","field2":"value2"}'

Body Parameters

Click to copy
{ "rule_name": "Minimum Deposit Rule", "rule_category": "selected_accounts", "account_ids": "460000000000361,460000000048001", "apply_to": "deposits", "criteria_type": "and", "auto_categorize": "recognize", "criterion": [ { "field": "amount", "comparator": "greater_than_or_equals", "value": "500.00" } ], "record_as": "deposit", "account_id": 460000000049001, "customer_id": 46000000000111, "tax_id": "460000000048238", "reference_number": "manual", "vat_treatment": "string", "tax_treatment": "vat_registered", "is_reverse_charge_applied": true, "product_type": "string", "tax_authority_id": "string", "tax_exemption_id": "string", "location_id": "460000000003373" }

Response Example

{ "code": 0, "message": "The bank rule has been created.", "rule": { "rule_id": "460000000048005", "rule_name": "Minimum Deposit Rule", "rule_order": 0, "rule_category": "selected_accounts", "target_accounts": [ { "target_account_id": "460000000048001", "target_account_name": "Savings Account" }, { "target_account_id": "460000000049001", "target_account_name": "Checking Account" } ], "accounts": [ { "account_id": "460000000048001", "account_name": "Savings Account" }, { "account_id": "460000000049001", "account_name": "Checking Account" } ], "target_accounts_count": 2, "apply_to": "deposits", "criteria_type": "and", "auto_categorize": "recognize", "location_id": "460000000003373", "location_name": "Head Office", "criterion": [ { "criteria_id": "460000000048009", "field": "amount", "comparator": "greater_than_or_equals", "value": "500.00" } ], "record_as": "deposit", "account_id": "460000000000361", "account_name": "Petty Cash", "tax_id": "460000000048238", "customer_id": "46000000000111", "customer_name": "Trendz", "reference_number": "from_statement", "payment_mode": "Cash", "vat_treatment": "string", "tax_treatment": "vat_registered", "is_reverse_charge_applied": true, "product_type": "string", "tax_authority_id": "string", "tax_authority_name": "string", "tax_exemption_code": "string" } }

Get Rules List AI Tools

Open in ChatGPT

Open in ChatGPT to ask questions about this page

Open in Claude

Open in Claude to ask questions about this page

Copy as Markdown

Copy this page as markdown to use with AI assistants

View as Markdown

Open this page as markdown in a new tab

Fetch all the rules created in the organization.
OAuth Scope : ZohoBooks.banking.READ

Query Parameters

organization_id
string
(Required)
ID of the organization

Request Example

Click to copy
headers_data = Map(); headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"); response = invokeUrl [ url: "https://www.zohoapis.com/books/v3/bankaccounts/rules?organization_id=10234695" type: GET headers: headers_data connection: <connection_name> ]; info response;
OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://www.zohoapis.com/books/v3/bankaccounts/rules?organization_id=10234695") .get() .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f") .build(); Response response = client.newCall(request).execute();
const options = { method: 'GET', headers: { Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' } }; fetch('https://www.zohoapis.com/books/v3/bankaccounts/rules?organization_id=10234695', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));
import http.client conn = http.client.HTTPSConnection("www.zohoapis.com") headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" } conn.request("GET", "/books/v3/bankaccounts/rules?organization_id=10234695", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
const http = require("https"); const options = { "method": "GET", "hostname": "www.zohoapis.com", "port": null, "path": "/books/v3/bankaccounts/rules?organization_id=10234695", "headers": { "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" } }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.end();
curl --request GET \ --url 'https://www.zohoapis.com/books/v3/bankaccounts/rules?organization_id=10234695' \ --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'

Response Example

{ "code": 0, "message": "success", "rules": [ { "rule_id": "460000000048005", "rule_name": "Minimum Deposit Rule", "rule_order": 0, "rule_category": "selected_accounts", "target_accounts_formatted": "Savings Account, Checking Account", "target_accounts_count": 2, "apply_to": "deposits", "criteria_type": "and", "record_as": "deposit", "account_id": "460000000000361", "account_name": "Petty Cash", "criterion": [ { "criteria_id": "460000000048009", "field": "amount", "comparator": "greater_than_or_equals", "value": "500.00" } ] }, {...}, {...} ] }

Update a rule AI Tools

Open in ChatGPT

Open in ChatGPT to ask questions about this page

Open in Claude

Open in Claude to ask questions about this page

Copy as Markdown

Copy this page as markdown to use with AI assistants

View as Markdown

Open this page as markdown in a new tab

Make changes to the rule, add or modify it and update.
OAuth Scope : ZohoBooks.banking.UPDATE

Arguments

rule_name
string
(Required)
Name of the Rule
rule_category
string
(Required)
Specifies the scope of accounts to which the rule applies. Use selected_accounts to specific accounts and provide the corresponding account_ids. Use all_accounts to apply the rule across all accounts in the organization, all_banks for all bank accounts, or all_credit_cards for all credit card accounts. Allowed Values: selected_accounts, all_accounts, all_banks, all_credit_cards.
account_ids
string
Comma-separated list of account IDs to which the rule applies. Applicable only when rule_category is selected_accounts. Do not send this parameter when rule_category is all_accounts, all_banks, or all_credit_cards.
apply_to
string
(Required)
Specifies whether the rule applies to deposits or withdrawals. This applies to both bank accounts and credit card accounts. Allowed Values: deposits, withdrawals.
criteria_type
string
(Required)
Specifies whether all the criteria have to be satisfied or not. Allowed Values : and and or
auto_categorize
string
Specifies the auto-categorization behavior when the rule criteria are matched. recognize: Matching bank statements are recognized by the rule and can be categorized manually. autocategorize: Matching bank statements are automatically categorized in Zoho Books based on the rule. Allowed Values: autocategorize and recognize.
criterion
array
(Required)
List of criteria based on which the rule will be applied.
Show Sub-Attributes arrow
criteria_id
string
ID of the Criteria
field
string
Field involved in the Criteria
comparator
string
Comparator used in Criteria
value
string
Value to be compared with
record_as
string
(Required)
Record the transaction based on the value specified in the apply_to node. For bank accounts: If apply_to is deposits: sales_without_invoices, transfer_fund, interest_income, other_income, expense_refund, deposit. If apply_to is withdrawals: expense, transfer_fund, card_payment, owner_drawings. For credit card accounts: If apply_to is deposits: card_payment, transfer_fund, expense_refund, refund. If apply_to is withdrawals: expense, transfer_fund. Allowed Values: expense, deposit, refund, transfer_fund, card_payment, sales_without_invoices, expense_refund, interest_income, other_income, owner_drawings.
account_id
string
Account which is involved in the rule with the target account.
customer_id
string
ID of the customer.(Applicable for sales_without_invoices,deposit, expense)
tax_id
string
Tax ID involved in the transaction.
reference_number
string
Specifies if Reference number is manual or generated from the statement. Allowed Values: manual and from_statement
vat_treatment
string
🇬🇧 United Kingdom
only
(Optional) VAT treatment for the bank rules. VAT treatment denotes the location of the customer, if the customer resides in UK then the VAT treatment is uk. If the customer is in an EU country & VAT registered, you are resides in Northen Ireland and selling/purchasing Goods then his VAT treatment is eu_vat_registered, if he resides outside of the UK then his VAT treatment is overseas (For Pre Brexit, this can be split as eu_vat_registered, eu_vat_not_registered and non_eu).
tax_treatment
string
GCC , 🇰🇪 Kenya
, 🇿🇦 South Africa
only
VAT treatment for the bank transaction.Choose whether the contact falls under: vat_registered,vat_not_registered,gcc_vat_not_registered,gcc_vat_registered,non_gcc.
dz_vat_registered and dz_vat_not_registered are supported only for UAE.
For Kenya Edition: vat_registered ,vat_not_registered ,non_kenya(A business that is located outside Kenya).
For SouthAfrica Edition: vat_registered, vat_not_registered, overseas(A business that is located outside SouthAfrica).
is_reverse_charge_applied
boolean
🇿🇦 South Africa
only
(Required if customer tax treatment is vat_registered)
Used to specify whether the transaction is applicable for Domestic Reverse Charge (DRC) or not.
product_type
string
🇬🇧 United Kingdom
, 🇿🇦 South Africa
, Europe only
Product Type associated with the Rule. Allowed values:
For UK and Europe: digital_service, goods and service.
For SouthAfrica Edition: service, goods, capital_service and capital_goods.
tax_authority_id
string
🇺🇸 United States
only
ID of the Tax Authority Associated with the Rule
tax_exemption_id
string
🇮🇳 India
, 🇺🇸 United States
only
ID of the Tax Exemption Associated with the Rule
location_id
string
Unique identifier of the business location to associate with the rule. Use the location_id returned by the Locations API for the same organization. Note: This value is a set of numeric characters.

Path Parameters

rule_id
string
(Required)
Unique identifier of the bank account rule.

Query Parameters

organization_id
string
(Required)
ID of the organization

Request Example

Click to copy
parameters_data='{"field1":"value1","field2":"value2"}'; headers_data = Map(); headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"); response = invokeUrl [ url: "https://www.zohoapis.com/books/v3/bankaccounts/rules/460000000048005?organization_id=10234695" type: PUT headers: headers_data content-type: application/json parameters: parameters_data connection: <connection_name> ]; info response;
OkHttpClient client = new OkHttpClient(); MediaType mediaType = MediaType.parse("application/json"); RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}"); Request request = new Request.Builder() .url("https://www.zohoapis.com/books/v3/bankaccounts/rules/460000000048005?organization_id=10234695") .put(body) .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f") .addHeader("content-type", "application/json") .build(); Response response = client.newCall(request).execute();
const options = { method: 'PUT', headers: { Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f', 'content-type': 'application/json' }, body: '{"field1":"value1","field2":"value2"}' }; fetch('https://www.zohoapis.com/books/v3/bankaccounts/rules/460000000048005?organization_id=10234695', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));
import http.client conn = http.client.HTTPSConnection("www.zohoapis.com") payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}" headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f", 'content-type': "application/json" } conn.request("PUT", "/books/v3/bankaccounts/rules/460000000048005?organization_id=10234695", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
const http = require("https"); const options = { "method": "PUT", "hostname": "www.zohoapis.com", "port": null, "path": "/books/v3/bankaccounts/rules/460000000048005?organization_id=10234695", "headers": { "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f", "content-type": "application/json" } }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.write(JSON.stringify({field1: 'value1', field2: 'value2'})); req.end();
curl --request PUT \ --url 'https://www.zohoapis.com/books/v3/bankaccounts/rules/460000000048005?organization_id=10234695' \ --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \ --header 'content-type: application/json' \ --data '{"field1":"value1","field2":"value2"}'

Body Parameters

Click to copy
{ "rule_name": "Minimum Deposit Rule", "rule_category": "selected_accounts", "account_ids": "460000000000361,460000000048001", "apply_to": "deposits", "criteria_type": "and", "auto_categorize": "recognize", "criterion": [ { "criteria_id": "460000000048009", "field": "amount", "comparator": "greater_than_or_equals", "value": "500.00" } ], "record_as": "deposit", "account_id": 460000000049001, "customer_id": 46000000000111, "tax_id": "460000000048238", "reference_number": "manual", "vat_treatment": "string", "tax_treatment": "vat_registered", "is_reverse_charge_applied": true, "product_type": "string", "tax_authority_id": "string", "tax_exemption_id": "string", "location_id": "460000000003373" }

Response Example

{ "code": 0, "message": "The bank rule has been updated.", "rule": { "rule_id": "460000000048005", "rule_name": "Minimum Deposit Rule", "rule_order": 0, "rule_category": "selected_accounts", "target_accounts": [ { "target_account_id": "460000000048001", "target_account_name": "Savings Account" }, { "target_account_id": "460000000049001", "target_account_name": "Checking Account" } ], "accounts": [ { "account_id": "460000000048001", "account_name": "Savings Account" }, { "account_id": "460000000049001", "account_name": "Checking Account" } ], "target_accounts_count": 2, "apply_to": "deposits", "criteria_type": "and", "auto_categorize": "recognize", "location_id": "460000000003373", "location_name": "Head Office", "criterion": [ { "criteria_id": "460000000048009", "field": "amount", "comparator": "greater_than_or_equals", "value": "500.00" } ], "record_as": "deposit", "account_id": "460000000000361", "account_name": "Petty Cash", "tax_id": "460000000048238", "customer_id": "46000000000111", "customer_name": "Trendz", "reference_number": "from_statement", "payment_mode": "Cash", "vat_treatment": "string", "tax_treatment": "vat_registered", "is_reverse_charge_applied": true, "product_type": "string", "tax_authority_id": "string", "tax_authority_name": "string", "tax_exemption_code": "string" } }

Get a rule AI Tools

Open in ChatGPT

Open in ChatGPT to ask questions about this page

Open in Claude

Open in Claude to ask questions about this page

Copy as Markdown

Copy this page as markdown to use with AI assistants

View as Markdown

Open this page as markdown in a new tab

Get details of a specific rule.
OAuth Scope : ZohoBooks.banking.READ

Path Parameters

rule_id
string
(Required)
Unique identifier of the bank account rule.

Query Parameters

organization_id
string
(Required)
ID of the organization

Request Example

Click to copy
headers_data = Map(); headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"); response = invokeUrl [ url: "https://www.zohoapis.com/books/v3/bankaccounts/rules/460000000048005?organization_id=10234695" type: GET headers: headers_data connection: <connection_name> ]; info response;
OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://www.zohoapis.com/books/v3/bankaccounts/rules/460000000048005?organization_id=10234695") .get() .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f") .build(); Response response = client.newCall(request).execute();
const options = { method: 'GET', headers: { Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' } }; fetch('https://www.zohoapis.com/books/v3/bankaccounts/rules/460000000048005?organization_id=10234695', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));
import http.client conn = http.client.HTTPSConnection("www.zohoapis.com") headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" } conn.request("GET", "/books/v3/bankaccounts/rules/460000000048005?organization_id=10234695", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
const http = require("https"); const options = { "method": "GET", "hostname": "www.zohoapis.com", "port": null, "path": "/books/v3/bankaccounts/rules/460000000048005?organization_id=10234695", "headers": { "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" } }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.end();
curl --request GET \ --url 'https://www.zohoapis.com/books/v3/bankaccounts/rules/460000000048005?organization_id=10234695' \ --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'

Response Example

{ "code": 0, "message": "success", "rule_id": "460000000048005", "rule_name": "Minimum Deposit Rule", "rule_order": 0, "rule_category": "selected_accounts", "target_accounts": [ { "target_account_id": "460000000048001", "target_account_name": "Savings Account" }, { "target_account_id": "460000000049001", "target_account_name": "Checking Account" } ], "accounts": [ { "account_id": "460000000048001", "account_name": "Savings Account" }, { "account_id": "460000000049001", "account_name": "Checking Account" } ], "target_accounts_count": 2, "apply_to": "deposits", "criteria_type": "and", "auto_categorize": "recognize", "location_id": "460000000003373", "location_name": "Head Office", "criterion": [ { "criteria_id": "460000000048009", "field": "amount", "comparator": "greater_than_or_equals", "value": "500.00" } ], "record_as": "deposit", "account_id": "460000000000361", "account_name": "Petty Cash", "tax_id": "460000000048238", "customer_id": "46000000000111", "customer_name": "Trendz", "reference_number": "from_statement", "payment_mode": "Cash", "vat_treatment": "string", "tax_treatment": "vat_registered", "is_reverse_charge_applied": true, "product_type": "string", "tax_authority_id": "string", "tax_authority_name": "string", "tax_exemption_code": "string" }

Delete a rule AI Tools

Open in ChatGPT

Open in ChatGPT to ask questions about this page

Open in Claude

Open in Claude to ask questions about this page

Copy as Markdown

Copy this page as markdown to use with AI assistants

View as Markdown

Open this page as markdown in a new tab

Delete a rule from your account and make it no longer applicable on the transactions.
OAuth Scope : ZohoBooks.banking.DELETE

Path Parameters

rule_id
string
(Required)
Unique identifier of the bank account rule.

Query Parameters

organization_id
string
(Required)
ID of the organization

Request Example

Click to copy
headers_data = Map(); headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"); response = invokeUrl [ url: "https://www.zohoapis.com/books/v3/bankaccounts/rules/460000000048005?organization_id=10234695" type: DELETE headers: headers_data connection: <connection_name> ]; info response;
OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://www.zohoapis.com/books/v3/bankaccounts/rules/460000000048005?organization_id=10234695") .delete(null) .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f") .build(); Response response = client.newCall(request).execute();
const options = { method: 'DELETE', headers: { Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' } }; fetch('https://www.zohoapis.com/books/v3/bankaccounts/rules/460000000048005?organization_id=10234695', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));
import http.client conn = http.client.HTTPSConnection("www.zohoapis.com") headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" } conn.request("DELETE", "/books/v3/bankaccounts/rules/460000000048005?organization_id=10234695", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
const http = require("https"); const options = { "method": "DELETE", "hostname": "www.zohoapis.com", "port": null, "path": "/books/v3/bankaccounts/rules/460000000048005?organization_id=10234695", "headers": { "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" } }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.end();
curl --request DELETE \ --url 'https://www.zohoapis.com/books/v3/bankaccounts/rules/460000000048005?organization_id=10234695' \ --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'

Response Example

{ "code": 0, "message": "The rule has been deleted." }