Scope erp.procurement.purchase_orders:read · the client's role needs view on Purchase Orders
Parameters
Name
In
Type
Notes
id *
path
integer (int64)
The record's id.
Response (200) — data
Field
Type
Notes
id
integer (int64)
poNum
string
vendorId
integer (int64)
vendorName
string
vendorCode
string
vendorPhone
string
vendorWhatsapp
string
vendorEmail
string
vendorAddress
string
vendorGstin
string
vendorTermsConditions
string
poDate
string (date)
deliveryDate
string (date)
dueDate
string (date)
shipTo
string
shipToLabel
string
shipToType
string
shipLocation
string
referenceNo
string
orderMode
string
poCategory
string
processDefinitionId
integer (int64)
processName
string
sourceRefType
string
sourceRefId
integer (int64)
sourceRefIds
array of integer (int64)
sourceLabels
array of string
shippingMethod
string
shippingTerms
string
incoterms
string
carrier
string
paymentTerms
string
currency
string
advancePct
number
notes
string
status
string
subTotal
number
totalDiscount
number
netAmount
number
totalGst
number
…70 more fields — see the OpenAPI file.
Errors: 400, 401, 403, 404, 405, 429, 500 — every error says how to fix it; see error codes and troubleshooting.
Example
# KERN ERP — Get one purchase order with lines
curl -X GET "https://kronex.codeverse.co/cedge/public/v1/procurement/purchase-orders/{id}" \
-H "Authorization: Bearer $KERN_API_KEY"
PUT/public/v1/procurement/purchase-orders/{id}
Update a draft or rejected purchase order
Scope erp.procurement.purchase_orders:write · the client's role needs edit on Purchase Orders · send an Idempotency-Key
Parameters
Name
In
Type
Notes
id *
path
integer (int64)
The record's id.
Idempotency-Key *
header
string
Any unique text up to 120 characters (e.g. a UUID). A retry with the same key and body returns the first answer instead of doing the work twice.
Request body
Field
Type
Notes
vendorId
integer (int64)
vendorName
string
vendorCode
string
vendorPhone
string
vendorWhatsapp
string
vendorEmail
string
poDate
string (date)
deliveryDate
string (date)
shipTo
string
shipToLabel
string
shipToType
string
shipLocation
string
referenceNo
string
orderMode
string
poCategory
string
processDefinitionId
integer (int64)
processName
string
sourceRefType
string
sourceRefId
integer (int64)
sourceRefIds
array of integer (int64)
shippingMethod
string
shippingTerms
string
incoterms
string
carrier
string
paymentTerms
string
currency
string
advancePct
number
dueDate
string (date)
notes
string
sourceProdOrderId
integer (int64)
sourceStyleId
integer (int64)
cf1
string
cf2
string
cf3
string
cf4
string
cf5
string
lines
array of object
rmType *
string
rmRefId *
integer (int64)
productionOrderId
integer (int64)
…9 more fields — see the OpenAPI file.
Response (200) — data
Field
Type
Notes
id
integer (int64)
poNum
string
vendorId
integer (int64)
vendorName
string
vendorCode
string
vendorPhone
string
vendorWhatsapp
string
vendorEmail
string
vendorAddress
string
vendorGstin
string
vendorTermsConditions
string
poDate
string (date)
deliveryDate
string (date)
dueDate
string (date)
shipTo
string
shipToLabel
string
shipToType
string
shipLocation
string
referenceNo
string
orderMode
string
poCategory
string
processDefinitionId
integer (int64)
processName
string
sourceRefType
string
sourceRefId
integer (int64)
sourceRefIds
array of integer (int64)
sourceLabels
array of string
shippingMethod
string
shippingTerms
string
incoterms
string
carrier
string
paymentTerms
string
currency
string
advancePct
number
notes
string
status
string
subTotal
number
totalDiscount
number
netAmount
number
totalGst
number
…70 more fields — see the OpenAPI file.
Errors: 400, 401, 403, 404, 405, 409, 413, 422, 429, 500 — every error says how to fix it; see error codes and troubleshooting.
Example
# KERN ERP — Update a draft or rejected purchase order
curl -X PUT "https://kronex.codeverse.co/cedge/public/v1/procurement/purchase-orders/{id}" \
-H "Authorization: Bearer $KERN_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{ … }'
Scope erp.procurement.grns:read · the client's role needs view on PO Receipts (GRN)
Parameters
Name
In
Type
Notes
id *
path
integer (int64)
The record's id.
Response (200) — data
Field
Type
Notes
id
integer (int64)
grnNum
string
grnDate
string (date)
mode
string
warehouseId
integer (int64)
warehouseName
string
internalRef
string
dcNum
string
invoiceNum
string
carrier
string
tolerancePct
number
vendorId
integer (int64)
vendorName
string
vendorPhone
string
vendorWhatsapp
string
vendorEmail
string
vendorAddress
string
vendorGstin
string
status
string
guidance
object
nextActions
array of object
blockers
array of object
excessReason
string
transportCost
number
transportGstPct
number
transportGstAmt
number
additionalCost
number
additionalGstPct
number
additionalGstAmt
number
grandTotal
number
closeReason
string
closedBy
integer (int64)
closedAt
string (date-time)
createdBy
integer (int64)
postedAt
string (date-time)
createdAt
string (date-time)
updatedAt
string (date-time)
lotTracking
boolean
invoiceApprovalStatus
string
invoiceApprovedAt
string (date-time)
…41 more fields — see the OpenAPI file.
Errors: 400, 401, 403, 404, 405, 429, 500 — every error says how to fix it; see error codes and troubleshooting.
Example
# KERN ERP — Get one GRN with lines
curl -X GET "https://kronex.codeverse.co/cedge/public/v1/procurement/grns/{id}" \
-H "Authorization: Bearer $KERN_API_KEY"
GET/public/v1/procurement/grns/receivable-pos
Purchase orders that can be received
Scope erp.procurement.grns:read · the client's role needs view on PO Receipts (GRN)
Response (200) — data
Field
Type
Notes
poId
integer (int64)
poNo
string
poCreationDate
string (date)
vendorName
string
companyLocationName
string
shipToType
string
shipToLabel
string
poDeliveryDate
string (date)
grnCount
integer (int32)
grnNos
array of string
grns
array of object
id
integer (int64)
grnNo
string
receivedDate
string (date)
pendingApprovalCount
integer (int32)
acknowledged
boolean
lastAcknowledgedAt
string (date-time)
lastAcknowledgedByName
string
lines
array of object
poLineId
integer (int64)
rmType
string
rmLabel
string
productNo
string
countValue
string
width
number
gsm
number
millVendorName
string
lotNo
string
poQty
number
uom
string
unitPrice
number
allowancePct
number
receivedSoFar
number
maxReceivableNow
number
approvedSoFar
number
closureType
string
closedAt
string (date-time)
Errors: 400, 401, 403, 404, 405, 429, 500 — every error says how to fix it; see error codes and troubleshooting.
Example
# KERN ERP — Purchase orders that can be received
curl -X GET "https://kronex.codeverse.co/cedge/public/v1/procurement/grns/receivable-pos?page=0&size=20" \
-H "Authorization: Bearer $KERN_API_KEY"
PATCH/public/v1/procurement/grns/{id}/post
Post a GRN (adds the stock)
Scope erp.procurement.grns:write · the client's role needs edit on PO Receipts (GRN) · send an Idempotency-Key
Parameters
Name
In
Type
Notes
id *
path
integer (int64)
The record's id.
Idempotency-Key *
header
string
Any unique text up to 120 characters (e.g. a UUID). A retry with the same key and body returns the first answer instead of doing the work twice.
Response (200) — data
Field
Type
Notes
id
integer (int64)
grnNum
string
grnDate
string (date)
mode
string
warehouseId
integer (int64)
warehouseName
string
internalRef
string
dcNum
string
invoiceNum
string
carrier
string
tolerancePct
number
vendorId
integer (int64)
vendorName
string
vendorPhone
string
vendorWhatsapp
string
vendorEmail
string
vendorAddress
string
vendorGstin
string
status
string
guidance
object
nextActions
array of object
blockers
array of object
excessReason
string
transportCost
number
transportGstPct
number
transportGstAmt
number
additionalCost
number
additionalGstPct
number
additionalGstAmt
number
grandTotal
number
closeReason
string
closedBy
integer (int64)
closedAt
string (date-time)
createdBy
integer (int64)
postedAt
string (date-time)
createdAt
string (date-time)
updatedAt
string (date-time)
lotTracking
boolean
invoiceApprovalStatus
string
invoiceApprovedAt
string (date-time)
…41 more fields — see the OpenAPI file.
Errors: 400, 401, 403, 404, 405, 409, 413, 422, 429, 500 — every error says how to fix it; see error codes and troubleshooting.
Example
# KERN ERP — Post a GRN (adds the stock)
curl -X PATCH "https://kronex.codeverse.co/cedge/public/v1/procurement/grns/{id}/post" \
-H "Authorization: Bearer $KERN_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json"