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), create-a-purchase-order-response (3 properties). Each schema is shown below with its type and property counts.

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

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.