GRN Posting API (Gate Entry) (Beta)

Outbound | POST  | {Client’s URL}

Summary

This API will call the channel with GRN details per gate entry wise.

Description

This API will call the channel with GRN information against a gate entry.This API call will be triggered only after the gate entry is closed.

Request

{ "orderCode": "po123", "parentOrderCode": "parent123", "orderType": "PO/STO/RO", "invoiceId": "invoice123", "awbNumber": "awb_01", "externalInvoiceDate": "2020-10-16T20:22:28.000+00:00", "gateEntryCreatedAt": "2020-09-16T20:22:28.000+00:00", "gateEntryId": "gt234", "messageId": 12345, "locationCode": "l123", "partnerCode": "partnerCode", "partnerLocationCode": "partnerLocationCode", "asnCode": "asn1", "generatedAsnId": "genAsn1", "orderItems": [ { "orderItemCode": "oc1", "channelSkuCode": "100005734", "qcPassQuantity": 500, "qcFailQuantity": 2, "orderItemCustomAttributes": { "attribute1": "Value1", "attribute2": "Value2", "attribute3": "Value3", "attribute4": "Value4", "attribute5": "Value5", "attribute6": "Value6", "attribute7": "Value7", "attribute8": "Value8", "attribute9": "Value9", "attribute10": "Value10", "channelMetadata": { "totalCashOnDeliveryFee": 0, "department": "HR", "paymentMethod": "ccavenue", "status": "processing" } } }, { "orderItemCode": null, "channelSkuCode": "100005736", "qcPassQuantity": 498, "qcFailQuantity": 32, "orderItemCustomAttributes": { "attribute1": "Value12", "attribute2": "Value22", "attribute3": "Value32", "attribute4": "Value42", "attribute5": "Value52", "attribute6": "Value62", "attribute7": "Value72", "attribute8": "Value82", "attribute9": "Value92", "attribute10": "Value102" } } ], "orderCustomAttributes": { "attribute1": "Value1", "attribute2": "Value2", "attribute3": "Value3", "attribute4": "Value4", "attribute5": "Value5", "attribute6": "Value6", "attribute7": "Value7", "attribute8": "Value8", "attribute9": "Value9", "attribute10": "Value10", "channelMetadata": { "totalCashOnDeliveryFee": 0, "department": "HR", "paymentMethod": "ccavenue", "status": "processing" }, "currency": "INR" }, "gateEntryLevelBoxSkuDetails": { "boxSkuQtyData": [ { "boxCode": "BOX123", "purpose": "Sample Purpose", "skuQtyDetails": [ { "channelSkuCode": "SKU001", "qcPassQty": 10, "qcFailQty": 2 } ] } ], "missingItems": { "itemDetail": [ { "channelSkuCode": "SKU001", "itemCode": "ITEM123" } ] }, "extraItems": { "itemDetail": [ { "channelSkuCode": "SKU002", "itemCode": "ITEM456" } ] } } }

 

Parameter Name

Data Type

Description

Mandatory

orderCode

String

Unique code used by the channel to identify the order

yes

parentOrderCode

String

Parent Order Code which was passed at the time of Inward Order Creation

yes

orderType

String

Possible value - STO (Stock Transfer Order), PO(Purchase Order), RO(Return Order),

SO, RTV, RPO, OPEN_PO, OPEN_RO

yes

locationCode

String

Code used by channels to identify a warehouse

Yes

invoiceId

String

Unique Id with which the shipment is arrived in the warehouse.

yes

awbNumber

String

Awb Number of the shipment received in the warehouse.

Yes

externalInvoiceDate

String

Time at which order was placed at the channel in UNIX (UTC)

yes

gateEntryCreatedAt

String

Time at which gate entry was created at the channel in UNIX (UTC)

yes

gateEntryId

String

Unique Id used to differentiate a gate entry

yes

messageId

Long

Unique Identifier of a message ( for de-duplication )

Yes

partnerCode

String

This represents the partner from which this inward order came.

If Order is of type PO/STO, this field represents vendor's code

