Project-A - Import - Shipment Level Underbond (Trigger to TCS)

This is an item spin off from Feature 5644070: Project-A - Import - Brokerage Cargo Reports (Manual and Automatic) per Citadel request as it does not directly relate to BCRs. A. Problem Statement / Objective The Feature mainly covers how the system must have the ability to send a message to TCS containing all details required to trigger an underbond submission. B. Feature Benefit Hypothesis The completion of this feature will refrain the user from having to swivel through different platforms to submit and obtain approvals for shipment movements via underbond. C. Business Process 1. The order of any changes specified in these items must be followed. 2. A shipment BCR that requires an underbond movement request must have the same destination port as the destination site (i.e. S77G bond, S15 wharf). a. Any shipment that does not move as free goods (this means the shipment does not have clear status) can only be moved from and to a Customs-controlled site. b. Validate from the Customs reference file that the BCR has the corresponding destination port for the new destination establishment code. Shipment ABC arrives AU with origin SGSIN and destination AUMEL. Importer confirms the goods are spares parts for a grounded yacht that is docked in Gladstone, QLD with wharf code GJ16P. IMPORTANT NOTE → If a destination establishment code is a Customs Contingency Code, user is required to have permission in writing from Customs to use the establishment code. Permission is required each time a Customs Contingency Code is used. Customs does not issue standing permissions. c. As required, the BCR destination has to be amended. Following the above example, AUMEL must be changed to AUGLT. This BCR amendment has to be communicated to TPS. Unless the BCR amendment is accepted by TPS, we cannot proceed. 3. Send a message to TCS containing the details of a shipment level underbond request and have TCS trigger an underbond request submission to TPS. What details to send need TCS alignment. The three establishment IDs By default, Discharge is Originating (almost always) Request Reason Mode of Movement Overseas Destination – only required if Reason is TSH If the MAWB is part shipment, user has to provide Flight No (usually same as the assigned flight number but can be different), Arrival Date, Pieces 4. The system must have the ability to receive status updates from TCS for this underbond submission. Any rejection or error messages received must be made visible to the user. D. Business Value This functionality is to cater to circumstances where import shipments require movement to different sites to proceed with the clearance process or where movement is mandated by OGA. E. Scope In Scope BCR Amendment and approval beforehand to allow underbond submission Sending underbond details to TCS to trigger an underbond submission Status Visibility Out of Scope Shipment Level Underbond Submission (TCS Function)

Input documents:

