API Docs
/
No Results Found
Bank Transactions

Bank Transactions

In many instances, you would wish to record manual entries for your offline transactions for your bank or credit card accounts. These entries might not be a part of your bank feeds but would make an important entry for your business records.

End Points
Create a transaction for an account
Get transactions list
Update a transaction
Get transaction
Delete a transaction
Match a transaction
Get matching transactions
Unmatch a matched transaction
Exclude a transaction
Restore a transaction
Categorize an uncategorized transaction
Categorize as expense
Uncategorize a categorized transaction
Categorize a vendor payment
Categorize as customer payment
Categorize as credit note refunds
Categorize as vendor credit refunds
Categorize as Customer Payment refund
Categorize as Vendor Payment refund

Attribute

transaction_id
string
ID of the Transaction
from_account_id
string
The account ID from which money will be transferred(Mandatory for specific type of transactions). These accounts differ with respect to transaction_type. Ex: To a bank account, from-account can be: bank , card, income, refund. To a card account, from account can be: bank, card, refund.
from_account_name
string
The account Name from which money will be transferred
to_account_id
string
ID of the account to which the money gets transferred(Mandatory for specific type of transactions). Ex: From a bank account, to-account can be: bank, card, drawings, expense,credit notes. From a card account, to-account can be: card, bank, expense.
to_account_name
string
transaction_type
string
Type of the transaction.
Allowed transaction types : deposit, refund(*Supported only in Credit Card accounts), transfer_fund, card_payment, sales_without_invoices, expense_refund, owner_contribution, interest_income, other_income, owner_drawings, sales_return
Note: You will not be able to create the following module-specific transaction types under Bank Transaction endpoints :
currency_id
string
The currency ID involved in the transaction.
currency_code
string
Code of the currency involved in the transaction
payment_mode
string
Mode of payment for the transaction. (not applicable for transfer_fund, card_payment, owner_drawings). Ex:cash, cheque, etc.,
exchange_rate
integer
The foreign currency exchange rate value.
date
string
Transaction date.
customer_id
string
ID of the customer or vendor.
customer_name
string
Name of the Customer
vendor_id
string
ID of the Vendor
vendor_name
string
Name of the Vendor
reference_number
string
Reference Number of the transaction
description
string
A brief description about the transaction.
bank_charges
double
Bank Charges applied to the transaction
tax_id
string
Not applicable 🇺🇸 United States
ID of the tax or tax group applied
documents
array
List of files to be attached to a particular transaction.
Show Sub-Attributes arrow
file_name
Name of the attached file.
document_id
Unique ID of the attached file.
is_inclusive_tax
boolean
Check if transaction is tax Inclusive
tax_name
string
Name of the Tax
tax_percentage
double
Percentage of the Tax
tax_amount
double
Amount of Tax
sub_total
integer
Sub Total of the transaction
tax_authority_id
string
🇺🇸 United States
, 🇦🇺 Australia
, 🇨🇦 Canada
only
ID of the Tax Authority
tax_authority_name
string
🇺🇸 United States
, 🇦🇺 Australia
, 🇨🇦 Canada
only
Name of the Tax Authority
tax_exemption_id
string
🇮🇳 India
, 🇺🇸 United States
, 🇦🇺 Australia
, 🇨🇦 Canada
only
ID of the Tax Exemption
tax_exemption_code
string
🇮🇳 India
, 🇺🇸 United States
, 🇦🇺 Australia
, 🇨🇦 Canada
only
Code of the Tax Exemption
total
integer
Total of the transaction
bcy_total
integer
Total in Base Currency of the Organisation
amount
double
Amount of the transaction
vat_treatment
string
🇬🇧 United Kingdom
, Europe only
VAT treatment for the bank transaction. VAT treatment denotes the location of the customer or vendor. If the customer or vendor resides in the UK then the VAT treatment is uk. If the customer or vendor is in an EU country & VAT registered, you are resides in Northen Ireland and purchasing/selling Goods then his VAT treatment is eu_vat_registered. And, if he resides outside the UK then his VAT treatment is overseas.
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).
product_type
string
🇬🇧 United Kingdom
, Europe , 🇿🇦 South Africa
only
Type of the transaction. This denotes whether the transaction line item is to be treated as goods or as a service. Allowed Values:
For UK and Europe: digital_service, goods and service.
For SouthAfrica Edition: service, goods, capital_service and capital_goods
acquisition_vat_id
string
🇬🇧 United Kingdom
, Europe only
(Optional) This is the ID of the tax applied in case this is an EU - goods purchase or expense and acquisition VAT needs to be reported.
acquisition_vat_name
string
🇬🇧 United Kingdom
, Europe only
Name of the VAT Acquistion
acquisition_vat_percentage
string
🇬🇧 United Kingdom
, Europe only
Percentage of the VAT Acquistion
acquisition_vat_amount
string
🇬🇧 United Kingdom
, Europe only
Amount of the VAT Acquistion
reverse_charge_vat_id
string
🇬🇧 United Kingdom
, Europe only
(Optional) This is the ID of the tax applied in case this is a non UK - service purchase or expense and reverse charge VAT needs to be reported.
reverse_charge_vat_name
string
🇬🇧 United Kingdom
, Europe only
Name of the Reverse Charge
reverse_charge_vat_percentage
string
🇬🇧 United Kingdom
, Europe only
Percentage of the Reverse Charge
reverse_charge_vat_amount
string
🇬🇧 United Kingdom
, Europe only
Percentage of the Reverse Charge
reverse_charge_tax_id
string
🇮🇳 India
, GCC , 🇿🇦 South Africa
only
Enter reverse charge tax ID
filed_in_vat_return_id
string
🇬🇧 United Kingdom
only
ID of the VAT Return the Vendor Credit is filed in
filed_in_vat_return_name
string
🇬🇧 United Kingdom
only
Name of the VAT Return the Vendor Credit is filed in
filed_in_vat_return_type
string
🇬🇧 United Kingdom
only
Type of the VAT Return the Vendor Credit is filed in
imported_transactions
array
Show Sub-Attributes arrow
imported_transaction_id
long
ID of the Imported Transaction
date
string
Date of the transaction Imported
amount
double
Amount in the transaction
payee
string
Payee involved in the transaction
description
string
Description of the transaction
reference_number
string
Reference Number of the transaction
status
string
Status of the transaction
account_id
long
Account ID of the transaction
tags
array
Show Sub-Attributes arrow
tag_id
long
ID of the Tag
tag_option_id
long
Id of the Tag Option
line_items
array
Show Sub-Attributes arrow
from_account_id
string
The account ID from which money will be transferred(Mandatory for specific type of transactions). These accounts differ with respect to transaction_type. Ex: To a bank account, from-account can be: bank , card, income, refund. To a card account, from account can be: bank, card, refund.
from_account_name
string
The account Name from which money will be transferred
payment_mode
string
Mode of payment for the transaction. (not applicable for transfer_fund, card_payment, owner_drawings). Ex:cash, cheque, etc.,
customer_id
string
ID of the customer or vendor.
customer_name
string
Name of the Customer
vendor_id
string
ID of the Vendor
vendor_name
string
Name of the Vendor
sub_total
integer
Sub Total of the transaction
total
integer
Total of the transaction
bcy_total
integer
Total in Base Currency of the Organisation
tags
array
Show Sub-Attributes arrow
tag_id
long
ID of the Tag
tag_option_id
long
Id of the Tag Option

Example

