How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Zoho Inventory Purchase Orders API

PurchaseOrders Module

Zoho Inventory Purchase Orders API is one of 37 APIs that Zoho Inventory publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

This API exposes 1 JSON Schema definition.

Tagged areas include Purchase Orders. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, and 1 JSON Schema.

This API exposes 13 operations across 10 paths, and defines 145 schemas. It is described by OpenAPI 3.2.0, at version 1.0.0.

Requests are made against a single base URL, https://www.zohoapis.com/inventory/v1.

13 operations 10 paths 145 schemas 1 DELETE2 GET9 POST1 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
1.0.0
Base URL
https://www.zohoapis.com/inventory/v1
Authentication
OAuth 2.0
Resource Areas
1

Authentication & Security 1

Zoho Inventory Purchase Orders API declares 1 security scheme for authenticating requests. It supports OAuth 2.0 (Zoho_Auth) using the implicit flow, exposing 4 scopes.

Paths & Operations 13

Across 10 paths, the API surfaces 13 operations — 1 DELETE, 2 GET, 9 POST, 1 PUT. Each is listed below with its method, path, parameters, and response codes.

Purchase Orders 13

PurchaseOrders Module

POST
/purchaseorders
Create a Purchase Order
create_purchase_order 2 params body → 201
GET
/purchaseorders
List all Purchase Orders
list_purchase_orders 3 params → 200
GET
/purchaseorders/{purchaseorder_id}
Retrieve a Purchase Order
get_purchase_order 2 params → 200
PUT
/purchaseorders/{purchaseorder_id}
Update a Purchase Order
update_purchase_order 3 params body → 200
DELETE
/purchaseorders/{purchaseorder_id}
Delete a Purchase Order
delete_purchase_order 2 params → 200
POST
/purchaseorders/{purchaseorder_id}/status/issued
Mark as Issued
mark_purchase_order_as_issued 2 params → 200
POST
/purchaseorders/{purchaseorder_id}/status/cancelled
Mark as Cancelled
mark_purchase_order_as_cancelled 2 params → 200
POST
/purchaseorders/{purchaseorder_id}/submit
Submit a purchase order for approval
submit_purchaseorder 2 params → 200
POST
/purchaseorders/{purchaseorder_id}/approve
Approve a purchase order
approve_purchaseorder 2 params → 200
POST
/purchaseorders/{purchaseorder_id}/reject
Reject a purchase order
reject_purchaseorder 2 params body → 200
POST
/purchaseorders/{purchaseorder_id}/approve/final
Final-approve a purchase order
final_approve_purchaseorder 2 params → 200
POST
/purchaseorders/submit
Bulk submit purchase orders for approval
bulk_submit_purchaseorders 2 params → 200
POST
/purchaseorders/approve
Bulk approve purchase orders
bulk_approve_purchaseorders 2 params → 200

Schemas 145

The contract defines 145 schemas that model the data the API accepts and returns. The most detailed are purchase_order-response (62 properties), create-a-purchase-order-request (27 properties), update-a-purchase-order-request (23 properties), update-a-purchase-order-response (3 properties). Each schema is shown below with its type and property counts.