title: CBF - Underbond Process Document
content: An Underbond Movement Request (UBMR)—systemically known as a MSG-UBR—is an application made under Section 71E of the Customs Act 1901. It allows the movement of imported goods that are still subject to customs control (i.e., duty and taxes have not yet been paid, and they have not been cleared for home consumption) between licensed, customs-controlled premises.
1. Acceptable Reasons for Underbond Movement
Underbond movements cannot be used arbitrarily. When lodging a UBMR in the Trade Processing System (TPS), the applicant must specify one of the following approved reason codes:
DCL (Deconsolidation): Moving consolidated cargo to a Section 77G depot to be unpacked into individual consignments.
DEL (Delivery): Moving imported cargo once to a place for final delivery after an Authority to Deal (ATD) is granted. (Note: Once a DEL is submitted, no other UBMRs are accepted).
MOV (Movement): Moving imported cargo between licensed establishments, but not for unpacking.
TSH (Transhipment): Moving imported cargo destined for movement out of Australia (requires an overseas destination port code).
TUW (Time-Up Goods): Moving goods that have not been delivered or claimed within a specified period from a depot to a Section 79 warehouse.
AQS (Agriculture/Quarantine): Movements directed to a licensed Department of Agriculture, Fisheries and Forestry (DAFF) premises for quarantine and biosecurity screening.
2. Who Can Lodge a Request?
A UBMR can be communicated electronically via the TPS by:
The vessel or aircraft operator (or their principal agent).
The cargo owner.
The current or intended custodian of the cargo (e.g., a stevedore, CTO, or depot).
The cargo reporter.
A licensed customs broker (specifically for transhipment purposes).
3. Prerequisites for Approval
Before the CBF's system will approve a UBMR, several strict conditions must be met:
Cargo Report Lodged: The associated air or sea cargo report must already be successfully lodged in the TPS.
Screening Period Expired: The mandatory security and risk screening period for the cargo must have elapsed.
Licensed Premises: Both the "Originating Establishment" (where the goods are) and the "Destination Establishment" (where the goods are going) must hold valid, corresponding CBF licenses (e.g., s15 Wharf, Air CTO, s77G Depot).
Matching Data: Data such as the Ocean Bill of Lading, Master/House Air Waybills, and voyage/flight numbers must match the original cargo report perfectly.
4. The Request and Approval Process (Step-by-Step)
Step 1: Lodgement of the MSG-UBR
The applicant logs into the TPS (or uses their integrated third-party logistics software) and submits the MSG-UBR. The submission must include:
Mode of transport (Air, Sea, Road, or Rail).
Originating, Discharge, and Destination Establishment IDs.
Bill of Lading (Sea) or Air Waybill (Air) numbers.
Cargo type (e.g., FCL for Full Container Load, LCL, Break Bulk).
The valid Reason Code (e.g., DCL, MOV).
Step 2: System Assessment
The TPS automatically evaluates the request against business rules. It checks for holds, matches the establishment IDs against the active license registry, and verifies that the cargo hasn't already been moved or seized by the CBF or DAFF.
Step 3: Approval (MSG-UBRR) or Rejection (MSG-UBRE)
Approval: If the checks pass, the TPS issues an Underbond Movement Request Response (MSG-UBRR) granting authorization.
Rejection: If the data is mismatched or the cargo is held, the system generates an error message (MSG-UBRE), and the cargo cannot be legally moved.
Step 4: Physical Movement of Goods
Once approved, the cargo can be physically transported. Crucial Compliance Note: The goods must travel directly to the nominated licensed establishment. Temporary storage in unauthorized transit yards, private premises, or unapproved alternate warehouses is a strict liability offense under the Customs Act 1901, potentially resulting in heavy fines or forfeiture of the goods.
Step 5: Acquittal (The Outturn Report)
An underbond movement is not complete until it is "acquitted." When the goods arrive at the destination establishment, the operator of that facility must submit an Outturn Report to the CBF within specific statutory timeframes (under section 64ABAB of the Act). This report verifies physical receipt of the cargo and closes the loop on the movement.
5. Managing Exceptions
Amendments / Withdrawals: If circumstances change before the goods move, the UBMR must be withdrawn. If the goods are in transit and require a new destination, the UBMR must be amended in the TPS.
Authority to Deal (ATD) Issued in Transit: If an ATD (customs clearance) is officially granted while the goods are physically in transit on an underbond movement, the goods may then be delivered directly into home consumption without needing to complete the route to the underbond facility.
TPS Outages (Contingency): If the TPS goes down, the CBF has a manual BCP (Business Continuity Plan) process where applicants download a specific contingency spreadsheet, fill in the underbond details, and email it to ICSBCP@customs.gov.au for manual CBF approval.

