Skip to end of metadata
Go to start of metadata
Introduction
This configuration allows you to specify which documents can be generated from the Store App. Once configured, these documents will be displayed from the printer button (pages without scan) or from the preparation pop-up (page with scan).
Page without scan
By default, “shipment” and “dispatch_note” documents are displayed
Page with scan
By default, “shipment” and “dispatch_note” documents are displayed
Default configuration
Most of the time, it is not necessary to modify these elements as a default configuration exists on most pages. Here are the details.
Page | Documents by default | JSON format |
---|
prepare_select | | Unfold
[
{
"name": "preparation_note",
"existsIf": "documents.preparation_note",
"type": "multi_parcel"
}
]
|
pack or pack_multi | | Unfold
[
{
"name": "shipment",
"existsIf": "shipment.document_id"
},
{
"name": "dispatch_note",
"existsIf": "documents.dispatch_note"
}
]
|
pack_scan | | Unfold
[
{
"name": "shipment",
"existsIf": "shipment.document_id"
},
{
"name": "dispatch_note",
"existsIf": "documents.dispatch_note"
}
]
|
dispatch | shipment dispatch_note manifest
| Unfold
[
{
"name": "shipment",
"existsIf": "shipment.document_id",
"entityType": "parcel"
},
{
"name": "dispatch_note",
"existsIf": "documents.dispatch_note",
"entityType": "parcel"
},
{
"name": "manifest",
"existsIf": "document_id",
"entityType": "shipment_manifest"
}
]
|
bag or bag_multi | | Unfold
[
{
"name": "dispatch_note",
"existsIf": "documents.dispatch_note"
}
]
|
bag_scan | | Unfold
[
{
"name": "dispatch_note",
"existsIf": "documents.dispatch_note"
}
]
|
boxing | | Unfold
[
{
"name": "shipment",
"existsIf": "shipment.document_id"
},
{
"name": "dispatch_note",
"existsIf": "documents.dispatch_note"
}
]
|
customer_search > customer_order | collect_note shipment dispatch_note return_note manifest
| Unfold
[
{
"name": "collect_note",
"existsIf": "documents.collect_note",
"entityType": "order"
},
{
"name": "shipment",
"existsIf": "shipment.document_id",
"entityType": "parcel"
},
{
"name": "dispatch_note",
"existsIf": "documents.dispatch_note",
"entityType": "parcel"
},
{
"name": "return_note",
"existsIf": "documents.return_note",
"entityType": "return_parcel"
},
{
"name": "manifest",
"existsIf": "documents.manifest",
"entityType": "parcel"
}
]
|
Overloading the configuration
You can override the default configuration to add custom documents or delete some of the defaults by going to the Configuration > Store App > Pages > {Page name} > Documents section.
The configuration is an array of objects whose structure is as follows:
name
(mandatory) - Name of the document. Must match the name given in the document template configuration.
existsIf
(mandatory) - Path used to identify whether or not the document has already been generated. If the document is found via the configured path, then a green tick will be displayed and the document will simply be retrieved and not posted again.
entityType
(optional) - Used to identify the entity in which you need to check whether the document has been generated. If not entered, the default value is "parcel"
. Other values can be "return_parcel"
, "order"
or "shipment_manifest"
type
(optional) - Used to indicate whether a custom document is a shipment. Does not need to be configured for a standard "shipment"
but must be configured for "return_shipment"
.
Examples
Here are a few examples of overloads you can reuse.
Adding a custom "gift_message" document on the pack page, while keeping the default ones.
[
{
"existsIf": "shipment.document_id",
"name": "shipment",
},
{
"existsIf": "documents.dispatch_note",
"name": "dispatch_note"
},
{
"existsIf": "documents.gift_message",
"name": "gift_message"
}
]
Adding a "return_shipment" document on the pack page, while keeping the default ones.
[
{
"existsIf": "shipment.document_id",
"name": "shipment",
},
{
"existsIf": "documents.dispatch_note",
"name": "dispatch_note"
},
{
"existsIf": "shipment.return_document_id",
"name": "return_shipment",
"type": "shipment"
}
]
Replacing the default document "dispatch_note" with "collect_note" in the bag page
[
{
"existsIf": "documents.collect_note",
"name": "collect_note"
}
]
Adding the "return_note" document to the returns declaration popin
[
{
"existsIf": "document_id",
"name": "return_note"
}
]