tds_tax_id
string
Unique identifier of the tds tax
is_drop_shipment
boolean
Default is FALSE , in case of drop shipment value must be TRUE .
tax_percentage
number
Percentage of the tax.
item_order
integer
The order of the line items, starts from 0 by default.
unit
string
Unit of line item.
tax_treatment
string
VAT treatment for the purchase order. Choose whether the vendor falls under: homecountrymexico , borderregionmexico , nonmexico supported only for MX .
item_id
string
Unique ID generated by the server for the item. This is used as an identifier.
name
string
Name of the line item.
quantity_received
number
Quantity invoiced of the line item.
communication_preference
object
Preferred modes of communication for the contact person at transaction level.
2 properties
mark-as-cancelled-response
object
2 properties
contact_person_id
string
Unique ID of the Contact Person
reverse_charge_tax_id
string
Enter reverse charge tax ID
first_name
string
First Name of the Contact Person.
fax
string
Fax number of the customer's billing address.
is_whatsapp_enabled
boolean
Used to check if WhatsApp communication preference is enabled for the contact person at transaction level.
line_items
array
List of line items in a purchase order
delivery_date_formatted
string
Indicates the delivery date format.
bills
array
Bills raised for purchase order. Each bill contains these fields: billid , billnumber , status , date , duedate , total , balance .
is_inclusive_tax
boolean
This indicates whether the tax is inclusive or not.
item_total
number
Total of line item.
receive_number
string
Number of the Purchase Receive.
time
string
Indicates the time when the action was performed
attention
string
Name of the person, whose attention is required.
quantity
number
Quantity of the line item.
file_size
integer
this indicates the size of the attached file.
ship_via
string
Shipping method for the Purchase Order.
purchasereceives
array
Purchase receives for purchase order. Each Recieve contains- receiveid , receivenumber , date and note .
sub_total
number
Sub total of the Purchase Order.
template_type
string
Type of Template used to create Purchase Order.
reverse_charge_tax_percentage
number
Enter reverse charge tax percentage
last_name
string
Last Name of the Contact Person.
taxes
array
Number of taxes applied on the Purchase Order. Each tax contains: taxname and taxamount .
label
string
Label of the Custom Field
is_backorder
boolean
This indicates whether it is a Back order or not.
source_of_supply
string
Place from where the goods/services are supplied. (If not given, place of contact given for the contact will be taken)
transaction_id
string
Unique ID generated by the server for the transaction. This is used as an identifier.
salesorder_id
string
Sales Order ID, in case of Drop Shipment.
receive_id
string
Unique ID generated by the server for the Purchase Receive. This is used as identifier.
custom_fields
array
Custom fields for a purchaseorder.
update-a-purchase-order-response
object
3 properties
exchange_rate
number
Exchange rate of the currency, with respect to the base currency.
balance
number
Balance amount for the Bill.
create-a-purchase-order-request
object
27 properties 3 required
salesorder_item_id
string
Unique ID generated by the server for each line item in a sales order. This is used for creating backorder or dropshipment
tax_exemption_code
string
Code of the Tax Exemption
delivery_customer_id
string
Customer ID for delivery address
billing_address
array
Customer's billing address. It contains - address , city , state , zip , country and fax .
list-all-purchase-orders-response
object
3 properties
attachment_name
string
Name of attached file with Purchase Order.
description
string
Description of the line item.
status
string
Status of Purchase Order.
city
string
Name of the city of the customer's billing address.
gst_no
string
15 digit GST identification number of the vendor.
location_name
string
Name of the location
purchaseorder_id
string
Unique ID generated by the server for the Purchase Order.
template_id
string
Unique ID generated by the server for the Template. This is used as an identifier.
operation_type
string
Type of operation performed
terms
string
Terms for the Purchase Order.
hsn_or_sac
string
HSN or SAC Code for the Item
status_formatted
string
Indicates the Format of the status.
date_description
string
Indicates the time duration since the action was performed
create-a-purchase-order-response
object
3 properties
reverse_charge_tax_name
string
Enter reverse charge tax name
retrieve-a-purchase-order-response
object
3 properties
reference_number
string
Reference number of purchase order.
is_emailed
boolean
Checks whether the purchase order has been emailed or not.
file_name
string
This indicates the name of the file.
gst_treatment
string
Choose whether the contact is GST registered/unregistered/consumer/overseas. Allowed values are businessgst , businessnone , overseas , consumer .
can_send_in_mail
boolean
Checks whether it can be sent in a mail or not.
due_date
string
Due date of the Bill.
total
number
Total amount of the Purchase Order.
is_pre_gst
boolean
Applicable for transactions that fall before july 1, 2017
delivery_address
array
Customer's delivery address. It contains - address , city , state , zip , country and fax .
file_type
string
This indicates the type of the file.
tax_name
string
Name of the tax applied on the line item.
documents
array
Purchase order can have files attached to them. Each attachment has the following attributes cansendinmail , filename , filetype , filesizeformatted , attachme…
update-a-purchase-order-request
object
23 properties 3 required
notes
string
Notes for the Purchase Order.
template_name
string
Name of the template used for the Purchase Order.
document_id
string
Unique ID generated by the server for the document. This is used as an identifier.
country
string
Name of the country of the customer's billing address.
tax_type
string
Denotes the type of the tax. This can either be a single tax or a tax group.
comment_id
string
Unique ID generated by the server for the comment(history). This is used as an identifier.
image_name
string
Name of the image of the line item.
created_time
string
Time at which the Purchase Order was created.
delete-a-purchase-order-response
object
2 properties
currency_code
string
Currency code.
pricebook_id
string
Unique ID generated by the server for the Pricebook. This is used as an identifier.
item_custom_fields
array
List of custom fields associated with the line item
file_size_formatted
string
This indicates the size of the formatted file.
bill_number
string
Bill number of Purchase Order.
bcy_rate
number
Item rate in the organization's base currency.
address
string
Name of the street of the customer's billing address.
line_item_id
string
Unique ID generated by the server for each line item. This is used as an identifier.
date_formatted
string
Indicates the date format.
ship_via_id
string
Unique ID generated by the server. This is used as identifier.
reverse_charge_tax_amount
number
Tax amount for the reverse charge.
contact_person_email
string
Email ID of the Contact Person.
approval-action-response
object
2 properties
tax_exemption_id
string
ID of the Tax Exemption
price_precision
integer
The precision level for the price's decimal point in a Purchase Order.
location_id
string
Location ID
commented_by
string
Indicates the User who performed the action on the purchase oder
tax_id
string
Unique ID generated by the server for the tax. This is used as an identifier.
zip
string
Zip code of the customer's billing address.
comment_type
string
Indicates the type of the action
purchase_rate
number
Purchase Price of the line item.
contact_person_name
string
Name of the Contact Person
image_type
string
The type (file format) of the image.
vendor_name
string
Name of the vendor.
tax_amount
number
Amount of the tax.
reject-request
object
1 property
purchaseorder_number
string
Purchase Order number.
delivery_date
string
Date of delivery of the product.
account_id
string
Account ID of the item.
mark-as-issued-response
object
2 properties
tax_total
number
Tax total of the Purchase Order.
value
string
Value of the Custom Field
last_modified_time
string
Time at which the Purchase Order details were last modified.
destination_of_supply
string
Place where the goods/services are supplied to. (If not given, organisation's home state will be taken)
expected_delivery_date
string
Expected date of delivery for the items ordered.
sub_total_formatted
string
Format of the sub total.
bill_id
string
Unique ID generated by the server. This is used as identifier.
state
string
Name of the state of the customer's billing address.
delivery_customer_name
string
Customer's name at the delivery address.
is_reverse_charge_applied
boolean
Applicable for transactions where you pay reverse charge
comments
array
History related to the purchase order.
contact_persons_associated_payload
array
Contact Persons associated with the transaction.
contact_persons_associated
array
Contact Persons associated with the transaction.
expected_delivery_date_formatted
string
Indicates the date format.
currency_symbol
string
The symbol for the selected currency.
image_id
number
Unique ID generated by the server for the item image. This is used an identifier.
currency_id
string
Unique ID generated by the server for the currency. This is used as an identifier.
attachment_order
integer
This indicates the chronological number of the attachment.
phone
string
Phone Number of the Contact Person.
mobile
string
Mobile Number of the Contact Person.
billed_status
integer
Indiacates the Status of the bill.
delivery_org_address_id
string
Unique ID generated by the server. This is used as identifier.
customfield_id
string
Unique ID of the custom field.
is_email_enabled
boolean
Used to check if Email communication preference is enabled for the contact person at transaction level.
date
string
Date of Purchase Order
transaction_type
string
Indicates the type of the transaction.
vendor_id
string
Unique ID generated by the server for the vendor.
purchase_order-response
object
62 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

zoho-inventory-purchase-orders-api-openapi.yml Raw ↑

Other APIs Zoho Inventory publishes across the network.

Zoho Inventory Batches API
Zoho Inventory Bills API
Zoho Inventory Compositeitems API
Zoho Inventory Contact Persons API
Zoho Inventory Contacts API
Zoho Inventory Credit Notes API
Zoho Inventory Currency API
Zoho Inventory Customer Payments API
Zoho Inventory Delivery Challans API
Zoho Inventory Inventoryadjustments API
Zoho Inventory Invoices API
Zoho Inventory Items API
Where this information came from

This is an independent, third-party profile of Zoho Inventory Purchase Orders API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.