title: Underbond Movement Requirement Document - Epic Summary
content: Epic Summary
Underbond Movement Requirement Document
Purpose This document defines the intent, context, rules, and structured requirements, validate, and process Underbond Movement Requests (UBMR) within a customs-controlled logistics environment.
Business Context An Underbond Movement Request (UBMR) enables the transfer of imported goods that remain under customs control (i.e., duties/taxes unpaid and not cleared for home consumption) between licensed premises. These movements are regulated and must comply with customs laws, licensing constraints, and system validations enforced via the Trade Processing System (TPS).
Actors / Stakeholders Following are the actors: • Vessel or aircraft operators • Cargo owners • Custodians (e.g., depots, terminals) • Cargo reporters • Licensed customs brokers
Core Concepts 5.1 Underbond Movement Movement of goods under customs control between licensed establishments without duty payment. 5.2 Licensed Establishments Locations approved by customs authorities to handle bonded cargo. 5.3 Acquittal Final confirmation that goods have reached their destination and the movement is completed.
Valid Movement Reasons (Business Rules) Must enforce selection of valid reason codes: • DCL: Deconsolidation • DEL: Final delivery (one-time movement only) • MOV: General movement between licensed locations • TSH: Transhipment (requires overseas destination) • TUW: Time-up goods transfer to warehouse • AQS: Quarantine/Biosecurity movement
Preconditions (Validation Layer) Must validate the following before submission:
Cargo report exists in system.
Mandatory screening period is complete.
Origin and destination are valid licensed establishments.
All shipment identifiers match exactly: • Bill of Lading • Air Waybill • Voyage/Flight number
Cargo is not: • On hold • Seized • Already moved
Input Data Requirements Must ensure mandatory collection and validation of: • Transport mode (Air/Sea/Road/Rail) • Origin establishment ID • Discharge establishment ID • Destination establishment ID • Bill of Lading / Air Waybill • Cargo type (FCL/LCL/Break Bulk) • Reason code
Process Flow Step 1: Request Creation Assists user in preparing UBMR. Step 2: Validation Validates all business rules and prerequisites. Step 3: Submission Request submitted to TPS. Step 4: System Response Handling • If approved: • Capture authorization • Notify stakeholders • If rejected: • Parse error • Recommend corrective actions
Summary Additional documents are also uploaded for synthesis which includes Process flow Docs, Integration with TCS (Hub Management System) via Entry packet data from SBSS to TCS (Hub Management System) for the Underbond Request at a shipment level, CP (Customs Payload), UI Screens for Underbond request that is to be used from SBSS application by the Requestor.
Intent
The epic addresses the inefficiencies and usability issues present in the Shipment Underbond Request process within logistics and customs management systems. It seeks to streamline data entry workflows, improve form design and validation, and enhance integration with backend systems for seamless compliance and tracking. The goal is to provide a user-friendly interface and robust backend support, benefiting logistics operators, compliance officers, and system users.
Context
The Shipment Underbond process is critical for managing bonded shipments and ensuring regulatory compliance. Current systems involve interfaces like the SBSS application, which supports data input for shipments, bond requests, and customs declarations. Challenges identified include cluttered UIs, lack of validation feedback, and minimal user guidance. Integration with systems like the Universal Data Bank Engine (UDBE) provides a scalable, reliable framework to handle complex workflows, guarantee data fidelity, and achieve operational efficiency while adhering to governance standards like GDPR.
Key Entities
Shipment Level Under Bond Request Form
SBSS Interface - AU
Universal Data Bank Engine (UDBE)
OEM Client ID
Origin/Destination/Discharge Establishment IDs
Mode of Movement
Customs Compliance Processes
Dynamic Data Validation
GDPR Compliance
Database Integration and APIs
Dropdown Menu Optimization

title: TCS Integration - Shipment Level UDB Process Flow
content: If Origin Establishment ID(OED) =
Destination Establishment ID (DED)
No
Start
Types of Shipments
Shipment Level Under
TRANSHIPMENT
1)Mis-Sor
2) SSI Shipm
3) BYP-RTO Sh
4) RTS Shipm
SHIP SPARE
Where Destinat
Discharge Port is
Overseas Destina
(TODP) is no
Yes
END
SBSS 
UBMR
Request
Form in
SBSS
Details Loaded
into CP message
- Trigger when
TCS=RDY
BSIS
Processing
TCS
Captu
Underbond Statuses :  Blank-->REQ-->SNT, Comments : BTH :  Underbond 
TCS End
Underbond Status - Response from Customs :  : APP / REJ  Comments : H
TCS
Capture
TPS
Check BCR
Amendment
Yes
No
UBMR
Approved
UBMR Rejected

END
Shipment
Level
Underbond
Creation
Request 
s Requiring
rbond Request 
TS  LIKE :
rts
ments
ipments
ments
ES : 
tion and
s AU but
ation Port
ot AU 
S
ure
Requested
TB :  Underbond Request Approved / Rejected
TCS
Capture
REPORT_STATUS
message
SBSS Shpmt
Brokerage
Status & Value
Updated


Start
SBSS Shipment Custom Action 
     -->MultiMAWB Screen 
OR 
SBSS Shipment Custom
Action
--->Underbond Request
11 Parameters required to be sent to TCS via
CP message for Underbond creation : 
- Populate Shipment Data from Shipment.
- Load Selection of Origin Establishment ID
- Load Selection of Destination Establishment ID
- Input Discharge Port ID
- Load UBMR Request Reason Dropdown
selection 
CLICK ON SUBMIT
Click on : Create
Underbond Request
--->Redirect to Popup
Load CP message containing UDB
request  : SBSS to BSIS when TCS=RDY 
Update UDB statuses at Package
level for the shipment on new UI
screen. 
UDB statuses : 
REQ-->SNT-->APP/REJ
BSIS---->TCS--->TPS ( Approves only
when BCR Amendment is Approved prior)
TCS sends back
REPORT_STATUS
message with UDB
status for the shipment
End