{ "transaction_id": "460000000048017", "from_account_id": "460000000070003", "from_account_name": "Sales", "to_account_id": "460000000048001", "to_account_name": "Corporate Account", "transaction_type": "deposit", "currency_id": "460000000000097", "currency_code": "USD", "payment_mode": "Cash", "exchange_rate": 1, "date": "2013-10-01", "customer_id": "460000000000111", "customer_name": "string", "vendor_id": "460000000026049", "vendor_name": "Bowmen and co", "reference_number": "Ref-121", "description": "string", "bank_charges": 0, "tax_id": "string", "documents": [ { "file_name": null, "document_id": null } ], "is_inclusive_tax": false, "tax_name": "string", "tax_percentage": 0, "tax_amount": 0, "sub_total": 33, "tax_authority_id": "string", "tax_authority_name": "string", "tax_exemption_id": "string", "tax_exemption_code": "string", "total": 33, "bcy_total": 33, "amount": 2000, "vat_treatment": "string", "tax_treatment": "vat_registered", "product_type": "string", "acquisition_vat_id": "string", "acquisition_vat_name": "string", "acquisition_vat_percentage": "string", "acquisition_vat_amount": "string", "reverse_charge_vat_id": "string", "reverse_charge_vat_name": "string", "reverse_charge_vat_percentage": "string", "reverse_charge_vat_amount": "string", "reverse_charge_tax_id": 982000000567254, "filed_in_vat_return_id": "string", "filed_in_vat_return_name": "string", "filed_in_vat_return_type": "string", "imported_transactions": [ { "imported_transaction_id": "460000000013297", "date": "2013-01-22", "amount": 10, "payee": "Smith", "description": "Cheque Deposit", "reference_number": "Ref-1900", "status": "categorized", "account_id": 460000000006294 } ], "tags": [ { "tag_id": 0, "tag_option_id": 0 } ], "line_items": [ { "from_account_id": "460000000070003", "from_account_name": "Sales", "payment_mode": "Cash", "customer_id": "460000000000111", "customer_name": "string", "vendor_id": "460000000026049", "vendor_name": "Bowmen and co", "sub_total": 33, "total": 33, "bcy_total": 33, "tags": [ { "tag_id": 0, "tag_option_id": 0 } ] } ] }

Create a transaction for an account

Create a bank transaction based on the allowed transaction types.
OAuth Scope : ZohoBooks.banking.CREATE

Arguments

from_account_id
string
The account ID from which money will be transferred(Mandatory for specific type of transactions). These accounts differ with respect to transaction_type. Ex: To a bank account, from-account can be: bank , card, income, refund. To a card account, from account can be: bank, card, refund.
to_account_id
string
ID of the account to which the money gets transferred(Mandatory for specific type of transactions). Ex: From a bank account, to-account can be: bank, card, drawings, expense,credit notes. From a card account, to-account can be: card, bank, expense.
transaction_type
string
(Required)
Type of the transaction.
Allowed transaction types : deposit, refund(*Supported only in Credit Card accounts), transfer_fund, card_payment, sales_without_invoices, expense_refund, owner_contribution, interest_income, other_income, owner_drawings, sales_return
Note: You will not be able to create the following module-specific transaction types under Bank Transaction endpoints :
amount
double
Amount of the transaction
payment_mode
string
Mode of payment for the transaction. (not applicable for transfer_fund, card_payment, owner_drawings). Ex:cash, cheque, etc.,
exchange_rate
integer
The foreign currency exchange rate value.
date
string
Transaction date.
customer_id
string
ID of the customer or vendor.
reference_number
string
Reference Number of the transaction
description
string
A brief description about the transaction.
currency_id
string
The currency ID involved in the transaction.
tax_id
string
Not applicable 🇺🇸 United States
ID of the tax or tax group applied
is_inclusive_tax
boolean
Check if transaction is tax Inclusive
tags
array
Show Sub-Attributes arrow
tag_id
long
ID of the Tag
tag_option_id
long
Id of the Tag Option
from_account_tags
array
Show Sub-Attributes arrow
tag_id
long
ID of the Tag
tag_option_id
long
Id of the Tag Option
to_account_tags
array
Show Sub-Attributes arrow
tag_id
long
ID of the Tag
tag_option_id
long
Id of the Tag Option
documents
array
List of files to be attached to a particular transaction.
Show Sub-Attributes arrow
file_name
Name of the attached file.
document_id
Unique ID of the attached file.
bank_charges
double
Bank Charges applied to the transaction
user_id
long
ID of the User involved in the Transaction
tax_authority_id
string
🇺🇸 United States
, 🇦🇺 Australia
, 🇨🇦 Canada
only
ID of the Tax Authority
tax_exemption_id
string
🇮🇳 India
, 🇺🇸 United States
, 🇦🇺 Australia
, 🇨🇦 Canada
only
ID of the Tax Exemption
custom_fields
array
Show Sub-Attributes arrow
custom_field_id
long
index
integer
Index of the custom field
label
string
Label of the Custom Field
value
string
Value of the Custom Field

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/banktransactions?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/banktransactions?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/banktransactions?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/banktransactions?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/banktransactions?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/banktransactions?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
{ "from_account_id": "460000000070003", "to_account_id": "460000000048001", "transaction_type": "deposit", "amount": 2000, "payment_mode": "Cash", "exchange_rate": 1, "date": "2013-10-01", "customer_id": "460000000000111", "reference_number": "Ref-121", "description": "string", "currency_id": "460000000000097", "tax_id": "string", "is_inclusive_tax": false, "tags": [ { "tag_id": 0, "tag_option_id": 0 } ], "from_account_tags": [ { "tag_id": 0, "tag_option_id": 0 } ], "to_account_tags": [ { "tag_id": 0, "tag_option_id": 0 } ], "documents": [ { "file_name": null, "document_id": null } ], "bank_charges": 0, "user_id": 0, "tax_authority_id": "string", "tax_exemption_id": "string", "custom_fields": [ { "custom_field_id": 0, "index": 0, "label": "string", "value": "string" } ] }

Response Example

{ "code": 0, "message": "The bank transaction has been recorded.", "banktransaction": { "transaction_id": "460000000048017", "from_account_id": "460000000070003", "from_account_name": "Sales", "to_account_id": "460000000048001", "to_account_name": "Corporate Account", "transaction_type": "deposit", "currency_id": "460000000000097", "currency_code": "USD", "payment_mode": "Cash", "exchange_rate": 1, "date": "2013-10-01", "customer_id": "460000000000111", "customer_name": "string", "vendor_id": "460000000026049", "vendor_name": "Bowmen and co", "reference_number": "Ref-121", "description": "string", "bank_charges": 0, "tax_id": "string", "documents": [ { "file_name": null, "document_id": null } ], "is_inclusive_tax": false, "tax_name": "string", "tax_percentage": 0, "tax_amount": 0, "sub_total": 33, "tax_authority_id": "string", "tax_authority_name": "string", "tax_exemption_id": "string", "tax_exemption_code": "string", "total": 33, "bcy_total": 33, "amount": 2000, "vat_treatment": "string", "tax_treatment": "vat_registered", "product_type": "string", "acquisition_vat_id": "string", "acquisition_vat_name": "string", "acquisition_vat_percentage": "string", "acquisition_vat_amount": "string", "reverse_charge_vat_id": "string", "reverse_charge_vat_name": "string", "reverse_charge_vat_percentage": "string", "reverse_charge_vat_amount": "string", "reverse_charge_tax_id": 982000000567254, "filed_in_vat_return_id": "string", "filed_in_vat_return_name": "string", "filed_in_vat_return_type": "string", "imported_transactions": [ { "imported_transaction_id": "460000000013297", "date": "2013-01-22", "amount": 10, "payee": "Smith", "description": "Cheque Deposit", "reference_number": "Ref-1900", "status": "categorized", "account_id": 460000000006294 } ], "tags": [ { "tag_id": 0, "tag_option_id": 0 } ], "line_items": [ { "from_account_id": "460000000070003", "from_account_name": "Sales", "payment_mode": "Cash", "customer_id": "460000000000111", "customer_name": "string", "vendor_id": "460000000026049", "vendor_name": "Bowmen and co", "sub_total": 33, "total": 33, "bcy_total": 33, "tags": [ { "tag_id": 0, "tag_option_id": 0 } ] } ] } }

