- Introduction
- OAuth
- HTTP Methods
- Response
- Errors
- Pagination
- Organizations
- Contacts
- Contact Persons
- Item Groups
- Items
- Composite Items
- Item Adjustments
- Transfer Orders
- Sales Orders
- Packages
- Shipment Orders
- Invoices
- Overview
- Create an invoice
- List invoices
- Update an invoice
- Get an invoice
- Delete an invoice
- Mark an invoice as sent
- Void an invoice
- Mark as draft
- Email an invoice
- Get invoice email content
- Email invoices
- Get payment reminder mail content
- Bulk export Invoices
- Bulk print invoices
- Disable payment reminder
- Enable payment reminder
- Write off invoice
- Cancel write off
- Update billing address
- Update shipping address
- List invoice templates
- Update invoice template
- List invoice payments
- List credits applied
- Apply credits
- Delete a payment
- Delete applied credit
- Add attachment to an invoice
- Update attachment preference
- Get an invoice attachment
- Delete an attachment
- Add comment
- List invoice comments & history
- Update comment
- Delete a comment
- Retainer Invoices
- Overview
- Create a retainer invoice
- List a retainer invoices
- update a retainer invoice
- Get a retainer invoice
- Delete a retainer invoice
- Mark a retainer invoice as sent
- Update retainer invoice template
- Void a retainer invoice
- Mark as draft
- Submit a retainer invoice for approval
- Approve a retainer invoice.
- Email a retainer invoice
- Get retainer invoice email content
- Update billing address
- List retainer invoice templates
- Add attachment to a retainer invoice
- Get a retainer invoice attachment
- Delete an attachment
- Add comment
- List retainer invoice comments & history
- Update comment
- Delete a comment
- Customer Payments
- Sales Returns
- Credit Notes
- Overview
- Create a credit note
- List all Credit Notes
- Update a credit note
- Get a credit note
- Delete a credit note
- Email a credit note
- Get email content
- Void a Credit Note
- Convert Credit Note to Draft
- Convert credit note to Open
- Submit a credit note for approval
- Approve a credit note
- Email history
- Update billing address
- Update Shipping address
- List the credit note templates
- Update a credit note template
- Apply credits to invoices
- List invoices credited
- Delete credits applied to an invoice
- Add a comment
- List credit note comments & history
- Delete a Comment
- List credit note refunds
- Refund credit note
- List refunds of a credit note
- Update credit note refund
- Get credit note refund
- Delete credit note refund
- Purchase Orders
- Purchase Receives
- Bills
- Vendor Credits
- Overview
- Create a vendor credit
- List vendor credits
- Update vendor credit
- Get vendor credit
- Delete vendor credit
- Convert to open
- Void vendor credit
- Submit a Vendor credit for approval
- Approve a Vendor credit
- Apply credits to a bill
- List bills credited
- Delete bills credited
- Refund a vendor credit
- List refunds of a vendor credit
- Update vendor credit refund
- Get vendor credit refund
- Delete vendor credit refund
- List vendor credit refunds
- Add a comment
- List vendor credit comments & history
- Delete a comment
- Warehouse Settings
- Price Lists
- Taxes
Item Adjustments
Item Adjustments are used to synchronize the inventory/stock to account for things that occur outside the normal business like theft, damaged goods, data entry error etc.
Attribute
- inventory_adjustment_idlong
Unique ID generated by the server for the item adjustment. This is used as an identifier.
- datestring
The date for the Item Adjustment.
- reasonstring
The reason for the Item Adjustment.
- reason_idlong
Unique ID generated by the server for the reason. This is used as an identifier.
- descriptionstring
Sample Description.
- reference_numberstring
Reference number of the Item Adjustment.
- adjustment_typestring
The adjustment type should be either quantity or value.Allowed values are quantity and value only.
- line_itemsarray
An item adjustment can contain multiple line items. Each line item contains item_id,name,description,quantity_adjusted,unit,adjustment_account_id,warehouse_id.
Show Sub-Attributes
- item_idlong
Unique ID generated by the server for the item. This is used as an identifier.
- line_item_idlong
Unique ID generated by the server for each line item. This is used as an identifier.
- namestring
Name of the line item.
- descriptionstring
Sample Description.
- quantity_adjusteddouble
The adjusted quantity of the line item.It depends on adjustment_type and should be given only when adjustment_type is given as quantity.
- item_totaldouble
Total of line item.
- unitstring
Unit of line item.
- is_combo_productboolean
adjustment_account_id
- longUnique ID generated by the server for the Adjustment account.
adjustment_account_name
- stringName of the Adjustment Account.
warehouse_id
- longUnique ID generated by the server for the Warehouse.
warehouse_name
- stringName of the Warehouse.
undefined
- totaldouble
Total value of the Item Adjustment.
{
"inventory_adjustment_id": 4815000000044100,
"date": "2015-05-28",
"reason": "Damaged goods",
"reason_id": 4815000000044110,
"description": "Just a sample description.",
"reference_number": "REF-IA-00001",
"adjustment_type": "quantity",
"line_items": [
{
"item_id": 4815000000044100,
"line_item_id": 4815000000044897,
"name": "Laptop-white/15inch/dell",
"description": "Just a sample description.",
"quantity_adjusted": 10,
"item_total": 244,
"unit": "qty",
"is_combo_product": false,
"adjustment_account_id": 4815000000000388,
"adjustment_account_name": "Cost of Goods Sold",
"warehouse_id": 4815000000000390,
"warehouse_name": "MyWarehouse"
}
],
"total": 350
}
Create an item adjustment
Creates a new item adjustment in Zakya.
OAuth Scope : ZakyaAPI.inventoryadjustments.CREATE
Arguments
- datestring (Required)
The date for the Item Adjustment.
- reasonstring (Required)
The reason for the Item Adjustment.
- descriptionstring
Sample Description.
- reference_numberstring
Reference number of the Item Adjustment.
- adjustment_typestring (Required)
The adjustment type should be either quantity or value.Allowed values are quantity and value only.
- line_itemsarray (Required)
An item adjustment can contain multiple line items. Each line item contains item_id,name,description,quantity_adjusted,unit,adjustment_account_id,warehouse_id.
Show Sub-Attributes
- item_idlong (Required)
Unique ID generated by the server for the item. This is used as an identifier.
- namestring
Name of the line item.
- descriptionstring
Sample Description.
- quantity_adjusteddouble (Required)
The adjusted quantity of the line item.It depends on adjustment_type and should be given only when adjustment_type is given as quantity.
- item_totaldouble
Total of line item.
- unitstring
Unit of line item.
- is_combo_productboolean
adjustment_account_id
- longUnique ID generated by the server for the Adjustment account.
adjustment_account_name
- stringName of the Adjustment Account.
warehouse_id
- longUnique ID generated by the server for the Warehouse.
warehouse_name
- stringName of the Warehouse.
undefined
curl --request POST \
--url 'https://api.zakya.com/inventory/v1/inventoryadjustments?organization_id=10234695' \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'content-type: application/json' \
--data '{"field1":"value1","field2":"value2"}'
parameters_data='{"field1":"value1","field2":"value2"}';
headers_data = Map();
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://api.zakya.com/inventory/v1/inventoryadjustments?organization_id=10234695"
type: POST
headers: headers_data
content-type: application/json
parameters: parameters_data
connection:
]
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://api.zakya.com/inventory/v1/inventoryadjustments?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 http = require("https");
const options = {
"method": "POST",
"hostname": "api.zakya.com",
"port": null,
"path": "/inventory/v1/inventoryadjustments?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();
const options = {
method: 'POST',
headers: {
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f',
'content-type': 'application/json'
},
body: '{"field1":"value1","field2":"value2"}'
};
fetch('https://api.zakya.com/inventory/v1/inventoryadjustments?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("api.zakya.com")
payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}"
headers = {
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
'content-type': "application/json"
}
conn.request("POST", "/inventory/v1/inventoryadjustments?organization_id=10234695", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
{
"date": "2015-05-28",
"reason": "Damaged goods",
"description": "Just a sample description.",
"reference_number": "REF-IA-00001",
"adjustment_type": "quantity",
"line_items": [
{
"item_id": 4815000000044100,
"name": "Laptop-white/15inch/dell",
"description": "Just a sample description.",
"quantity_adjusted": 10,
"item_total": 244,
"unit": "qty",
"is_combo_product": false,
"adjustment_account_id": 4815000000000388,
"adjustment_account_name": "Cost of Goods Sold",
"warehouse_id": 4815000000000390,
"warehouse_name": "MyWarehouse"
}
]
}
{
"code": 0,
"message": "Inventory Adjustment has been added",
"inventory_adjustment": {
"inventory_adjustment_id": 4815000000044100,
"date": "2015-05-28",
"reason": "Damaged goods",
"reason_id": 4815000000044110,
"description": "Just a sample description.",
"reference_number": "REF-IA-00001",
"adjustment_type": "quantity",
"line_items": [
{
"item_id": 4815000000044100,
"line_item_id": 4815000000044897,
"name": "Laptop-white/15inch/dell",
"description": "Just a sample description.",
"quantity_adjusted": 10,
"item_total": 244,
"unit": "qty",
"is_combo_product": false,
"adjustment_account_id": 4815000000000388,
"adjustment_account_name": "Cost of Goods Sold",
"warehouse_id": 4815000000000390,
"warehouse_name": "MyWarehouse"
}
],
"total": 350
}
}
List all the item adjustments
Lists all the item adjustments present in Zakya.
OAuth Scope : ZakyaAPI.inventoryadjustments.READ
curl --request GET \
--url 'https://api.zakya.com/inventory/v1/inventoryadjustments?organization_id=10234695' \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
headers_data = Map();
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://api.zakya.com/inventory/v1/inventoryadjustments?organization_id=10234695"
type: GET
headers: headers_data
connection:
]
info response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.zakya.com/inventory/v1/inventoryadjustments?organization_id=10234695")
.get()
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
const http = require("https");
const options = {
"method": "GET",
"hostname": "api.zakya.com",
"port": null,
"path": "/inventory/v1/inventoryadjustments?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();
const options = {
method: 'GET',
headers: {
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
}
};
fetch('https://api.zakya.com/inventory/v1/inventoryadjustments?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("api.zakya.com")
headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" }
conn.request("GET", "/inventory/v1/inventoryadjustments?organization_id=10234695", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
{
"code": 0,
"message": "success",
"inventory_adjustments": [
{
"inventory_adjustment_id": 4815000000044100,
"date": "2015-05-28",
"reason": "Damaged goods",
"reason_id": 4815000000044110,
"description": "Just a sample description.",
"reference_number": "REF-IA-00001",
"adjustment_type": "quantity",
"total": 350
},
{...},
{...}
]
}
Retrieve an item adjustment
Fetches the details for an existing item adjustment.
OAuth Scope : ZakyaAPI.inventoryadjustments.READ
curl --request GET \
--url 'https://api.zakya.com/inventory/v1/inventoryadjustments/4815000000044100?organization_id=10234695' \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
headers_data = Map();
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://api.zakya.com/inventory/v1/inventoryadjustments/4815000000044100?organization_id=10234695"
type: GET
headers: headers_data
connection:
]
info response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.zakya.com/inventory/v1/inventoryadjustments/4815000000044100?organization_id=10234695")
.get()
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
const http = require("https");
const options = {
"method": "GET",
"hostname": "api.zakya.com",
"port": null,
"path": "/inventory/v1/inventoryadjustments/4815000000044100?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();
const options = {
method: 'GET',
headers: {
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
}
};
fetch('https://api.zakya.com/inventory/v1/inventoryadjustments/4815000000044100?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("api.zakya.com")
headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" }
conn.request("GET", "/inventory/v1/inventoryadjustments/4815000000044100?organization_id=10234695", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
{
"code": 0,
"message": "success",
"inventory_adjustment": {
"inventory_adjustment_id": 4815000000044100,
"date": "2015-05-28",
"reason": "Damaged goods",
"reason_id": 4815000000044110,
"description": "Just a sample description.",
"reference_number": "REF-IA-00001",
"adjustment_type": "quantity",
"line_items": [
{
"item_id": 4815000000044100,
"line_item_id": 4815000000044897,
"name": "Laptop-white/15inch/dell",
"description": "Just a sample description.",
"quantity_adjusted": 10,
"item_total": 244,
"unit": "qty",
"is_combo_product": false,
"adjustment_account_id": 4815000000000388,
"adjustment_account_name": "Cost of Goods Sold",
"warehouse_id": 4815000000000390,
"warehouse_name": "MyWarehouse"
}
],
"total": 350
}
}
Delete an item adjustment
Deletes an existing item adjustment from Zakya.
OAuth Scope : ZakyaAPI.inventoryadjustments.DELETE
curl --request DELETE \
--url 'https://api.zakya.com/inventory/v1/inventoryadjustments/4815000000044100?organization_id=10234695' \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
headers_data = Map();
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://api.zakya.com/inventory/v1/inventoryadjustments/4815000000044100?organization_id=10234695"
type: DELETE
headers: headers_data
connection:
]
info response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.zakya.com/inventory/v1/inventoryadjustments/4815000000044100?organization_id=10234695")
.delete(null)
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
const http = require("https");
const options = {
"method": "DELETE",
"hostname": "api.zakya.com",
"port": null,
"path": "/inventory/v1/inventoryadjustments/4815000000044100?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();
const options = {
method: 'DELETE',
headers: {
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
}
};
fetch('https://api.zakya.com/inventory/v1/inventoryadjustments/4815000000044100?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("api.zakya.com")
headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" }
conn.request("DELETE", "/inventory/v1/inventoryadjustments/4815000000044100?organization_id=10234695", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
{
"code": 0,
"message": "Inventory Adjustment(s) has been deleted"
}