User stories:

title: LOP - Project-A - Import - Shipment Level Under bond (Trigger to TCS)
description: Create LOP - Project-A - Import - Shipment Level Under bond (Trigger to TCS)
acceptance_criteria: Create LOP diagram in Visio for Project-A - Import - Shipment Level Under bond (Trigger to TCS) Create Test Strategy Task 6792141: Architectural Assessment Feature flag: 6166127.underbond.trigger

title: Development of Popup on UI for Underbond Request Creation-Data selection and SAVE
description: This story is written to develop the UI form design for the popup that gets displayed upon Custom Action "Create Underbond Request for Shipment"
acceptance_criteria: As a SBSS user, When I open a SBSS shipment and go to Custom Actions, I can see an option in the list called Create Shipment Underbond Request. 3, I click on this and I am redirected to a new Popup Screen that enables me to save the parameters required to be submitted for that shipment to create and get an Under bond request approved by TCS and TPS. :- 4. List of fields in the form : OEM Client ID : This is autofilled by the system : Same as Declarant ID: SBSS Admin>User Profle>Manage Users>References>DIC >Number Origin Establishment ID : Default value: ----select--- ( dropdown) Declaration Customs> Customs Codes-->OED Request Reason : Default value: MOV(Other Movement) (dropdown to select any other) Declaration Customs>Customs Codes>RQR> Value Destination Establishment ID : Default value: ----select--- ( dropdown) Declaration Customs> Customs Code> DED Discharge Establishment ID : Auto-populated from Origin Establishment ID selection. However, dropdown also enabled for "on change" Declaration Customs> Customs Codes> DEI Mode of Movement : ​Default Value: ROA (Road) --- (dropdown enabled) Declaration >Customs>Customs Codes> MVM >value Trans shipment Destination Overseas Port : Manual entry Map to Shipment>Reference> TODP> Number ( Ctrycode + Port code) Eg: MYKUL, IDJHR Unique Consignment Reference number : (Autofill) Map from Declaration-->Customs> References> UCN>Number Trans shipment Number : (Autofill) Map from Shipment>Summary>Reference Numbers> TRS Arrival Date: (Autofill / Option for Manual Date Picker) Map to Shipment>Status> ETA/POE Date 5. I click on "X" on top right corner of the form to closeout the popup in which case any unsaved entries will vanish. 8. I click on "CLEAR FORM" on the popup and all selections done till that time are reset to defaults and not saved. 9. I click on "SAVE" after I finish the selections and all the data from the Underbond request form gets saved to SBSS against that shipment data. 9b. All new customs codes - DED/OED/DEI / RQR/MVM need to be loaded via scripts into SBSS for DT5 and Production. 10. To trigger the message, I need to : a)Set UDB status to REQ, b) Change TCS status to RDY and click on SAVE. Then the Underbond request gets transmitted to TCS via BSIS (Entry packet message) for the details saved earlier from the popup form.