Get transactions list

Get all the transaction details involved in an account.
OAuth Scope : ZohoBooks.banking.READ

Query Parameters

account_id
transaction_type
date
Start and end date, to provide a range within which the transaction date exist. Variants: date_start and date_end
amount
Start and end amount, to provide a range within which the transaction amount exist. Variants: amount_start and amount_end
status
Transaction status wise list view - All, uncategorized, manually_added, matched, excluded, categorized
reference_number
Search using Reference Number of the transaction
filter_by
Filters the transactions based on the allowed types. Allowed Values: Status.All, Status.Uncategorized, Status.Categorized, Status.ManuallyAdded, Status.Excluded and Status.Matched.
sort_column
Sorts the transactions based on the allowed sort types. Allowed Values: date.
transaction_status
Transaction status wise list view - All, uncategorized, manually_added, matched, excluded, categorized
search_text
Search Transactions by contact name or description

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/banktransactions?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/banktransactions?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/banktransactions?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/banktransactions?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/banktransactions?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/banktransactions?organization_id=10234695' \ --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'

Response Example

{ "code": 0, "message": "success", "banktransactions": [ { "transaction_id": "460000000048017", "date": "2013-10-01", "amount": 2000, "transaction_type": "deposit", "status": "categorized", "source": "manually_added", "account_id": "460000000048001", "account_name": "Petty Cash", "account_type": "cash", "price_precision": 2, "customer_id": "460000000000111", "payee": "Smith", "is_paid_via_print_check": false, "description": "string", "currency_id": "460000000000097", "currency_code": "USD", "currency_symbol": "$", "debit_or_credit": "debit", "offset_account_name": "Petty Cash", "is_offsetaccount_matched": false, "reference_number": "Ref-121", "imported_transaction_id": "460000000013297", "is_rule_exist": false, "rule_details": [ "string" ] }, {...}, {...} ] }

Update a transaction

Make changes in the applicable fields of a transaction and update it.
OAuth Scope : ZohoBooks.banking.UPDATE

Arguments

from_account_id
string
The account ID from which money will be transferred(Mandatory for specific type of transactions). These accounts differ with respect to transaction_type. Ex: To a bank account, from-account can be: bank , card, income, refund. To a card account, from account can be: bank, card, refund.
to_account_id
string
ID of the account to which the money gets transferred(Mandatory for specific type of transactions). Ex: From a bank account, to-account can be: bank, card, drawings, expense,credit notes. From a card account, to-account can be: card, bank, expense.
transaction_type
string
(Required)
Type of the transaction.
Allowed transaction types : deposit, refund(*Supported only in Credit Card accounts), transfer_fund, card_payment, sales_without_invoices, expense_refund, owner_contribution, interest_income, other_income, owner_drawings, sales_return
Note: You will not be able to create the following module-specific transaction types under Bank Transaction endpoints :
amount
double
Amount of the transaction
payment_mode
string
Mode of payment for the transaction. (not applicable for transfer_fund, card_payment, owner_drawings). Ex:cash, cheque, etc.,
exchange_rate
integer
The foreign currency exchange rate value.
date
string
Transaction date.
customer_id
string
ID of the customer or vendor.
reference_number
string
Reference Number of the transaction
description
string
A brief description about the transaction.
currency_id
string
The currency ID involved in the transaction.
tax_id
string
Not applicable 🇺🇸 United States
ID of the tax or tax group applied
is_inclusive_tax
boolean
Check if transaction is tax Inclusive
tags
array
Show Sub-Attributes arrow
tag_id
long
ID of the Tag
tag_option_id
long
Id of the Tag Option
from_account_tags
array
Show Sub-Attributes arrow
tag_id
long
ID of the Tag
tag_option_id
long
Id of the Tag Option
to_account_tags
array
Show Sub-Attributes arrow
tag_id
long
ID of the Tag
tag_option_id
long
Id of the Tag Option
documents
array
List of files to be attached to a particular transaction.
Show Sub-Attributes arrow
file_name
Name of the attached file.
document_id
Unique ID of the attached file.
bank_charges
double
Bank Charges applied to the transaction
user_id
long
ID of the User involved in the Transaction
tax_authority_id
string
🇺🇸 United States
, 🇦🇺 Australia
, 🇨🇦 Canada
only
ID of the Tax Authority
tax_exemption_id
string
🇮🇳 India
, 🇺🇸 United States
, 🇦🇺 Australia
, 🇨🇦 Canada
only
ID of the Tax Exemption
custom_fields
array
Show Sub-Attributes arrow
custom_field_id
long
index
integer
Index of the custom field
label
string
Label of the Custom Field
value
string
Value of the Custom Field
line_items
array
Show Sub-Attributes arrow
line_id
long
ID of the Line in Bank Transactions
account_id
string
Mandatory Account id for which transactions are to be listed.
account_name
string
Name of the Account
description
string
A brief description about the transaction.
tax_amount
double
Amount of Tax
tax_id
string
Not applicable 🇺🇸 United States
ID of the tax or tax group applied
tax_name
string
Name of the Tax
tax_type
string
tax_percentage
double
Percentage of the Tax
item_total
double
Total of the Item
item_total_inclusive_of_tax
double
Total of the Item inclusive of Tax
item_order
integer
Order of the Item
tags
array
Show Sub-Attributes arrow
tag_id
long
ID of the Tag
tag_option_id
long
Id of the Tag Option

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/banktransactions/?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/banktransactions/?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/banktransactions/?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/banktransactions/?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/banktransactions/?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/banktransactions/?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
{ "from_account_id": "460000000070003", "to_account_id": "460000000048001", "transaction_type": "deposit", "amount": 2000, "payment_mode": "Cash", "exchange_rate": 1, "date": "2013-10-01", "customer_id": "460000000000111", "reference_number": "Ref-121", "description": "string", "currency_id": "460000000000097", "tax_id": "string", "is_inclusive_tax": false, "tags": [ { "tag_id": 0, "tag_option_id": 0 } ], "from_account_tags": [ { "tag_id": 0, "tag_option_id": 0 } ], "to_account_tags": [ { "tag_id": 0, "tag_option_id": 0 } ], "documents": [ { "file_name": null, "document_id": null } ], "bank_charges": 0, "user_id": 0, "tax_authority_id": "string", "tax_exemption_id": "string", "custom_fields": [ { "custom_field_id": 0, "index": 0, "label": "string", "value": "string" } ], "line_items": [ { "line_id": "46000000001234", "account_id": "460000000048001", "account_name": "Petty Cash", "description": "string", "tax_amount": 0, "tax_id": "string", "tax_name": "string", "tax_type": "tax", "tax_percentage": 0, "item_total": 7500, "item_total_inclusive_of_tax": 7500, "item_order": 1, "tags": [ { "tag_id": 0, "tag_option_id": 0 } ] } ] }

