Send Shipments
Purchase Order Level
Purchase Orders for your shipment must already exist in our system. In order for us to identify the Purchase Order(s) in your shipment, you must provide back to Spring Systems either our <po_id> (given to you in the initial PO data), or retailer_id, retailer:tp_name, and po_num. Note that po_rel_num, mark_for_location:tp_location_id, and/or mark_for_location:tp_location_code are also mandatory if they are used for a particular PO.
Item Level
Items for your shipment should already exist in our system and in your Purchase Order. In order for us to identify the Items(s), you must provide back to Spring Systems either our:
po_item_id or…..
our product_id or…..
product:product_additional:identifiers:gtin or…..
product:product_additional:vendor_item_num (Must be unique. Only use if you do not have a GTIN.
These items would have been given to you in our initial Purchase Order data.
Trigger outgoing transaction
Please always indicate whether to trigger subsequent outgoing transactions such as sending an Advanced Ship Notice (ASN/EDI856) by passing a value of 1 within the tag: <send_outgoing_transaction_after>
Passing an empty tag will indicate to not trigger subsequent transactions.
Updating a preexisting shipment
If the Spring Systems <ship_info_id> tag is provided and matches an existing shipment then the shipment with that specific id will be updated. If <ship_info_id> is not provided, then a new shipment will be created.
Update carton level
If a carton number is provided, this will update that carton, such as changing the contents or quantity. To remove a carton from a shipment, pass the tag delete_carton_flag with a value of 1 within the ship carton section. This will remove that carton from the shipment. Example:
<ship_carton>
<delete_carton_flag>1</delete_carton_flag>
</ship_carton>
Externally Assigned Carton Numbers
Maintaining the uniqueness ship_carton_number is a critical concept, and especially important for GS1-128 labels and EDI ASN’s (856). External systems that are sending shipment data to PortalApp can provide these numbers or can request PortalApp to generate these numbers for them. If external system will be assigning carton numbers, these fields are mandatory:
ship_carton:ship_carton_number (must NOT include check digit)
ship_carton:warehouse_carton_number
ship_carton:warehouse_carton_number_has_checkdigit
Do not include the check digit when passing ship_carton_number to PortalApp. Failure to properly do this will risk duplication of carton numbers and incorrect labels if a user attempts to re-print labels from PortalApp.
If external system will be assigning carton numbers, PortalApp needs to know exactly what label number was printed on the GS1-128 label and whether this number already includes a check digit.
Third party applications can provide carton numbers to PortalApp (ship_carton_number ) or this could be left blank and PortalApp will generate a carton number. If PortalApp generates the carton number, however, the third party application must store this number as it will be mandatory for processing a carton update or delete procedure.
For more detail refer to Appendix.
Request Shipping Documents
This endpoint can also be used to request shipping documents from Spring Systems. See “Appendix I – Auto Delivery of Shipping Documents” for more information.
Merging Multiple Shipments into One ASN
The PortalApp frontend has the ability to select multiple shipments and merge them into a single shipment. The correct approach is generally to send one shipment (ASN) to summarize an entire shipment. Specifically if many orders or stores(mark-for locations) are shipped together, they should be sent all as one ASN. This is critical as some retailers go a step further and require this approach and will assess penalties if done incorrectly. (NOTE: similarly PortalApp can also do the inverse and explode or split shipments).
This ability to merge is also available for automated or integrated setups. Please contact your project manager or email support us to turn feathure on. Specifically we must disable the automatic and instant sending of completed shipments (ASN's) to your retailer, and instead let them gather for a period. We will then set up a schedule to merge together like shipments that are in this hold status. Important note, shipments will only be merged if they share the same ship to location and BOL / Tracking #.