title: Configuration of Lookup for Request Reason on UDB Request screen popup
description: This story is written to develop the Lookup on SBSS UI to show and select the Request reason for creating the shipment Level underbond request. Based on the reason selected, certain other conditions or mapped data become mandatory to be submitted to TCS and onward to TPS for approval. From the Underbond Request Parameters Popup on SBSS UI : Clicking on the dropdown for : a. Originating Establishment ID - Shows the List of 2455 Establishment IDs from which I select one. b. Destination Establishment ID - Shows the List of the 2455 Establishment IDs from which I select one. ( Already implemented under User story User Story 6655745: Configuring all AU Establishment Codes into SBSS for Shipment Level Under bond creation
acceptance_criteria: As a SBSS user, From the Shipment Under bond Request Form popup on SBSS UI : Clicking on the dropdown for : c. Discharge Establishment ID - Auto-populates the selected Origin Establishment ID previously selected. However, the user can still change this from the dropdown. d. For showing dropdown Options for Request Reason, I can see that a New Declaration customs code Type is created : Name : RQR Description: Request Reason with the following Values : i. DEL - Delivery to Final Destination ii. DCL - Deconsolidation at Destination iii. MOV - Other Movement (default) iv. TUW - Time-Up to s79 Warehouse v. TSH - Transshipment vi. AQS - AQIS Location. Illustration: I can see that the dropdown shows both the Reason code and the description together where only 1 option can be selected at any point of time by user. I can see that MOV is the default Request reason that is auto populated by default. The user needs to click on the dropdown to change to any other value.

title: Configuration of Lookup for Mode of Movement on UDB Request screen popup
description: This story is written to develop the Lookup on SBSS UI to show and select the Mode of Movement for the shipment that requires underbond creation request. Based on the mode of movement selected, certain other conditions or mapped data become mandatory to be submitted to TCS and onward to TPS for approval. From the Underbond Request Parameters Popup on SBSS UI : Clicking on the dropdown for : a. Originating Establishment ID - Shows the List of 2456 Establishment IDs from which I select one. b. Destination Establishment ID - Shows the List of the 2456 Establishment IDs from which I select one. ( Already implemented under User story User Story 6655745: Configuring all AU Establishment Codes into SBSS for ShipmentLevel Underbond creation
acceptance_criteria: As a SBSS user, From the Under bond Request Parameters Popup on SBSS UI : Clicking on the dropdown for : Mode of Movement: shows a default value with dropdown Options. For Mode of Movement, I can see that a new Declaration Customs code type is created: Name : MVM Description: Mode of Movement with the following Values: i. AIR - Air ii. RAI - Rail iii. ROA – Road (default) iv. IVS - Sea International v. DVS - Sea Domestic I can see that the dropdown shows both the Movement mode code and the description together where only 1 option can be selected at any point of time by user. I can see that ROA is the default Movement mode that is auto populated by default. The user needs to click on the dropdown to change to any other value. eos

title: Status Visibility - Capture Approved UDB shipment Details as Shipment Comment
description: This story is created to show Transhipment details for an approved Under bond requests and reflect as Shipment comments for all types of Request reasons. Add the Report status message example for UDB=APP from Lucia
acceptance_criteria: As a SBSS user, For an Under bond Request, if UDB= APP status as received back from TCS into SBSS (Trigger point : If UDB=APP) Then show the following data under new Shipment Comment type " UBT " (Under bond Transshipment) : Create a New Shipment Comment Type: "UBT" Description : Under Bond Transhipment Fields: a. MAWB# --- from BCR b. HAWB #--- from BCR c. Goods Description --- from BCR d. Destination Establishment ID (DED) value (Name and Code) --- from under bond submission e. Delivery Address --- Matched Consignee address g. Contact Person --- if available, from matched consignee h. Contact Details --- mobile / landline / email address from matched consignee Fields Mapping: MAWB# - Shipment Summary>Reference Nos>MBL> Number HAWB# - Shipment>Shipment ID Goods Description- Shipment>Summary>General>Description Destination Establishment ID - Shipment>Reference Numbers>DNESTB>Number. Delivery Address/Consignee Address - Declaration>Customer>Consignee Address. Consignee Contact Name and Telephone number - Declaration>Customer>Consignee>Address>Contact Name , Telephone number. Format for UBT Comment : Multirow: same order as below: HAWB# (value only) MAWB# (value only) Description (value only) Destination Establishment ID - (Code and Location Name from Lookup). Consignee Contact Name ( value only) Consignee contact Telephone Number (value only) Consginee Address: 3 lines. ( value only) Brokerage Event Type : INF Event Description : "Underbond Request for _____________( Hawb#) Approved by Customs" - Capture all actions in Brokerage Events type INFO. Example for the REPORT_STATUS report message where UDB=APP : { "msgHdr": { "msgFmtNr": "1", "msgFmtVerNr": "1", "msgImportOrExport": null, "msgInfSrcCd": "TCS", "msgOidNr": "1E9EB905-FD24-4D8B-9C9A-B460FE3DC813", "msgTs": "2025-08-20T05:01:19.073Z", "msgType": "REPORT_STATUS" }, "payload": { "smtNr": "08R375T4C7X", "shuNr": "1Z08R3750491612272", "msgProcessedCountry": "AU", "comments": null, "shipmentBrokerageStatuses": [ { "statusType": "UDB", "statusValue": "APP", "level": "MWB", "properties": null } ], "packageStatuses": null, "packages": null, "refundRequest": null } }

title: Dynamic Display of Establishment IDs based on RQR - S79 & TUW, TSH.
description: This story is written to display the selective Destination Establishment IDs on the Under bond request popup based exclusively on the Request reason selection by the user. There are a total of 2455 Establishment IDs spread across all customs locations in AU. Some of them may be AQIS (Quarantine locations). Breakup of AQS-Y Locations from total location list: S15 – 13 of them. S77G- 115 of them. S79 – 3 of them. Total 131 Locations. 2. .Verify S77G and S15 Locations count from the overall table: Breakup : S77G – 568 Locations and S15 – 1333 locations approx.. Total 1901 Locations. S79 - 554 locations where RQR must be TUW only.
acceptance_criteria: As a SBSS user, When I do select the Request Reason from a dropdown, I see that there are a total of 6 reasons to select from: 1. If the selected Destination Establishment ID is an S79 Location, then Request Reason should be TUW automatically and no other reason selection is allowed here. If any other location was selected with a different reason, if its changed to an S79 Location by user, then Reason should dynamically change to TUW only and all other options must be disabled for selection here. 2. If the Request reason selected is TSH, I can see that filling the Trans shipment Overseas Destination Port [TODP] (Ctry code + Airport code) is mandatory for enablement of the "SAVE" button on the form.

title: Dynamic Display of Establishment IDs based on RQR - TUW, DCL & MOV
description: This story is written to display the selective Destination Establishment IDs on the Under bond request popup based exclusively on the Request reason selection by the user. There are a total of 2455 Establishment IDs spread across all customs locations in AU. Some of them may be AQIS (Quarantine locations). Breakup of AQS-Y Locations from total location list: S15 – 13 of them. S77G- 115 of them. S79 – 3 of them. Total 131 Locations. 3. .Verify S77G and S15 Locations count from the overall table: Breakup : S77G – 568 Locations and S15 – 1333 locations approx.. Total 1901 Locations.
acceptance_criteria: As a SBSS user, When I do select the Request Reason from a dropdown, I see that there are a total of 6 reasons to select from: If the Request Reason selected by user is DCL or TUW or MOV, ​I can see that the lookup displays only S77G and S15 locations for Destination Establishment ID.

title: Enhancements to Underbond Approved Shipment comment UBT - DF
description: Only for ship spares - SPR indicator - Underbond request - store : Vessel ID, shipping company name, address, telephone number etc. For history of UDB approvals : change to capture following from demo feedback - Requirement change : HAWB# MAWB# Origin Est. ID - (Value) Destn Est. ID - (Value) Discharge Est.ID - (Value) if different from Origin. Request Reason - (Value) store history of the comments if there is more than one underbond request for the same shipment that gets approved. meaning. A-->B and again UDB for Place B-->Place C.
acceptance_criteria: As a SBSS user, I can see that: I get to see different details captured under Shipment comments>UBT for approved Underbond requests: When UDB= APP, check for Shipment Indicator-SPR If Yes, then capture the following under UBT Comment type : HAWB# MAWB# Origin Est. ID - (Value)Dest. Est. ID - (Value)Discharge Est.ID - (Value) if different from Origin. Request Reason - (Value) Vessel Name Consignee Contact Name (Shipping company name), Consignee address, Contact telephone number etc. If No, then capture only the following under UBT Comment type: HAWB# MAWB# Origin Est.ID - (Value) Dest. Est.ID - (Value) Discharge Est.ID - (Value) if different from Origin. Request Reason - (Value) Mappings for the new fields above : Origin Establishment ID : Declaration Customs> Customs Codes-->OED Request Reason : Declaration Customs>Customs Codes>RQR> Value Destination Establishment ID : Declaration Customs> Customs Code> DED Discharge Establishment ID : Declaration Customs> Customs Codes> DEI Vessel Name : Shipment>Summary>Reference Numbers>CVYUNTNA>Number 2. For all subsequent Underbond requests that are approved for same shipment , in case of more than 1 underbond, I can see that all the previous underbond approvals are stored under UBT comment type or appended to previous data. Thus I can see a history of the underbond movements for that shipment in this comment type.