Response Example

{ "code": 0, "message": "The bank transaction has been updated.", "banktransaction": { "transaction_id": "460000000048017", "from_account_id": "460000000070003", "from_account_name": "Sales", "to_account_id": "460000000048001", "to_account_name": "Corporate Account", "transaction_type": "deposit", "currency_id": "460000000000097", "currency_code": "USD", "payment_mode": "Cash", "exchange_rate": 1, "date": "2013-10-01", "customer_id": "460000000000111", "customer_name": "string", "vendor_id": "460000000026049", "vendor_name": "Bowmen and co", "reference_number": "Ref-121", "description": "string", "bank_charges": 0, "tax_id": "string", "documents": [ { "file_name": null, "document_id": null } ], "is_inclusive_tax": false, "tax_name": "string", "tax_percentage": 0, "tax_amount": 0, "sub_total": 33, "tax_authority_id": "string", "tax_authority_name": "string", "tax_exemption_id": "string", "tax_exemption_code": "string", "total": 33, "bcy_total": 33, "amount": 2000, "vat_treatment": "string", "tax_treatment": "vat_registered", "product_type": "string", "acquisition_vat_id": "string", "acquisition_vat_name": "string", "acquisition_vat_percentage": "string", "acquisition_vat_amount": "string", "reverse_charge_vat_id": "string", "reverse_charge_vat_name": "string", "reverse_charge_vat_percentage": "string", "reverse_charge_vat_amount": "string", "reverse_charge_tax_id": 982000000567254, "filed_in_vat_return_id": "string", "filed_in_vat_return_name": "string", "filed_in_vat_return_type": "string", "imported_transactions": [ { "imported_transaction_id": "460000000013297", "date": "2013-01-22", "amount": 10, "payee": "Smith", "description": "Cheque Deposit", "reference_number": "Ref-1900", "status": "categorized", "account_id": 460000000006294 } ], "tags": [ { "tag_id": 0, "tag_option_id": 0 } ], "line_items": [ { "from_account_id": "460000000070003", "from_account_name": "Sales", "payment_mode": "Cash", "customer_id": "460000000000111", "customer_name": "string", "vendor_id": "460000000026049", "vendor_name": "Bowmen and co", "sub_total": 33, "total": 33, "bcy_total": 33, "tags": [ { "tag_id": 0, "tag_option_id": 0 } ] } ] } }

Get transaction

Fetch the details of a transaction by specifying the transaction_id.
OAuth Scope : ZohoBooks.banking.READ

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/banktransactions/?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/banktransactions/?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/banktransactions/?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/banktransactions/?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/banktransactions/?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/banktransactions/?organization_id=10234695' \ --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'

Response Example

{ "code": 0, "message": "success", "banktransaction": { "transaction_id": "460000000048017", "from_account_id": "460000000070003", "from_account_name": "Sales", "to_account_id": "460000000048001", "to_account_name": "Corporate Account", "transaction_type": "deposit", "currency_id": "460000000000097", "currency_code": "USD", "payment_mode": "Cash", "exchange_rate": 1, "date": "2013-10-01", "customer_id": "460000000000111", "customer_name": "string", "vendor_id": "460000000026049", "vendor_name": "Bowmen and co", "reference_number": "Ref-121", "description": "string", "bank_charges": 0, "tax_id": "string", "documents": [ { "file_name": null, "document_id": null } ], "is_inclusive_tax": false, "tax_name": "string", "tax_percentage": 0, "tax_amount": 0, "sub_total": 33, "tax_authority_id": "string", "tax_authority_name": "string", "tax_exemption_id": "string", "tax_exemption_code": "string", "total": 33, "bcy_total": 33, "amount": 2000, "vat_treatment": "string", "tax_treatment": "vat_registered", "product_type": "string", "acquisition_vat_id": "string", "acquisition_vat_name": "string", "acquisition_vat_percentage": "string", "acquisition_vat_amount": "string", "reverse_charge_vat_id": "string", "reverse_charge_vat_name": "string", "reverse_charge_vat_percentage": "string", "reverse_charge_vat_amount": "string", "reverse_charge_tax_id": 982000000567254, "filed_in_vat_return_id": "string", "filed_in_vat_return_name": "string", "filed_in_vat_return_type": "string", "imported_transactions": [ { "imported_transaction_id": "460000000013297", "date": "2013-01-22", "amount": 10, "payee": "Smith", "description": "Cheque Deposit", "reference_number": "Ref-1900", "status": "categorized", "account_id": 460000000006294 } ], "tags": [ { "tag_id": 0, "tag_option_id": 0 } ], "line_items": [ { "from_account_id": "460000000070003", "from_account_name": "Sales", "payment_mode": "Cash", "customer_id": "460000000000111", "customer_name": "string", "vendor_id": "460000000026049", "vendor_name": "Bowmen and co", "sub_total": 33, "total": 33, "bcy_total": 33, "tags": [ { "tag_id": 0, "tag_option_id": 0 } ] } ] } }

Delete a transaction

Delete a transaction from an account by specifying the transaction_id.
OAuth Scope : ZohoBooks.banking.DELETE

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/banktransactions/?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/banktransactions/?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/banktransactions/?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/banktransactions/?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/banktransactions/?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/banktransactions/?organization_id=10234695' \ --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'

Response Example

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

Match a transaction

Match an uncategorized transaction with an existing transaction in the account.
OAuth Scope : ZohoBooks.banking.CREATE

Arguments

transactions_to_be_matched
array
Show Sub-Attributes arrow
transaction_id
string
ID of the Transaction
transaction_type
string
Type of the transaction.
Allowed transaction types : deposit, refund(*Supported only in Credit Card accounts), transfer_fund, card_payment, sales_without_invoices, expense_refund, owner_contribution, interest_income, other_income, owner_drawings, sales_return
Note: You will not be able to create the following module-specific transaction types under Bank Transaction endpoints :

Query Parameters

account_id
Mandatory Account id for which transactions are to be listed.

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/banktransactions/uncategorized/460000000048017/match?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/banktransactions/uncategorized/460000000048017/match?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/banktransactions/uncategorized/460000000048017/match?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/banktransactions/uncategorized/460000000048017/match?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/banktransactions/uncategorized/460000000048017/match?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/banktransactions/uncategorized/460000000048017/match?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
{ "transactions_to_be_matched": [ { "transaction_id": "460000000048017", "transaction_type": "deposit" } ] }

Response Example

{ "code": 0, "message": "The transaction has been matched." }

Get matching transactions

Provide criteria to search for matching uncategorised transactions. The list of transactions can also include invoices/bills/credit-notes which will not be matched directly. Instead, a new (payment/refund) transaction is recorded and matched.
OAuth Scope : ZohoBooks.banking.READ

Query Parameters