If Order is of type RO, this field represents customer’s code

Yes

partnerLocationCode

String

This represents the partner’s location from which order will come.

If Order is of type PO/STO, this field represents vendor location’s code

If Order is of type RO, this field represents customer location’s code

Yes

asnCode

String

Unique code to identify the corresponding advanced shipment notice(ASN)

No

generatedAsnId

String

Id of the ASN generated

No

orderItems

Object[]

List of items GRNed

yes

orderItems.orderItemCode

String

Code to identify the item in a particular order

No

orderItems.channelSkuCode

String

SKU code of order item

yes

orderItems.qcPassQuantity

Integer

Qc pass quantity inwarded in order

yes

orderItems.qcFailQuantity

Integer

Qc fail quantity inwarded in order

yes

orderItems.orderItemCustomAttributes

Object

Custom attributes for order items

No

orderItemCustomAttributes.attribute1

String

Custom attribute 1

No

orderItemCustomAttributes.attribute2

String

Custom attribute 2

No

orderItemCustomAttributes.attribute3

String

Custom attribute 3

No

orderItemCustomAttributes.attribute4

String

Custom attribute 4

No

orderItemCustomAttributes.attribute5

String

Custom attribute 5

No

orderItemCustomAttributes.attribute6

String

Custom attribute 6

No

orderItemCustomAttributes.attribute7

String

Custom attribute 7

No

orderItemCustomAttributes.attribute8

String

Custom attribute 8

No

orderItemCustomAttributes.attribute9

String

Custom attribute 9

No

orderItemCustomAttributes.attribute10

String

Custom attribute 10

No

orderItemCustomAttributes.channelMetaDat

Object

meta data fields as an object which is to be parsed at the channel’s end

no

orderCustomAttributes

Object

Custom attributes for an order

No

orderCustomAttributes.channelMetaData

Object

meta data fields as an object which is to be parsed at the channel’s end

No

orderCustomAttributes.currency

String

Currency

No

orderCustomAttributes.attribute1

String

Custom attribute 1

No

orderCustomAttributes.attribute2

String

Custom attribute 2

No

orderCustomAttributes.attribute3

String

Custom attribute 3

No

orderCustomAttributes.attribute4

String

Custom attribute 4

No

orderCustomAttributes.attribute5

String

Custom attribute 5

No

orderCustomAttributes.attribute6

String

Custom attribute 6

No

orderCustomAttributes.attribute7

String

Custom attribute 7

No

orderCustomAttributes.attribute8

String

Custom attribute 8

No

orderCustomAttributes.attribute9

String

Custom attribute 9

No

orderCustomAttributes.attribute10

String

Custom attribute 10

No

gateEntryLevelBoxSkuDetails

Object

Box Sku Details at gate entry level

no

gateEntryLevelBoxSkuDetails.boxSkuQtyData

Object

Box Sku Quantity data

no

gateEntryLevelBoxSkuDetails.missingItems

Object

Missing Items

no

gateEntryLevelBoxSkuDetails.extraItems

Object

Extra Items

no

boxSkuQtyData.boxCode

String

Code to uniquely identify a box in a grn

no

boxSkuQtyData.purpose

String

Purpose

no

boxSkuQtyData.skuQtyDetails

Object[]

Details of all skus in a box

no

skuQtyDetails.channelSkuCode

String

Code to uniquely identify an sku on channel

no

skuQtyDetails.qcPassQty

Integer

Qc pass quantity inwarded in order

no

skuQtyDetails.qcFailQty

Integer

Qc fail quantity inwarded in order

no

missingItems.itemDetail

Object[]

Details of all items

no

itemDetail.channelSkuCode

String

Code to uniquely identify an sku on channel

no

itemDetail.itemCode

String

Code to uniquely identify an item

no

extraItems.itemDetail

Object[]

Details of all items

no

itemDetail.channelSkuCode

String

Code to uniquely identify an sku on channel

no

itemDetail.itemCode

String

Code to uniquely identify an item

no

 

Response

{ "hasError":false, "errorMessage":"message" }

HttpStatus : 200