transaction_id
ID of the Transaction
transaction_type
Type of the transaction.
Allowed transaction types : deposit, refund(*Supported only in Credit Card accounts), transfer_fund, card_payment, sales_without_invoices, expense_refund, owner_contribution, interest_income, other_income, owner_drawings, sales_return
Note: You will not be able to create the following module-specific transaction types under Bank Transaction endpoints :
date_after
Date after which Transactions are to be filtered
date_before
Date before which Transactions are to be filtered
amount_start
Starting amout with which transactions are to be filtered
amount_end
Starting amout with which transactions are to be filtered
contact
Contact person name, involved in the transaction.
reference_number
Reference Number of the transaction
show_all_transactions
Check if all transactions must be shown

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/banktransactions/uncategorized/460000000048017/match?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/banktransactions/uncategorized/460000000048017/match?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/banktransactions/uncategorized/460000000048017/match?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/banktransactions/uncategorized/460000000048017/match?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/banktransactions/uncategorized/460000000048017/match?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/banktransactions/uncategorized/460000000048017/match?organization_id=10234695' \ --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'

Response Example

{ "code": 0, "message": "success", "matching_transactions": [ { "transaction_id": "460000000048017", "date": "2013-10-01", "transaction_type": "deposit", "reference_number": "Ref-121", "amount": 2000, "debit_or_credit": "debit", "transaction_number": "INV-000007", "is_paid_via_print_check": false, "contact_name": "Bowman and co", "is_best_match": true }, {...}, {...} ] }

Unmatch a matched transaction

Unmatch a transaction that was previously matched and make it uncategorized.
OAuth Scope : ZohoBooks.banking.CREATE

Query Parameters

account_id
Mandatory Account id for which transactions are to be listed.

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/banktransactions/460000000048017/unmatch?organization_id=10234695" type: POST headers: headers_data connection: <connection_name> ] info response;
OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://www.zohoapis.com/books/v3/banktransactions/460000000048017/unmatch?organization_id=10234695") .post(null) .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f") .build(); Response response = client.newCall(request).execute();
const options = { method: 'POST', headers: { Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' } }; fetch('https://www.zohoapis.com/books/v3/banktransactions/460000000048017/unmatch?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("POST", "/books/v3/banktransactions/460000000048017/unmatch?organization_id=10234695", headers=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/banktransactions/460000000048017/unmatch?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 POST \ --url 'https://www.zohoapis.com/books/v3/banktransactions/460000000048017/unmatch?organization_id=10234695' \ --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'

Response Example

{ "code": 0, "message": "The transaction has been unmatched." }

Exclude a transaction

Exclude a transaction from your bank or credit card account.
OAuth Scope : ZohoBooks.banking.CREATE

Query Parameters

account_id
Mandatory Account id for which transactions are to be listed.

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/banktransactions/uncategorized/460000000048017/exclude?organization_id=10234695" type: POST headers: headers_data connection: <connection_name> ] info response;
OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://www.zohoapis.com/books/v3/banktransactions/uncategorized/460000000048017/exclude?organization_id=10234695") .post(null) .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f") .build(); Response response = client.newCall(request).execute();
const options = { method: 'POST', headers: { Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' } }; fetch('https://www.zohoapis.com/books/v3/banktransactions/uncategorized/460000000048017/exclude?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("POST", "/books/v3/banktransactions/uncategorized/460000000048017/exclude?organization_id=10234695", headers=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/banktransactions/uncategorized/460000000048017/exclude?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 POST \ --url 'https://www.zohoapis.com/books/v3/banktransactions/uncategorized/460000000048017/exclude?organization_id=10234695' \ --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'

Response Example

{ "code": 0, "message": "The transaction has been excluded." }

Restore a transaction

Restore an excluded transaction in your account.
OAuth Scope : ZohoBooks.banking.CREATE

Query Parameters

account_id
Mandatory Account id for which transactions are to be listed.

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/banktransactions/uncategorized/460000000048017/restore?organization_id=10234695" type: POST headers: headers_data connection: <connection_name> ] info response;
OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://www.zohoapis.com/books/v3/banktransactions/uncategorized/460000000048017/restore?organization_id=10234695") .post(null) .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f") .build(); Response response = client.newCall(request).execute();
const options = { method: 'POST', headers: { Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' } }; fetch('https://www.zohoapis.com/books/v3/banktransactions/uncategorized/460000000048017/restore?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("POST", "/books/v3/banktransactions/uncategorized/460000000048017/restore?organization_id=10234695", headers=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/banktransactions/uncategorized/460000000048017/restore?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 POST \ --url 'https://www.zohoapis.com/books/v3/banktransactions/uncategorized/460000000048017/restore?organization_id=10234695' \ --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'

Response Example

{ "code": 0, "message": "The excluded transaction(s) have been restored." }

Categorize an uncategorized transaction

Categorize an uncategorized transaction by creating a new transaction.
OAuth Scope : ZohoBooks.banking.CREATE

Arguments

from_account_id
string
The account ID from which money will be transferred(Mandatory for specific type of transactions). These accounts differ with respect to transaction_type. Ex: To a bank account, from-account can be: bank , card, income, refund. To a card account, from account can be: bank, card, refund.
to_account_id
string
ID of the account to which the money gets transferred(Mandatory for specific type of transactions). Ex: From a bank account, to-account can be: bank, card, drawings, expense,credit notes. From a card account, to-account can be: card, bank, expense.
transaction_type
string
(Required)
Type of the transaction.
Allowed transaction types : deposit, refund(*Supported only in Credit Card accounts), transfer_fund, card_payment, sales_without_invoices, expense_refund, owner_contribution, interest_income, other_income, owner_drawings, sales_return
Note: You will not be able to create the following module-specific transaction types under Bank Transaction endpoints :
amount
double
Amount of the transaction
date
string
Transaction date.
reference_number
string
Reference Number of the transaction
payment_mode
string
Mode of payment for the transaction. (not applicable for transfer_fund, card_payment, owner_drawings). Ex:cash, cheque, etc.,
exchange_rate
integer
The foreign currency exchange rate value.
description
string
A brief description about the transaction.
customer_id
string
ID of the customer or vendor.
tags
array
Show Sub-Attributes arrow
tag_id
long
ID of the Tag
tag_option_id
long
Id of the Tag Option
documents
array
List of files to be attached to a particular transaction.
Show Sub-Attributes arrow
file_name
Name of the attached file.
document_id
Unique ID of the attached file.
currency_id
string
The currency ID involved in the transaction.
tax_id
string
Not applicable 🇺🇸 United States
ID of the tax or tax group applied
to_account_tags
array
Show Sub-Attributes arrow
tag_id
long
ID of the Tag
tag_option_id
long
Id of the Tag Option
from_account_tags
array
Show Sub-Attributes arrow
tag_id
long
ID of the Tag
tag_option_id
long
Id of the Tag Option
is_inclusive_tax
boolean
Check if transaction is tax Inclusive
bank_charges
double
Bank Charges applied to the transaction
user_id
long
ID of the User involved in the Transaction
tax_authority_id
string
🇺🇸 United States
, 🇦🇺 Australia
, 🇨🇦 Canada
only
ID of the Tax Authority
tax_exemption_id
string
🇮🇳 India
, 🇺🇸 United States
, 🇦🇺 Australia
, 🇨🇦 Canada
only
ID of the Tax Exemption
custom_fields
array
Show Sub-Attributes arrow
custom_field_id
long
index
integer
Index of the custom field
label
string
Label of the Custom Field
value
string
Value of the Custom Field
line_items
array
Show Sub-Attributes arrow
line_id
long
ID of the Line in Bank Transactions
account_id
string
Mandatory Account id for which transactions are to be listed.
account_name
string
Name of the Account
description
string
A brief description about the transaction.
tax_amount
double
Amount of Tax
tax_id
string
Not applicable 🇺🇸 United States
ID of the tax or tax group applied
tax_name
string
Name of the Tax
tax_type
string
tax_percentage
double
Percentage of the Tax
item_total
double
Total of the Item
item_total_inclusive_of_tax
double
Total of the Item inclusive of Tax
item_order
integer
Order of the Item
tags
array
Show Sub-Attributes arrow
tag_id
long
ID of the Tag
tag_option_id
long
Id of the Tag Option

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/banktransactions/uncategorized/460000000048017/categorize?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/banktransactions/uncategorized/460000000048017/categorize?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/banktransactions/uncategorized/460000000048017/categorize?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/banktransactions/uncategorized/460000000048017/categorize?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/banktransactions/uncategorized/460000000048017/categorize?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/banktransactions/uncategorized/460000000048017/categorize?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
{ "from_account_id": "460000000070003", "to_account_id": "460000000048001", "transaction_type": "deposit", "amount": 2000, "date": "2013-10-01", "reference_number": "Ref-121", "payment_mode": "Cash", "exchange_rate": 1, "description": "string", "customer_id": "460000000000111", "tags": [ { "tag_id": 0, "tag_option_id": 0 } ], "documents": [ { "file_name": null, "document_id": null } ], "currency_id": "460000000000097", "tax_id": "string", "to_account_tags": [ { "tag_id": 0, "tag_option_id": 0 } ], "from_account_tags": [ { "tag_id": 0, "tag_option_id": 0 } ], "is_inclusive_tax": false, "bank_charges": 0, "user_id": 0, "tax_authority_id": "string", "tax_exemption_id": "string", "custom_fields": [ { "custom_field_id": 0, "index": 0, "label": "string", "value": "string" } ], "line_items": [ { "line_id": "46000000001234", "account_id": "460000000048001", "account_name": "Petty Cash", "description": "string", "tax_amount": 0, "tax_id": "string", "tax_name": "string", "tax_type": "tax", "tax_percentage": 0, "item_total": 7500, "item_total_inclusive_of_tax": 7500, "item_order": 1, "tags": [ { "tag_id": 0, "tag_option_id": 0 } ] } ] }

Response Example

{ "code": 0, "message": "The transaction(s) have been categorized." }

Categorize as expense

Categorize an Uncategorized transaction as expense.
OAuth Scope : ZohoBooks.banking.CREATE

Arguments

account_id
string
Mandatory Account id for which transactions are to be listed.
paid_through_account_id
string
ID of the credit/ bank account the payment is made.
date
string
Transaction date.
tax_id
string
Not applicable 🇺🇸 United States
ID of the tax or tax group applied
amount
double
Amount of the transaction
project_id
string
ID of the project associated with the expense.
tax_exemption_code
string
🇮🇳 India
, 🇺🇸 United States
, 🇦🇺 Australia
, 🇨🇦 Canada
only
Code of the Tax Exemption
tax_exemption_id
string
🇮🇳 India
, 🇺🇸 United States
, 🇦🇺 Australia
, 🇨🇦 Canada
only
ID of the Tax Exemption
is_inclusive_tax
boolean
Check if transaction is tax Inclusive
is_billable
boolean
A boolean value to specify if the expense is billable.
reference_number
string
Reference Number of the transaction
description
string
A brief description about the transaction.
customer_id
string
ID of the customer or vendor.
zp_project_id
long
ID of the Project
zp_project_name
string
Name of the Project
zp_client_id
long
ID of client
vendor_id
string
ID of the Vendor
vehicle_id
string
ID of the Vehicle
mileage_unit
string
Unit of Mileage
mileage_rate
double
Mileage Rate to be Applied
can_reclaim_vat_on_mileage
boolean
🇬🇧 United Kingdom
, Europe only
Check if VAT can be reclaimed on mileage
fuel_type
string
🇬🇧 United Kingdom
, Europe only
Type of Fuel Used. Allowed Values : petrol, lpg, diesel
engine_capacity_range
string
🇬🇧 United Kingdom
, Europe only
Type of Fuel Used. Allowed Values : less_than_1400cc, between_1401cc_and_1600cc, between_1601cc_and_2000cc and more_than_2000cc
employee_id
long
ID of the Employee
mileage_type
string
Type of Mileage. Allowed Values : gmaps,imaps,gps,odometer,wmaps,manual,non_mileage and per_diem
expense_type
string
Type of Expense
distance
double
Distance Covered
start_reading
string
Start Reading of the Odometer
end_reading
string
End Reading of the Odometer
currency_id
string
The currency ID involved in the transaction.
custom_fields
array
Show Sub-Attributes arrow
index
integer
Index of the custom field
value
string
Value of the Custom Field
tags
array
Show Sub-Attributes arrow
tag_id
long
ID of the Tag
tag_option_id
long
Id of the Tag Option
documents
array
List of files to be attached to a particular transaction.
Show Sub-Attributes arrow
file_name
Name of the attached file.
document_id
Unique ID of the attached file.
exchange_rate
integer
The foreign currency exchange rate value.
recurring_expense_id
long
ID of the Recurring Expense
vat_treatment
string
🇬🇧 United Kingdom
, Europe only
VAT treatment for the bank transaction. VAT treatment denotes the location of the customer or vendor. If the customer or vendor resides in the UK then the VAT treatment is uk. If the customer or vendor is in an EU country & VAT registered, you are resides in Northen Ireland and purchasing/selling Goods then his VAT treatment is eu_vat_registered. And, if he resides outside the UK then his VAT treatment is overseas.
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).
acquisition_vat_id
string
🇬🇧 United Kingdom
, Europe only
(Optional) This is the ID of the tax applied in case this is an EU - goods purchase or expense and acquisition VAT needs to be reported.
reverse_charge_vat_id
string
🇬🇧 United Kingdom
, Europe only
(Optional) This is the ID of the tax applied in case this is a non UK - service purchase or expense and reverse charge VAT needs to be reported.
is_update_customer
boolean
Check if Customer should be updated
product_type
string
🇬🇧 United Kingdom
, Europe , 🇿🇦 South Africa
only
Type of the transaction. This denotes whether the transaction line item is to be treated as goods or as a service. Allowed Values:
For UK and Europe: digital_service, goods and service.
For SouthAfrica Edition: service, goods, capital_service and capital_goods
taxes
array
Show Sub-Attributes arrow
tax_name
string
Name of the Tax
tax_amount
double
Amount of Tax
tax_id
string
Not applicable 🇺🇸 United States
ID of the tax or tax group applied
reason
string
Reason
line_items
array
Show Sub-Attributes arrow
line_item_id
long
ID of the Line Item
account_id
string
Mandatory Account id for which transactions are to be listed.
description
string
A brief description about the transaction.
amount
double
Amount of the transaction
tax_id
string
Not applicable 🇺🇸 United States
ID of the tax or tax group applied
item_order
integer
Order of the Item
product_type
string
🇬🇧 United Kingdom
, Europe , 🇿🇦 South Africa
only
Type of the transaction. This denotes whether the transaction line item is to be treated as goods or as a service. Allowed Values:
For UK and Europe: digital_service, goods and service.
For SouthAfrica Edition: service, goods, capital_service and capital_goods
acquisition_vat_id
string
🇬🇧 United Kingdom
, Europe only
(Optional) This is the ID of the tax applied in case this is an EU - goods purchase or expense and acquisition VAT needs to be reported.
reverse_charge_vat_id
string
🇬🇧 United Kingdom
, Europe only
(Optional) This is the ID of the tax applied in case this is a non UK - service purchase or expense and reverse charge VAT needs to be reported.
tax_exemption_code
string
🇮🇳 India
, 🇺🇸 United States
, 🇦🇺 Australia
, 🇨🇦 Canada
only
Code of the Tax Exemption
tax_exemption_id
string
🇮🇳 India
, 🇺🇸 United States
, 🇦🇺 Australia
, 🇨🇦 Canada
only
ID of the Tax Exemption
tags
array
Show Sub-Attributes arrow
tag_id
long
ID of the Tag
tag_option_id
long
Id of the Tag Option
zcrm_potential_id
long

Query Parameters

doc
Document that is to be attached
totalFiles
Total number of files.
document_ids

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/banktransactions/uncategorized/460000000048017/categorize/expenses?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/banktransactions/uncategorized/460000000048017/categorize/expenses?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/banktransactions/uncategorized/460000000048017/categorize/expenses?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/banktransactions/uncategorized/460000000048017/categorize/expenses?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/banktransactions/uncategorized/460000000048017/categorize/expenses?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/banktransactions/uncategorized/460000000048017/categorize/expenses?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
{ "account_id": "460000000048001", "paid_through_account_id": "460000000000358", "date": "2013-10-01", "tax_id": "string", "amount": 2000, "project_id": "string", "tax_exemption_code": "string", "tax_exemption_id": "string", "is_inclusive_tax": false, "is_billable": true, "reference_number": "Ref-121", "description": "string", "customer_id": "460000000000111", "zp_project_id": 0, "zp_project_name": "string", "zp_client_id": 0, "vendor_id": "460000000026049", "vehicle_id": "string", "mileage_unit": "km", "mileage_rate": 0, "can_reclaim_vat_on_mileage": true, "fuel_type": "string", "engine_capacity_range": "string", "employee_id": 0, "mileage_type": "non_mileage", "expense_type": "non_mileage", "distance": 4, "start_reading": "string", "end_reading": "string", "currency_id": "460000000000097", "custom_fields": [ { "index": 0, "value": "string" } ], "tags": [ { "tag_id": 0, "tag_option_id": 0 } ], "documents": [ { "file_name": null, "document_id": null } ], "exchange_rate": 1, "recurring_expense_id": 0, "vat_treatment": "string", "tax_treatment": "vat_registered", "acquisition_vat_id": "string", "reverse_charge_vat_id": "string", "is_update_customer": false, "product_type": "string", "taxes": [ { "tax_name": "string", "tax_amount": 0, "tax_id": "string" } ], "reason": "string", "line_items": [ { "line_item_id": "460000000012834", "account_id": "460000000048001", "description": "string", "amount": 2000, "tax_id": "string", "item_order": 1, "product_type": "string", "acquisition_vat_id": "string", "reverse_charge_vat_id": "string", "tax_exemption_code": "string", "tax_exemption_id": "string", "tags": [ { "tag_id": 0, "tag_option_id": 0 } ] } ], "zcrm_potential_id": 0 }

Response Example

{ "code": 0, "message": "The transaction(s) have been categorized." }

Uncategorize a categorized transaction

Revert a categorized transaction as uncategorized.
OAuth Scope : ZohoBooks.banking.CREATE

Query Parameters

account_id
Mandatory Account id for which transactions are to be listed.

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/banktransactions/460000000048017/uncategorize?organization_id=10234695" type: POST headers: headers_data connection: <connection_name> ] info response;
OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://www.zohoapis.com/books/v3/banktransactions/460000000048017/uncategorize?organization_id=10234695") .post(null) .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f") .build(); Response response = client.newCall(request).execute();
const options = { method: 'POST', headers: { Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' } }; fetch('https://www.zohoapis.com/books/v3/banktransactions/460000000048017/uncategorize?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("POST", "/books/v3/banktransactions/460000000048017/uncategorize?organization_id=10234695", headers=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/banktransactions/460000000048017/uncategorize?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 POST \ --url 'https://www.zohoapis.com/books/v3/banktransactions/460000000048017/uncategorize?organization_id=10234695' \ --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'

Response Example

{ "code": 0, "message": "Transaction(s) have been uncategorized." }

Categorize a vendor payment

Categorize an uncategorized transaction as Vendor Payment.
OAuth Scope : ZohoBooks.banking.CREATE

Arguments

vendor_id
string
ID of the Vendor
bills
array
Show Sub-Attributes arrow
bill_payment_id
string
ID of the Bill Payment
bill_id
string
ID of the Bill
amount_applied
double
Amount applied to the Entity
tax_amount_withheld
double
payment_mode
string
Mode of payment for the transaction. (not applicable for transfer_fund, card_payment, owner_drawings). Ex:cash, cheque, etc.,
description
string
A brief description about the transaction.
date
string
Transaction date.
reference_number
string
Reference Number of the transaction
exchange_rate
integer
The foreign currency exchange rate value.
paid_through_account_id
string
ID of the credit/ bank account the payment is made.
amount
double
Amount of the transaction
custom_fields
array
Show Sub-Attributes arrow
index
integer
Index of the custom field
value
string
Value of the Custom Field
is_paid_via_print_check
boolean
🇺🇸 United States
, 🇨🇦 Canada
only
Is the entity paid via print check
check_details
array
Show Sub-Attributes arrow
memo
string
check_number
string
Number of the Check Created

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/banktransactions/uncategorized/460000000048017/categorize/vendorpayments?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/banktransactions/uncategorized/460000000048017/categorize/vendorpayments?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/banktransactions/uncategorized/460000000048017/categorize/vendorpayments?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/banktransactions/uncategorized/460000000048017/categorize/vendorpayments?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/banktransactions/uncategorized/460000000048017/categorize/vendorpayments?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/banktransactions/uncategorized/460000000048017/categorize/vendorpayments?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
{ "vendor_id": "460000000026049", "bills": [ { "bill_payment_id": "string", "bill_id": "460000000053199", "amount_applied": 150, "tax_amount_withheld": 0 } ], "payment_mode": "Cash", "description": "string", "date": "2013-10-01", "reference_number": "Ref-121", "exchange_rate": 1, "paid_through_account_id": "460000000000358", "amount": 2000, "custom_fields": [ { "index": 0, "value": "string" } ], "is_paid_via_print_check": false, "check_details": [ { "memo": "string", "check_number": "string" } ] }

Response Example

{ "code": 0, "message": "The transaction(s) have been categorized." }

Categorize as customer payment

Categorize an uncategorized transaction as Customer Payment.
OAuth Scope : ZohoBooks.banking.CREATE

Arguments

customer_id
string
ID of the customer or vendor.
retainerinvoice_id
long
ID of the Retainer Invoice
invoices
array
Show Sub-Attributes arrow
invoice_payment_id
long
ID of the Invoice Payment
invoice_id
long
ID of the Invoice
amount_applied
double
Amount applied to the Entity
tax_amount_withheld
double
discount_amount
double
Amount of discount in the Invoice
payment_mode
string
Mode of payment for the transaction. (not applicable for transfer_fund, card_payment, owner_drawings). Ex:cash, cheque, etc.,
description
string
A brief description about the transaction.
reference_number
string
Reference Number of the transaction
exchange_rate
integer
The foreign currency exchange rate value.
amount
double
Amount of the transaction
bank_charges
double
Bank Charges applied to the transaction
account_id
string
Mandatory Account id for which transactions are to be listed.
custom_fields
array
Show Sub-Attributes arrow
index
integer
Index of the custom field
value
string
Value of the Custom Field
documents
array
List of files to be attached to a particular transaction.
Show Sub-Attributes arrow
file_name
Name of the attached file.
document_id
Unique ID of the attached file.
date
string
Transaction date.
template_id
long
ID of the template
contact_persons
array
Array of contact person(s) for whom invoice has to be sent.

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/banktransactions/uncategorized/460000000048017/categorize/customerpayments?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/banktransactions/uncategorized/460000000048017/categorize/customerpayments?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/banktransactions/uncategorized/460000000048017/categorize/customerpayments?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/banktransactions/uncategorized/460000000048017/categorize/customerpayments?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/banktransactions/uncategorized/460000000048017/categorize/customerpayments?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/banktransactions/uncategorized/460000000048017/categorize/customerpayments?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
{ "customer_id": "460000000000111", "retainerinvoice_id": 0, "invoices": [ { "invoice_payment_id": "460000000134123", "invoice_id": "460000000000481", "amount_applied": 150, "tax_amount_withheld": 0, "discount_amount": 20 } ], "payment_mode": "Cash", "description": "string", "reference_number": "Ref-121", "exchange_rate": 1, "amount": 2000, "bank_charges": 0, "account_id": "460000000048001", "custom_fields": [ { "index": 0, "value": "string" } ], "documents": [ { "file_name": null, "document_id": null } ], "date": "2013-10-01", "template_id": 0, "contact_persons": [ "460000000870911", "460000000870915" ] }

Response Example

{ "code": 0, "message": "The transaction(s) have been categorized." }

Categorize as credit note refunds

Categorize an Uncategorized transaction as a refund from a credit note.
OAuth Scope : ZohoBooks.banking.CREATE

Arguments

creditnote_id
string
(Required)
ID of the credit note that has to be refunded.
date
string
(Required)
Transaction date.
refund_mode
string
Mode of refund. Ex - Cash, Cheque etc.,
reference_number
string
Reference Number of the transaction
amount
double
Amount of the transaction
exchange_rate
integer
The foreign currency exchange rate value.
from_account_id
string
The account ID from which money will be transferred(Mandatory for specific type of transactions). These accounts differ with respect to transaction_type. Ex: To a bank account, from-account can be: bank , card, income, refund. To a card account, from account can be: bank, card, refund.
description
string
A brief description about the transaction.

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/banktransactions/uncategorized/460000000048017/categorize/creditnoterefunds?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/banktransactions/uncategorized/460000000048017/categorize/creditnoterefunds?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/banktransactions/uncategorized/460000000048017/categorize/creditnoterefunds?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/banktransactions/uncategorized/460000000048017/categorize/creditnoterefunds?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/banktransactions/uncategorized/460000000048017/categorize/creditnoterefunds?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/banktransactions/uncategorized/460000000048017/categorize/creditnoterefunds?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
{ "creditnote_id": "4000000030049", "date": "2013-10-01", "refund_mode": "Cash", "reference_number": "Ref-121", "amount": 2000, "exchange_rate": 1, "from_account_id": "460000000070003", "description": "string" }

Response Example

{ "code": 0, "message": "The transaction(s) have been categorized." }

Categorize as vendor credit refunds

Categorize an uncategorized transaction as a refund from a vendor credit.
OAuth Scope : ZohoBooks.banking.CREATE

Arguments

vendor_credit_id
string
(Required)
ID of the vendor credit that has to be refunded.
date
string
(Required)
Transaction date.
refund_mode
string
Mode of refund. Ex - Cash, Cheque etc.,
reference_number
string
Reference Number of the transaction
amount
double
Amount of the transaction
exchange_rate
integer
The foreign currency exchange rate value.
account_id
string
Mandatory Account id for which transactions are to be listed.
description
string
A brief description about the transaction.

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/banktransactions/uncategorized/460000000048017/categorize/vendorcreditrefunds?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/banktransactions/uncategorized/460000000048017/categorize/vendorcreditrefunds?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/banktransactions/uncategorized/460000000048017/categorize/vendorcreditrefunds?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/banktransactions/uncategorized/460000000048017/categorize/vendorcreditrefunds?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/banktransactions/uncategorized/460000000048017/categorize/vendorcreditrefunds?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/banktransactions/uncategorized/460000000048017/categorize/vendorcreditrefunds?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
{ "vendor_credit_id": "460000000030049", "date": "2013-10-01", "refund_mode": "Cash", "reference_number": "Ref-121", "amount": 2000, "exchange_rate": 1, "account_id": "460000000048001", "description": "string" }

Response Example

{ "code": 0, "message": "The transaction(s) have been categorized." }

Categorize as Customer Payment refund

Categorizing bank transactions as Payment Refund.
OAuth Scope : ZohoBooks.banking.CREATE

Arguments

date
string
(Required)
Transaction date.
refund_mode
string
Mode of refund. Ex - Cash, Cheque etc.,
reference_number
string
Reference Number of the transaction
amount
double
(Required)
Amount of the transaction
exchange_rate
integer
The foreign currency exchange rate value.
from_account_id
string
(Required)
The account ID from which money will be transferred(Mandatory for specific type of transactions). These accounts differ with respect to transaction_type. Ex: To a bank account, from-account can be: bank , card, income, refund. To a card account, from account can be: bank, card, refund.
description
string
A brief description about the transaction.

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/banktransactions/uncategorized//categorize/paymentrefunds?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/banktransactions/uncategorized//categorize/paymentrefunds?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/banktransactions/uncategorized//categorize/paymentrefunds?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/banktransactions/uncategorized//categorize/paymentrefunds?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/banktransactions/uncategorized//categorize/paymentrefunds?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/banktransactions/uncategorized//categorize/paymentrefunds?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
{ "date": "2013-10-01", "refund_mode": "Cash", "reference_number": "Ref-121", "amount": 2000, "exchange_rate": 1, "from_account_id": "460000000070003", "description": "string" }

Response Example

{ "code": 0, "message": "The transaction(s) have been categorized." }

Categorize as Vendor Payment refund

Categorizing bank transactions as Vendor Payment Refund.
OAuth Scope : ZohoBooks.banking.CREATE

Arguments

vendorpayment_id
string
Vendor Payment to which you want to record the refund.
date
string
(Required)
Transaction date.
refund_mode
string
Mode of refund. Ex - Cash, Cheque etc.,
reference_number
string
Reference Number of the transaction
amount
double
(Required)
Amount of the transaction
exchange_rate
integer
The foreign currency exchange rate value.
to_account_id
string
(Required)
ID of the account to which the money gets transferred(Mandatory for specific type of transactions). Ex: From a bank account, to-account can be: bank, card, drawings, expense,credit notes. From a card account, to-account can be: card, bank, expense.
description
string
A brief description about the transaction.

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/banktransactions/uncategorized//categorize/vendorpaymentrefunds?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/banktransactions/uncategorized//categorize/vendorpaymentrefunds?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/banktransactions/uncategorized//categorize/vendorpaymentrefunds?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/banktransactions/uncategorized//categorize/vendorpaymentrefunds?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/banktransactions/uncategorized//categorize/vendorpaymentrefunds?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/banktransactions/uncategorized//categorize/vendorpaymentrefunds?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
{ "vendorpayment_id": "460000000012345", "date": "2013-10-01", "refund_mode": "Cash", "reference_number": "Ref-121", "amount": 2000, "exchange_rate": 1, "to_account_id": "460000000048001", "description": "string" }

Response Example

{ "code": 0, "message": "The transaction(s) have been categorized." }