emanifest interface installation guide - web2.customs.gov.ng · registration request – against...

49
EMANIFEST INTERFACE INSTALLATION GUIDE Handling Guidelines: (Tick all that apply) Do not forward or copy data in part or full without explicit permission of Webb Fontaine Limit access to individuals on Access List / Lock in a Drawer / Cabinet Password-protect when emailed outside WF Network / Send password separately Document Name EManifest Interface Installation Guide Document number WFN-EXT-EMAN00-02-EN-V1.7 General Description This document describes EManifest Interface Installation Guide Target Audience Air Lines, Shipping Lines, NCS Management Security Notice: The information contained within this document is CONFIDENTIAL. Unauthorized disclosure is prohibited. Failure to observe Webb Fontaine guidelines regarding proprietary information can result in disciplinary action, including dismissal, and can subject you and/or third parties to legal liability.

Upload: others

Post on 26-Oct-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

Handling Guidelines: (Tick all that apply)

Do not forward or copy data in part or full without explicit permission of Webb Fontaine Limit access to individuals on Access List / Lock in a Drawer / Cabinet Password-protect when emailed outside WF Network / Send password separately

Document Name

EManifest Interface Installation Guide

Document number

WFN-EXT-EMAN00-02-EN-V1.7

General Description This document describes EManifest Interface Installation Guide

Target Audience

Air Lines, Shipping Lines, NCS Management

Security Notice: The information contained within this document is CONFIDENTIAL. Unauthorized disclosure is prohibited. Failure to observe Webb Fontaine guidelines regarding proprietary information can result in disciplinary action, including dismissal, and can subject you and/or third parties to legal liability.

Page 2: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

2

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

Table of Contents

1 INTRODUCTION .......................................................................................................................... 3

2 EMANIFEST INTERFACE INSTALLATION REQUIREMENTS ............................................................... 3

3 EMANIFEST INTERFACE CONFIGURATION .................................................................................... 4

4 STRUCTURE OF XML MESSAGES .................................................................................................. 8 4.1 MANIFEST ................................................................................................................................................... 8 4.2 BOL STRUCTURE ..................................................................................................................................... 16 4.3 REGISTRATION REQUEST STRUCTURE ..................................................................................................... 25 4.4 SAMPLE XMLS ......................................................................................................................................... 28

4.4.1 Manifest xml sample:................................................................................................................... 28 4.4.2 BOL xml sample: .......................................................................................................................... 29 4.4.3 Registration Request xml ............................................................................................................. 31 4.4.4 After transaction .......................................................................................................................... 31

5 POSSIBLE ERRORS ..................................................................................................................... 35 5.1 MANIFEST ERRORS .................................................................................................................................. 36 5.2 BOL ERRORS ........................................................................................................................................... 42

Page 3: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

3

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

1 INTRODUCTION

EManifest Interface is a standalone application written in Java language; can be run on any system. EManifest Interface provides communication with NCS IT system through SSL (Secure Socket Layer) connection using xml messages. It has the ability of digital signature for one or more layer of security and has advantage of working offline. User don’t need to wait for connection to continue working, User just need to store prepared xml files into designated directory. EManifest Interface periodically scans directory and also pends for connection if it’s lost and when the connection comes up it starts a single thread for each file and begin to process them.

2 EMANIFEST INTERFACE INSTALLATION REQUIREMENTS

The user needs to do the following order to run the EManifest Interface: 1. Acquire VPN username and password to NCS

2. Java Software Installation – Software and Installation Guide is available and can be

downloaded at NCS Website:

https://www.customs.gov.ng/Guidelines/eManifestProcedure/download/WFN-EXT-

JRE00-01-Java%20Runtime%20Environment%20(JRE)InstallationGuide-EN-

v1.2.pdf

3. VPN Installation – Software and Installation Guide is available and can be

downloaded at NCS Website:

https://www.customs.gov.ng/Guidelines/eManifestProcedure/download/WFN-EXT-

VPN00-01-VPNInstallationGuide-EN-v1.2.pdf

4. Download and extract eManifest Interface folders/files to your computer– Emanifest

files and installation Guide is available and can be downloaded at NCS Website:

https://www.customs.gov.ng/Guidelines/eManifestProcedure/download/eManifest_1.

2.000.zip

Page 4: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

4

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

3 EMANIFEST INTERFACE CONFIGURATION

The EManifest Interface subfolders and files have the following description and configurations:

1. Config

1.1 manifest.xsd – this is use for validation of Manifest store request. 1.2 eRegistrationRequest.xsd - this is use for validation of Manifest registration

request. 1.3 bol.xsd - this is use for validation of BOL store request. 1.4 soclass.cer – this is a public key provided from NCS to you to check the

response messages (the signature of messages sent from the NCS server). 1.5 sslca.keystore – this key is use to establish connection between NCS server

and your system (SSL connection via oes1 protocol). 1.6 user.keystore – this is your private key (for now you can use default one, no

need to change anything here) messages sent from your side are signed using this key.

1.7 vasp.cer – this is public key generated from user.keystore and must be reside on NCS server to check messages signed by you (for now it is there, later if you change user.keystore you will provide public key. i.e. certificate exported from that key to NCS, no need to change anything here).

2. inout - is your main working directory

2.1 in - All your xml files are sent from this directory.xml files must be generated and validated against appropriate xsd files described above (Manifest , BOL , Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically by EManifest Interface and all the valid xml requests are automatically signed and being sent. Note: it is necessary to validate XML messages before placing them in “In” directory otherwise, you may receive exceptions, and the requests will not be sent. You will get responses in appropriate directories.

2.2 msresponse- Here you get responses of stored Manifest requests. 2.3 bsresponse- Here you get responses of stored BOL requests. 2.4 mrqresponse- Here you get responses of Manifest Registration Query

responses. 2.5 err- Here received all the error messages.

2.5.1 err/bol – receives Bill of Lading error response messages 2.5.2 err/manifest – receives manifest errors response messages

2.6 callback – receives callback messages (used internally by Interface itself) 2.7 logs - contains emanifest.log file where logged information of processing files

are stored. The additivity of the emanifest.log file is as follows: if the size of the log file riches 1MB the already logged file is closed and pushed back (by adding index at the end of the file name) and interface started to log again in emanifest.log file starting from the beginning. The file is closed by adding .1 to the emanifest.log file and, .2, .3 up to .25 to the end of the already logged file (ex. emanifest.log.1, emanifest.log.2 ….emaifest.log.25 )

2.8 not sent – if any error occurs before sending of file , it is not deleted from “in” directory, it is automatically moved to ‘not sent’ folder.

Page 5: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

5

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

3. Lib

In this folder there are some library files needed for application, there is no need to modify anything here.

Files

4. start.bat - this is batch file which starts the application .You should start it before being able to send/receive messages. This is for Windows users.

5. start.sh – the same as above for Linux users.

6. eManifest.jar – this is the application’s main executable file.

7. eManifest.properties – this is the user properties needed for application. You need to define here proper username, password, Server Host and Server Port which will be given to you from NCS.

Content of emanifest.properties:

#########################################################################

#------------------------------------------------------------------------

# EManifest Interface Version No.

#------------------------------------------------------------------------

EMANIFEST_VERSION=1.2.000

#------------------------------------------------------------------------

# Names of documents

#------------------------------------------------------------------------

MANIFEST_DOCUMENT=TWMManifest

BOL_DOCUMENT=TWMBol

REGISTRATION_REQUEST_DOCUMENT=ERegistration

#------------------------------------------------------------------------

# Operations

#------------------------------------------------------------------------

MANIFEST_STORE_OPERATION=Store

BOL_STORE_OPERATION=Store

REGISTRATION_OPERATION=eRegister

#------------------------------------------------------------------------

# Schema paths

#------------------------------------------------------------------------

MANIFEST_DOCUMENT_SCHEMA=config/manifest.xsd

BOL_DOCUMENT_SCHEMA=config/bol.xsd

REGISTRATION_REQUEST_SCHEMA=config/eRegistrationRequest.xsd

#------------------------------------------------------------------------

# Paths of working directories

#------------------------------------------------------------------------

INCOMING_DIRECTORY=inout/in

BOL_ERRORS_DIRECTORY=inout/err/bol

MANIFEST_ERRORS_DIRECTORY=inout/err/manifest

CALLBACK_DIRECTORY=inout/callback

MANIFEST_STORE_RESPONSE_DIRECTORY=inout/msresponse

BOL_STORE_RESPONSE_DIRECTORY=inout/bsresponse

MANIFEST_REGISTER_RESPONSE_DIRECTORY=inout/mrresponse

NOTSENT_DIRECTORY=inout/notsent

#------------------------------------------------------------------------

# This key is needed to establish connection to server.

Page 6: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

6

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

#------------------------------------------------------------------------

TRUSTSTORE=config/sslca.keystore

#------------------------------------------------------------------------

# checks signature of received callbacks with:

#------------------------------------------------------------------------

SERVER_STAMP=config/soclass.cer

#------------------------------------------------------------------------

# Messaging Protokol Type

#------------------------------------------------------------------------

TOSSER_MESSAGING_PROTO=oes1

#------------------------------------------------------------------------

# OES1 Section

#------------------------------------------------------------------------

USER_NAME=XXXX

USER_PASSWORD=YYYY

SERVER_HOST=test.ncs.gov.ng

SERVER_PORT=2022

#------------------------------------------------------------------------

# Define threads limit i.e. how many files can be processed at once

#------------------------------------------------------------------------

THREAD_LIMIT=25

#------------------------------------------------------------------------

#sign whatever eManifest is sending (callbacks, requests) with

#------------------------------------------------------------------------

KEYSTORE=config/user.keystore

KEYSTORE_PASSWORD=sargis

STORETYPE=JCEKS

PROVIDER_ALIAS=vasp

PROVIDER_KEY_PASSWORD=vasp123

#------------------------------------------------------------------------

# sign user XMLs with:

# Keystore and keystore password

#------------------------------------------------------------------------

USER_KEYSTORE=config/user.keystore

USER_KEYSTORE_PASSWORD=sargis

#------------------------------------------------------------------------

# User's keystore alias

#------------------------------------------------------------------------

USER_ALIAS=user

USER_ALIAS_PASSWORD=user123

#------------------------------------------------------------------------

# End of OES1 Section

#########################################################################

For now you may need to modify following values: USER_NAME=XXXX USER_PASSWORD=YYYY SERVER_HOST=test.ncs.gov.ng SERVER_PORT=2022 XXXX and YYYY will be given to you .You will be informed if something is going to be changed with configurations.

Page 7: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

7

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

Note: In the previous version of this document the default value specified for SERVER_PORT in emanifest.properties file was 2023. But only VPN Connection will be used to connect to the NCS server, which is connecting to port 2022, the default value for SERVER_PORT is changed to 2022.

Note: this file also keeps the version information (EMANIFEST_VERSION=1.2.000)

Page 8: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

8

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7 This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

4 STRUCTURE OF XML MESSAGES

In this section are given xml messages structures elements descriptions and samples for each message type.

4.1 Manifest

This is XML message to store manifest. manifest.xsd - xsd schema for Manifest store request message (Note: you can find it in ‘conf ’ folder):

<?xml version="1.0" encoding="UTF-8"?>

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"

attributeFormDefault="unqualified">

<xsd:element name="TWM_Manifest" type="Manifest"/>

<xsd:complexType name="Manifest">

<xsd:sequence>

<xsd:element name="Identification_segment" type="IdentificationMAN"/>

<xsd:element name="General_segment" type="GeneralMAN"/>

</xsd:sequence>

</xsd:complexType>

<!-- Starting Manifest XML Identification_segment Segment -->

<xsd:complexType name="IdentificationMAN">

<xsd:sequence>

<xsd:element name="Registry_number" type="UN17"/>

<xsd:element name="Date" type="xsd:date"/>

<xsd:element name="Customs_office_segment" type="Customs_office_segmentMAN"/>

</xsd:sequence>

</xsd:complexType>

<xsd:complexType name="Customs_office_segmentMAN">

<xsd:sequence>

<xsd:element name="Code" type="UN4"/>

</xsd:sequence>

</xsd:complexType>

<!-- End of Manifest XML Identification_segment Segment -->

<!-- Starting Manifest XML General_segment Segment -->

<xsd:complexType name="GeneralMAN">

<xsd:sequence>

<xsd:element name="Master_information" type="X35" minOccurs="0"/>

<xsd:element name="Last_discharge" type="OptionalDate" minOccurs="0"/>

<xsd:element name="Arrival_segment" type="Arrival_segmentMAN"/>

Page 9: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

9

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7 This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

<xsd:element name="Departure_segment" type="Departure_segmentMAN"/>

<xsd:element name="Destination_segment" type="Destination_segmentMAN"/>

<xsd:element name="Carrier_segment" type="Carrier_segmentMAN"/>

<xsd:element name="Transport_segment" type="Transport_segmentMAN"/>

<xsd:element name="Tonnage_segment" type="Tonnage_segmentMAN" minOccurs="0"/>

</xsd:sequence>

</xsd:complexType>

<xsd:complexType name="Arrival_segmentMAN">

<xsd:sequence>

<xsd:element name="Date_of_arrival" type="xsd:date"/>

<xsd:element name="Time_of_arrival" type="OptionalTime" minOccurs="0"/>

</xsd:sequence>

</xsd:complexType>

<xsd:complexType name="Departure_segmentMAN">

<xsd:sequence>

<xsd:element name="Code" type="UX5"/>

</xsd:sequence>

</xsd:complexType>

<xsd:complexType name="Destination_segmentMAN">

<xsd:sequence>

<xsd:element name="Code" type="UX5"/>

</xsd:sequence>

</xsd:complexType>

<xsd:complexType name="Carrier_segmentMAN">

<xsd:sequence>

<xsd:element name="Code" type="UX17" minOccurs="0"/>

<xsd:element name="Name" type="X35" minOccurs="0"/>

<xsd:element name="Address" type="X150" minOccurs="0"/>

</xsd:sequence>

</xsd:complexType>

<xsd:complexType name="Transport_segmentMAN">

<xsd:sequence>

<xsd:element name="Name_of_transporter" type="X27" minOccurs="0"/>

<xsd:element name="Place_of_transporter" type="X35" minOccurs="0"/>

<xsd:element name="Mode_of_transport_segment" type="MTS"/>

<xsd:element name="Nationality_of_transport_segment" type="NTS"/>

<xsd:element name="Transporter_registration_segment" type="TRS" minOccurs="0"/>

</xsd:sequence>

</xsd:complexType>

<xsd:complexType name="Tonnage_segmentMAN">

<xsd:sequence>

<xsd:element name="Gross_tonnage" type="optionalD18.2" minOccurs="0"/>

<xsd:element name="Net_tonnage" type="optionalD18.2" minOccurs="0"/>

</xsd:sequence>

Page 10: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

10

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7 This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

</xsd:complexType>

<xsd:complexType name="MTS">

<xsd:sequence>

<xsd:element name="Code" type="UN3"/>

</xsd:sequence>

</xsd:complexType>

<xsd:complexType name="NTS">

<xsd:sequence>

<xsd:element name="Code" type="UN3"/>

</xsd:sequence>

</xsd:complexType>

<xsd:complexType name="TRS">

<xsd:sequence>

<xsd:element name="Registration_number" type="X35" minOccurs="0"/>

<xsd:element name="Registration_date" type="OptionalDate" minOccurs="0"/>

</xsd:sequence>

</xsd:complexType>

<!-- End of Manifest General_segment Segment -->

<xsd:simpleType name="X">

<xsd:restriction base="xsd:string"/>

</xsd:simpleType>

<xsd:simpleType name="UN">

<xsd:restriction base="xsd:string">

<xsd:pattern value="[A-Z0-9 -_\.,:;#\*()\\/]*"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="U">

<xsd:restriction base="UN">

<xsd:pattern value="[^0-9]*"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="UX">

<xsd:restriction base="xsd:string">

<xsd:pattern value="[^a-z]*"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="A">

<xsd:restriction base="xsd:string">

<xsd:pattern value="[A-Za-z]*"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="N">

<xsd:restriction base="xsd:string">

<xsd:pattern value="[0-9]*"/>

Page 11: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

11

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7 This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="N8">

<xsd:restriction base="N">

<xsd:maxLength value="8"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="UN3">

<xsd:restriction base="UN">

<xsd:maxLength value="3"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="UN4">

<xsd:restriction base="UN">

<xsd:maxLength value="4"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="UN17">

<xsd:restriction base="UN">

<xsd:maxLength value="17"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="UX5">

<xsd:restriction base="UX">

<xsd:maxLength value="5"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="UX17">

<xsd:restriction base="UX">

<xsd:maxLength value="17"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="X27">

<xsd:restriction base="X">

<xsd:maxLength value="27"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="X35">

<xsd:restriction base="X">

<xsd:maxLength value="35"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="X105">

<xsd:restriction base="X">

Page 12: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

12

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7 This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

<xsd:maxLength value="105"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="X150">

<xsd:restriction base="X">

<xsd:maxLength value="150"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="optionalD18.2">

<xsd:union>

<xsd:simpleType>

<xsd:restriction base="xsd:decimal">

<xsd:minInclusive value="0.01"/>

<xsd:maxInclusive value="999999999999999999.99"/>

<xsd:pattern value="([0-9]*|.*\.[0-9]{2})"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType>

<xsd:restriction base="xsd:string">

<xsd:enumeration value=""/>

</xsd:restriction>

</xsd:simpleType>

</xsd:union>

</xsd:simpleType>

<xsd:simpleType name="OptionalDate">

<xsd:union memberTypes="xsd:date">

<xsd:simpleType>

<xsd:restriction base="xsd:string">

<xsd:enumeration value=""/>

</xsd:restriction>

</xsd:simpleType>

</xsd:union>

</xsd:simpleType>

<xsd:simpleType name="OptionalTime">

<xsd:union memberTypes="xsd:time">

<xsd:simpleType>

<xsd:restriction base="xsd:string">

<xsd:enumeration value=""/>

</xsd:restriction>

</xsd:simpleType>

</xsd:union>

</xsd:simpleType>

</xsd:schema>

Page 13: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

13

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7 This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

Table 1. Store Manifest xml message’s elements description: Note: Hereafter in tables 1, 2 and 3, the values of column ‘REQ’ are referred as: M - Mandatory O - Optional P – Prohibited (which means, No value should be provided for this field)

No TAG NAME TYPE / SIZE DESCRIPTION REQ CODE LIST

1 <TWM_Manifest> Start-root-tag Start of the root tag M

2 <Identification_segment> Start-tag Start of Identification segment M

3 <Registry_number/> Char(17) Voyage number / flight number M

4 <Date/> Date Departure date (estimated date) format is ‘ yyyy-mm-dd ’ M

5 <Customs_office_segment> Start-tag Start of Customs office segment M

6 <Code/> Char(4) Customs office code (where the goods should go) M asycuda_customs_offices.xls

7 </Customs_office_segment> End-tag End of Customs office segment -

8 </Identification_segment> End-tag End of Identification segment -

9 <General_segment> Start-tag Start of general segment M

10 <Master_information/> Char(35) Master information (captain/pilot name ) O

11 <Last_discharge/> Date Date of last discharge (currently not used in NCS) format is ‘ yyyy-mm-dd ’

O

12 <Arrival_segment> Start-tag Start of arrival segment M

13 <Date_of_arrival/> Date Date of arrival (estimated date) format is ‘ yyyy-mm-dd ’ M

14 <Time_of_arrival/> Char(11) Time of arrival (estimated time) format is ‘ hh-mm-ss ’ O

15 </Arrival_segment> End-tag End of arrival segment -

16 <Departure_segment> Start-tag Start of departure segment M

17 <Code/> Char(5) Place of departure code M asycuda_location.xls

18 </Departure_segment> End-tag End of departure segment -

19 <Destination_segment> Start-tag Start of destination segment M

20 <Code/> Char(5) Place of destination code M asycuda_location.xls

21 </Destination_segment> End-tag End of destination segment -

22 <Carrier_segment> Start-tag Start of carrier segment M

23 <Code/> Char(17) Carrier code M asycuda_carriers.csv

Page 14: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

14

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7 This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

No TAG NAME TYPE / SIZE DESCRIPTION REQ CODE LIST

24 <Name/> Char(35) Carrier name O

25 <Address/> Char(35) Carrier address O

26 </Carrier_segment> Start-tag End of carrier segment M

27 <Transport_segment> Main tag Start of Transport segment O

28 <Name_of_transporter/> Char(27) Name of the vessel/plane M1

29 <Place_of_transporter/> Char(35) Place of transport O

30 <Mode_of_transport_segment> Start-tag Start of Mode of transport segment M

31 <Code/> Char(3) Mode of transport code (air, sea, road ….) M asycuda_mode_of_transport.xls

32 </Mode_of_transport_segment> End-tag End of Mode of transport segment -

33 <Nationality_of_transport_segment> Start-tag Start of Nationality of transport segment M

34 <Code/> Char(3) Nationality code (the flag of the vessel / plane nationality ) M countries.xls

35 </Nationality_of_transport_segment> End-tag End of Nationality of transport segment -

36 <Transporter_registration_segment> Start-tag Start of Transporter registration segment O

37 <Registration_number/> Char(35) Transport registration reference (no need to provide) O

38 <Registration_date/> Date Transport registration reference date (no need to provide) P

39 </Transporter_registration_segment> End-tag End of Transporter registration segment -

40 </Transport_segment> End-tag End of Transport segment -

41 <Tonnage_segment> Start-tag Start of tonnage segment O 2

42 <Gross_tonnage/> Decimal(18,2) Gross tonnage (weigh of the vessel/plane) O

43 <Net_tonnage/> Decimal(18,2) Net tonnage O

44 </Tonnage_segment> End-tag End of tonnage segment -

45 </General_segment> End-tag End of General segment -

46 </TWM_Manifest> End-root-tag End of the root tag -

Page 15: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

15

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7 This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

Description 1: Name_of_transporter field is mandatory only for shipping lines (i.e. in case of mode of transport = 1 Sea), for Air lines it is Optional. Description 2: Each element which is tagged as O (optional) can be omitted in xml, not mixing the sequence of the rest elements, which means:

- Element tagged as O (Optional) can be omitted. - Segment tagged as optional can be omitted (entirely including its sub-elements). But in case if one of the sub-elements of the segment is included obviously the segment

itself should be included in xml (not mixing the sequence of the elements). Ex.: Tonnage_segment

>>> <Tonnage_segment> O <Gross_tonnage/> O <Net_tonnage/> O </ Tonnage_segment> <<< As you can see the whole segment is O(Optional), so the whole segment can be omitted (including its sub-elements - <Gross_tonnage/> and <Net_tonnage/> , the part between >>> and <<< marks ). But in case if one of the sub-elements is mandatory, the segment must be included in xml containing the mandatory sub-element: <Carrier_segment>

<Code>XXX</Code>

</Carrier_segment>

Page 16: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

16

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

4.2 BOL Structure

bol.xsd – xsd schema for BOL store request message (Note: you can find it in ‘conf’ folder):

<?xml version="1.0" encoding="UTF-8"?>

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"

attributeFormDefault="unqualified">

<xsd:element name="TWM_BOL" type="BolType"/>

<xsd:complexType name="BolType">

<xsd:sequence>

<xsd:element name="Identification_segment" type="IdentType"/>

<xsd:element name="Bol_specific_segment" type="BolSpecType"/>

<xsd:element name="Container" type="ContainerType" minOccurs="0" maxOccurs="5000"/>

</xsd:sequence>

</xsd:complexType>

<!-- Starting BOL XML Identification Segment -->

<xsd:complexType name="IdentType">

<xsd:sequence>

<xsd:element name="Registry_number" type="UN17"/>

<xsd:element name="Date" type="xsd:date"/>

<xsd:element name="Bol_reference" type="UN17"/>

<xsd:element name="Customs_office_segment">

<xsd:complexType>

<xsd:sequence>

<xsd:element name="Code" type="UN4"/>

</xsd:sequence>

</xsd:complexType>

</xsd:element>

</xsd:sequence>

</xsd:complexType>

<!-- End of BOL XML Identification Segment -->

<!-- Starting BOL specific XML Segment -->

<xsd:complexType name="BolSpecType">

<xsd:sequence>

<xsd:element name="Line_number" type="NUM8"/>

<xsd:element name="Previous_document_reference" type="UN17" minOccurs="0"/>

<xsd:element name="Bol_Nature" type="UN2"/>

<xsd:element name="Unique_carrier_reference" type="X35" minOccurs="0"/>

<xsd:element name="Total_number_of_containers" type="NUM8"/>

<xsd:element name="Total_gross_mass_manifested" type="D18.2"/>

<xsd:element name="Volume_in_cubic_meters" type="optionalD18.2" minOccurs="0"/>

<xsd:element name="Bol_type_segment">

<xsd:complexType>

<xsd:sequence>

<xsd:element name="Code" type="UN3"/>

</xsd:sequence>

</xsd:complexType>

</xsd:element>

<xsd:element name="Exporter_segment">

<xsd:complexType>

<xsd:sequence>

<xsd:element name="Code" type="UX17" minOccurs="0"/>

<xsd:element name="Name" type="X35" minOccurs="0"/>

<xsd:element name="Address" type="X150" minOccurs="0"/>

</xsd:sequence>

</xsd:complexType>

</xsd:element>

<xsd:element name="Consignee_segment">

<xsd:complexType>

<xsd:sequence>

<xsd:element name="Code" type="UX17" minOccurs="0"/>

<xsd:element name="Name" type="X35" minOccurs="0"/>

<xsd:element name="Address" type="X150" minOccurs="0"/>

</xsd:sequence>

</xsd:complexType>

</xsd:element>

<xsd:element name="Notify_segment" minOccurs="0">

<xsd:complexType>

<xsd:sequence>

<xsd:element name="Code" type="UX17" minOccurs="0"/>

<xsd:element name="Name" type="X35" minOccurs="0"/>

<xsd:element name="Address" type="X150" minOccurs="0"/>

</xsd:sequence>

</xsd:complexType>

Page 17: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

17

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

</xsd:element>

<xsd:element name="Place_of_loading_segment">

<xsd:complexType>

<xsd:sequence>

<xsd:element name="Code" type="UX5"/>

</xsd:sequence>

</xsd:complexType>

</xsd:element>

<xsd:element name="Place_of_unloading_segment">

<xsd:complexType>

<xsd:sequence>

<xsd:element name="Code" type="UX5"/>

</xsd:sequence>

</xsd:complexType>

</xsd:element>

<xsd:element name="Packages_segment" type="PackagesType"/>

<xsd:element name="Shipping_marks" type="X350" minOccurs="0"/>

<xsd:element name="Goods_description" type="X175"/>

<xsd:element name="Freight_segment" type="FreightType" minOccurs="0"/>

<xsd:element name="Customs_segment" minOccurs="0">

<xsd:complexType>

<xsd:sequence>

<xsd:group ref="ValueCurrency"/>

</xsd:sequence>

</xsd:complexType>

</xsd:element>

<xsd:element name="Transport_segment" minOccurs="0">

<xsd:complexType>

<xsd:sequence>

<xsd:group ref="ValueCurrency"/>

</xsd:sequence>

</xsd:complexType>

</xsd:element>

<xsd:element name="Insurance_segment" minOccurs="0">

<xsd:complexType>

<xsd:sequence>

<xsd:group ref="ValueCurrency"/>

</xsd:sequence>

</xsd:complexType>

</xsd:element>

<xsd:element name="Seals_segment" type="SealsType" minOccurs="0"/>

<xsd:element name="Information_part_a" type="X70" minOccurs="0"/>

<xsd:element name="Operations_segment" type="OperationsType" minOccurs="0"/>

</xsd:sequence>

</xsd:complexType>

<!-- End of BOL specific Identification Segment -->

<!-- Starting BOL XML Packages Segment -->

<xsd:complexType name="PackagesType">

<xsd:sequence>

<xsd:element name="Package_type_code" type="UN17"/>

<xsd:element name="Number_of_packages" type="NUM7"/>

</xsd:sequence>

</xsd:complexType>

<!-- End of BOL XML Packages Segment -->

<!-- Starting BOL XML Freight Segment -->

<xsd:complexType name="FreightType">

<xsd:sequence>

<xsd:group ref="ValueCurrency"/>

<xsd:element name="Indicator_segment" minOccurs="0">

<xsd:complexType>

<xsd:sequence>

<xsd:element name="Code" type="UX3"/>

</xsd:sequence>

</xsd:complexType>

</xsd:element>

</xsd:sequence>

</xsd:complexType>

<!-- End of BOL XML Freight Segment -->

<!-- Starting BOL XML Seals Segment -->

<xsd:complexType name="SealsType">

<xsd:sequence>

<xsd:element name="Number_of_seals" type="N5" minOccurs="0"/>

<xsd:element name="Marks_of_seals" type="UX20" minOccurs="0"/>

<xsd:element name="Sealing_party_code" type="SealingPartyType" minOccurs="0"/>

</xsd:sequence>

</xsd:complexType>

<!-- End of BOL XML Seals Segment -->

<!-- Starting BOL XML Operations Segment -->

<xsd:complexType name="OperationsType">

Page 18: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

18

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

<xsd:sequence>

<xsd:element name="Location_segment" minOccurs="0">

<xsd:complexType>

<xsd:sequence>

<xsd:element name="Code" type="UN17" minOccurs="0"/>

<xsd:element name="Information" type="X35" minOccurs="0"/>

</xsd:sequence>

</xsd:complexType>

</xsd:element>

</xsd:sequence>

</xsd:complexType>

<!-- End of BOL XML Operations Segment -->

<!-- Starting BOL XML Container_segment -->

<xsd:complexType name="ContainerType">

<xsd:sequence>

<xsd:element name="Reference" type="UX17"/>

<xsd:element name="Number" type="CtnNumberType" minOccurs="0"/>

<xsd:element name="Type" type="TypeType" minOccurs="0"/>

<xsd:element name="Empty_full" type="EmptyFullType" minOccurs="0"/>

<xsd:element name="Seals" type="UX10" minOccurs="0"/>

<xsd:element name="Marks1" type="UX10" minOccurs="0"/>

<xsd:element name="Marks2" type="UX10" minOccurs="0"/>

<xsd:element name="Sealing_party" type="SealingPartyType" minOccurs="0"/>

</xsd:sequence>

</xsd:complexType>

<!-- End of BOL XML Container_segment -->

<xsd:simpleType name="UN">

<xsd:restriction base="xsd:string">

<xsd:pattern value="[A-Z0-9 -_\.,:;#\*()\\/]*"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="U">

<xsd:restriction base="UN">

<xsd:pattern value="[^0-9]*"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="UX">

<xsd:restriction base="xsd:string">

<xsd:pattern value="[^a-z]*"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="D18.2">

<xsd:restriction base="xsd:decimal">

<xsd:minInclusive value="0.01"/>

<xsd:maxInclusive value="999999999999999999.99"/>

<xsd:pattern value="[0-9]*|.*\.[0-9]{2}"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="optionalD18.2">

<xsd:union memberTypes="D18.2">

<xsd:simpleType>

<xsd:restriction base="xsd:string">

<xsd:enumeration value=""/>

</xsd:restriction>

</xsd:simpleType>

</xsd:union>

</xsd:simpleType>

<xsd:simpleType name="N5">

<xsd:restriction base="N">

<xsd:minLength value="0"/>

<xsd:maxLength value="5"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="N">

<xsd:restriction base="xsd:string">

<xsd:pattern value="[0-9]*"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="NUM">

<xsd:restriction base="xsd:string">

<xsd:pattern value="[0]|([1-9][0-9]*)"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="CtnNumberType">

<xsd:union memberTypes="NUM">

<xsd:simpleType>

<xsd:restriction base="xsd:string">

<xsd:enumeration value=""/>

</xsd:restriction>

Page 19: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

19

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

</xsd:simpleType>

</xsd:union>

</xsd:simpleType>

<xsd:simpleType name="NUM7">

<xsd:restriction base="NUM">

<xsd:maxLength value="7"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="NUM8">

<xsd:restriction base="NUM">

<xsd:maxLength value="7"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="UN2">

<xsd:restriction base="UN">

<xsd:maxLength value="2"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="UN3">

<xsd:restriction base="UN">

<xsd:maxLength value="3"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="UN4">

<xsd:restriction base="UN">

<xsd:maxLength value="4"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="UN17">

<xsd:restriction base="UN">

<xsd:maxLength value="17"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="UN35">

<xsd:restriction base="UN">

<xsd:maxLength value="35"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="UX3">

<xsd:restriction base="UX">

<xsd:maxLength value="3"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="UX4">

<xsd:restriction base="UX">

<xsd:maxLength value="4"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="UX5">

<xsd:restriction base="UX">

<xsd:maxLength value="5"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="UX10">

<xsd:restriction base="UX">

<xsd:maxLength value="10"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="UX17">

<xsd:restriction base="UX">

<xsd:maxLength value="17"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="UX20">

<xsd:restriction base="UX">

<xsd:maxLength value="20"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="X35">

<xsd:restriction base="xsd:string">

<xsd:maxLength value="35"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="X70">

<xsd:restriction base="xsd:string">

<xsd:maxLength value="70"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="X150">

Page 20: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

20

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

<xsd:restriction base="xsd:string">

<xsd:maxLength value="150"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="X175">

<xsd:restriction base="xsd:string">

<xsd:maxLength value="175"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="X350">

<xsd:restriction base="xsd:string">

<xsd:maxLength value="350"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:group name="ValueCurrency">

<xsd:sequence>

<xsd:element name="Value" type="optionalD18.2" minOccurs="0"/>

<xsd:element name="Currency" type="UN3" minOccurs="0"/>

</xsd:sequence>

</xsd:group>

<xsd:simpleType name="TypeType">

<xsd:restriction base="xsd:string">

<xsd:maxLength value="4"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="EmptyFullType">

<xsd:restriction base="xsd:string">

<xsd:maxLength value="3"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="SealingPartyType">

<xsd:restriction base="xsd:string">

<xsd:maxLength value="3"/>

</xsd:restriction>

</xsd:simpleType>

</xsd:schema>

Page 21: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

21

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7 This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

Table 2. Store BOL xml message’s elements description:

No TAG NAME TYPE / SIZE DESCRIPTION REQ CODE LIST

1 <TWM_BOL> Start-root-tag Start of the root tag M

2 <Identification_segment> Start-tag Start of Identification segment M

3 <Registry_number/> Char(17) Voyage number M

4 <Date/> Date Departure date (the date specified in manifest) format is ‘yyyy-mm-dd ’

M

5 <Bol_reference/> Char(17) Bill of lading reference number M

6 <Customs_office_segment> Start-tag Start of Customs office segment M

7 <Code/> Char(4) Customs office code M asycuda_customs_offices.xls

8 </Customs_office_segment> End-tag End of Customs office segment M

9 </Identification_segment> End-tag End of Identification segment M

10 <Bol_specific_segment> Start-tag Start of the Bol specific segment M

11 <Line_number/> Integer BOL line number (should be unique within single Manifest, ex. 1,2,3,6,..)

M

12 <Previous_document_reference/> Char(17) Previous document - B/L ref. number of Master B/L O

13 <Bol_Nature/> Char(2) B/L nature code (identifies the nature of B/L – import , export , transit …)

M 22 (Export), 23 (Import), 24 (Transit)

or 28(transhipment)

14 <Unique_carrier_reference/> Char(35) Unique Carrier Reference number (currently not used in NCS)

P

15 <Total_number_of_containers/> Integer Number of containers (declared in bill of lading) Note: for airfreight the value must be 0 , as containers are not supported for airfreight

M

16 <Total_gross_mass_manifested/> Decimal(18,2) Gross mass M

17 <Volume_in_cubic_meters/> Decimal(18,2) Volume in Cubic Meter O

18 <Bol_type_segment> Main tag Start of Bol type segment M

19 <Code/> Char(3) BOL type code (identifies the type of B/L – Master /House bill/airway bill)

M asycuda_transport_document.xls

20 </Bol_type_segment> End-tag End of Bol type segment M

21 <Exporter_segment> Start-tag Start of Exporter segment (see Description 1) M

23 <Code/> Null Exporter code O asycuda_RCN.csv

24 <Name/> Char(35) Exporter name M

Page 22: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

22

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7 This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

No TAG NAME TYPE / SIZE DESCRIPTION REQ CODE LIST

25 <Address/> Char(150) Exporter address O

26 </Exporter_segment> End-tag End of Exporter segment M

27 <Consignee_segment> Start-tag Start of Consignee segment (see Description 1 the logic is

the same for Consignee segment) M

28 <Code/> Char(17) Consignee code O asycuda_RCN.csv

29 <Name/> Char(35) Consignee name M

30 <Address/> Char(150) Consignee address O

31 </Consignee_segment> End-tag End of Consignee segment M

32 <Notify_segment> Start-tag

Start of Notify segment (see Description 1 the logic is the

same for Notify segment , excepts that the Notify segment not mandatory at all , so the <Name> field too , but if some value is provided the logic is the same , the codes list is the same too )

O

33 <Code/> Char(17) Notify code O asycuda_RCN.csv

34 <Name/> Char(35) Notify name O

35 <Address/> Char(150) Notify address O

36 </Notify_segment> End-tag End of Notify segment -

37 <Place_of_loading_segment> Start-tag Start of Place of loading segment M

38 <Code/> Char(5) Place of loading code M asycuda_location.xls

39 <Place_of_loading_segment> End-tag End of Place of loading segment -

40 <Place_of_unloading_segment> Start-tag Start of Place of unloading segment M

41 <Code/> Char(5) Place of unloading code M asycuda_location.xls

42 <Place_of_unloading_segment> End-tag End of Place of unloading segment -

43 <Packages_segment> Start-tag Start of Packages segment M

44 <Package_type_code/> Char(17) Package type code M asycuda_type_of_package.xls

45 <Number_of_packages/> Integer Number of package M

46 </Packages_segment> End-tag End of Packages segment -

47 <Shipping_marks> Char(350) Shipping marks O

48 <Goods_description> Char(175) Goods description M

49 <Freight_segment> Start-tag Start of Freight segment P

50 <Value/> Decimal(18,2) Freight value P

Page 23: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

23

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7 This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

No TAG NAME TYPE / SIZE DESCRIPTION REQ CODE LIST

51 <Currency/> Char(3) Freight currency code P

52 <Indicator_segment> Start-tag Start of Indicator segment P

53 <Code/> Char(3) Freight indicator code P

54 </Indicator_segment> End-tag End of Indicator segment -

55 </Freight_segment> End-tag End of Freight segment -

56 <Customs_segment> Start-tag Start of Customs value segment P

57 <Value/> Decimal(18,2) Customs value P

58 <Currency/> Char(3) Customs currency code P

59 </Customs_segment> End-tag End of Customs value segment -

60 <Transport_segment> Start-tag Start of Transport value segment P

61 <Value/> Decimal(18,2) Transport value P

62 <Currency/> Char(3) Transport currency code P

63 </Transport_segment> End-tag End of Transport value segment -

64 <Insurance_segment> Start-tag Start of Insurance value segment P

65 <Value/> Decimal(18,2) Insurance value P

66 <Currency/> Char(3) Insurance currency code P

67 </Insurance_segment> End-tag End of Insurance value segment -

68 <Seals_segment> Start-tag Start of Seals information segment O

69 <Number_of_seals/> Integer Seals number O

70 <Marks_of_seals/> Char(20) Marks of seals O

71 <Sealing_party_code/> Char(3) Sealing party code O asycuda_seal.xls

72 </Seals_segment> End-tag End of Seals information segment -

73 <Information_part_a/> Char(70) General Information O

74 <Operations_segment> Start-tag Start of Operations segment O

75 <Location_segment> Start-tag Start of location segment O

76 <Code/> Char(17) Location code (the location where goods need to stay before go to customs to be cleared )

O asycuda_transit_sheds.xls

77 <Information/> Char(35) Location information O

78 </Location_segment> End-tag End of location segment -

79 </Operations_segment> End-tag End of Operations segment -

Page 24: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

24

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7 This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

No TAG NAME TYPE / SIZE DESCRIPTION REQ CODE LIST

80 </Bol_specific_segment> End-tag End of the Bol specific segment -

81 <Container> Start-tag

Start of Container segment (Container segment can be occur in B/L segment 0 or more times , which means if there are no containers the whole Container segment can be omitted in the xml ) Note: Container segment is not used for airfreight , therefore no need to include in xml for air waybill

O

82 <Reference/> Char(17) Container identification M

83 <Number/> integer Container number (no need to provide any value ) P

84 <Type/> Char(4) Container Type code O asycuda_container.xls

85 <Empty_full/> Char(3) Empty/full indicator O asycuda_empty_full_indicator.xls

86 <Seals/> Char(10) Marks of seals #1 O

87 <Marks1/> Char(10) Marks of seals #2 O

88 <Marks2/> Char(10) Marks of seals #3 O

89 <Sealing_party/> Char(3) Sealing party code O asycuda_seal.xls

90 </Container> End-tag End of Container segment -

91 </TWM_BOL> End-root-tag End of the root tag -

Description 1:

<Exporter_segment>

<Code/>

<Name/>

<Address/>

</Exporter_segment>

For Exporter segment there are available two options:

1. You can just provide the value for <Code> field and leave <Name> and <Address> fields blank , (in that case <Name> is not mandatory , the <Name> field is only mandatory if <Code> field is empty ) the value must be provided from given code list – ‘asycuda_RCN.csv’ . In this case the Name and address values will be set on the server side automatically according to its values from the codes list.

2. If you don’t put any value for <Code> field , in this case the <Name> field is mandatory , you have to provide value for it , and <Address> is optional , can be

provided as additional information . In this case there is no link with reference table (code list); the system takes your provided values as they are.

Better to use either 1. or 2. option, but not the mixed combination .

Note: Notice that for field 83 (“<Number>”under”<Container>” segment) is prohibited, value automatically generated on the NCS server side for each container on the BOL, you must not put any value for that field (field can be omitted).

Page 25: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

25

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

4.3 Registration request structure

<?xml version="1.0" encoding="UTF-8"?>

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"

attributeFormDefault="unqualified">

<xsd:element name="eRegistrationRequest">

<xsd:complexType>

<xsd:sequence>

<xsd:element ref="Identification"/>

<xsd:element ref="Totals_segment"/>

</xsd:sequence>

</xsd:complexType>

</xsd:element>

<xsd:element name="Identification">

<xsd:complexType>

<xsd:sequence>

<xsd:element name="Registry_number" type="UN17"/>

<xsd:element name="Date" type="xsd:date"/>

<xsd:element name="Customs_office_code" type="UN4" nillable="false"/>

</xsd:sequence>

</xsd:complexType>

</xsd:element>

<xsd:element name="Totals_segment">

<xsd:complexType>

<xsd:sequence>

<xsd:element name="Total_number_of_bols" type="N8"/>

<xsd:element name="Total_number_of_containers" type="NC8"/>

<xsd:element name="Total_number_of_packages" type="N8"/>

<xsd:element name="Total_gross_mass" type="D18.2"/>

</xsd:sequence>

</xsd:complexType>

</xsd:element>

<xsd:simpleType name="UN17">

<xsd:restriction base="xsd:string">

<xsd:pattern value="[A-Z0-9 -_\.,:;#\*()\\/]*"/>

<xsd:maxLength value="17"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="OptionalDate">

<xsd:union memberTypes="xsd:date">

<xsd:simpleType>

<xsd:restriction base="xsd:string">

<xsd:enumeration value=""/>

</xsd:restriction>

</xsd:simpleType>

</xsd:union>

</xsd:simpleType>

<xsd:simpleType name="UN4">

<xsd:restriction base="xsd:string">

<xsd:pattern value="[A-Z0-9]{4}"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="D18.2">

<xsd:restriction base="xsd:decimal">

<xsd:minInclusive value="0.01"/>

<xsd:maxInclusive value="999999999999999999.99"/>

<xsd:pattern value="([0-9]*|.*\.[0-9]{2})"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="N8">

<xsd:restriction base="xsd:integer">

<xsd:minInclusive value="1"/>

<xsd:maxExclusive value="100000000"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="NC8">

<xsd:restriction base="xsd:integer">

<xsd:minInclusive value="0"/>

<xsd:maxExclusive value="100000000"/>

Page 26: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

26

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

</xsd:restriction>

</xsd:simpleType>

</xsd:schema>

Page 27: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

27

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

Table 3. Registration request xml message’s elements description:

No TAG NAME TYPE / SIZE DESCRIPTION REQ CODE LIST

1 < eRegistrationRequest > Start-root-tag Start of the root tag M

2 <Identification> Start-tag Start of Identification segment M

3 <Registry_number> Char(17) Voyage number M

4 <Date> Date Departure Date M

5 <Customs_office_code> Char(4) Customs office code M

6 </Identification> End-tag End of Identification segment -

7 <Totals_segment> Main tag Start of Totals segment M

8 <Total_number_of_bols> Integer Number of B/L M

9 <Total_number_of_containers> Integer Total number of containers (without duplicates , which means – if the same container is used in more than one B/L , in the sum it is summed only one time)

M

10 <Total_number_of_packages> Integer Total Number of packages M

11 <Total_gross_mass> Decimal(18,2) Total Gross mass M

12 </Totals_segment> End-tag End of Totals segment -

13 < /eRegistrationRequest > End-root-tag End of the root tag -

Page 28: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

28

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

4.4 Sample XMLs

Note: In the provided samples the optional fields are allowed and included in xml

with empty value, for now you can continue to generate xmls with providing empty values for non-required fields, but this approach later will be eliminated, and each element which will be included in xml should have non empty value (which mostly concerned to optional fields because in any case for mandatory fields you cannot provide empty values). This is for future improvements, needed to be tested from your side also to be able to provide xmls in that format (include in xml only needed fields with non-empty values, if for optional field you don’t have value no need to include that element with empty content in xml).

4.4.1 Manifest xml sample:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>

<TWM_Manifest>

<Identification_segment>

<Registry_number>MAN1</Registry_number>

<Date>2009-09-30</Date>

<Customs_office_segment>

<Code>01MG</Code>

</Customs_office_segment>

</Identification_segment>

<General_segment>

<Master_information>3333</Master_information>

<Last_discharge>2009-10-01</Last_discharge>

<Arrival_segment>

<Date_of_arrival>2009-10-01</Date_of_arrival>

<Time_of_arrival>18:30:00</Time_of_arrival>

</Arrival_segment>

<Departure_segment>

<Code>FRBGU</Code>

</Departure_segment>

<Destination_segment>

<Code>FRLYI</Code>

</Destination_segment>

<Carrier_segment>

<Code>009950</Code>

<Name/>

<Address/>

</Carrier_segment>

<Transport_segment>

<Name_of_transporter>333</Name_of_transporter>

<Place_of_transporter>3333</Place_of_transporter>

<Mode_of_transport_segment>

<Code>3</Code>

</Mode_of_transport_segment>

<Nationality_of_transport_segment>

<Code>AD</Code>

</Nationality_of_transport_segment>

<Transporter_registration_segment>

<Registration_number/>

<Registration_date/>

</Transporter_registration_segment>

</Transport_segment>

<Tonnage_segment>

<Gross_tonnage>333</Gross_tonnage>

<Net_tonnage>33</Net_tonnage>

Page 29: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

29

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

</Tonnage_segment>

</General_segment>

</TWM_Manifest>

Note : as you can see here this xml is Carrier segment is filled according to the option 1.of the Description 1 (section 3.1 page 16), in this case Name and Address will be set automatically on server side (of course if Code value will be valid and will be one of the values provided in codes list).

4.4.2 BOL xml sample:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>

<TWM_BOL>

<Identification_segment>

<Registry_number>MAN23-1</Registry_number>

<Date>2009-09-20</Date>

<Bol_reference>BL1-MAN23-1</Bol_reference>

<Customs_office_segment>

<Code>01AP</Code>

</Customs_office_segment>

</Identification_segment>

<Bol_specific_segment>

<Line_number>1</Line_number>

<Previous_document_reference/>

<Bol_Nature>23</Bol_Nature>

<Unique_carrier_reference/>

<Total_number_of_containers>2</Total_number_of_containers>

<Total_gross_mass_manifested>10000</Total_gross_mass_manifested>

<Volume_in_cubic_meters/>

<Number_of_sub_bols>0</Number_of_sub_bols>

<Bol_type_segment>

<Code>BL</Code>

</Bol_type_segment>

<Exporter_segment>

<Code>RC636272</Code>

<Name>SHAWS INTERNATIONAL TRA LTD</Name>

<Address>B203 CHINA TOWN AWOLOWO RD IKOYI

LAGOS</Address>

</Exporter_segment>

<Consignee_segment>

<Code>RC121512</Code>

<Name>MICRO TECH INDUSTRIAL LTD</Name>

<Address>176 OLD OJO ROAD SATALITE TOWN,

LAGOS</Address>

</Consignee_segment>

<Notify_segment>

<Code>RC410954</Code>

<Name>LA ROCHE EQUIPMENT NIG LTD</Name>

<Address>64A AMUWO ODOFIN COMM.SCHEME OSHODI

APAPA EXP.WAY</Address>

</Notify_segment>

<Place_of_loading_segment>

<Code>FRBGU</Code>

</Place_of_loading_segment>

<Place_of_unloading_segment>

<Code>FRLYI</Code>

</Place_of_unloading_segment>

<Packages_segment>

<Package_type_code>BG</Package_type_code>

<Number_of_packages>1000</Number_of_packages>

</Packages_segment>

<Shipping_marks/>

Page 30: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

30

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

<Goods_description/>

<Freight_segment>

<Value/>

<Currency/>

<Indicator_segment>

<Code/>

</Indicator_segment>

</Freight_segment>

<Customs_segment>

<Value/>

<Currency/>

</Customs_segment>

<Transport_segment>

<Value/>

<Currency/>

</Transport_segment>

<Insurance_segment>

<Value/>

<Currency/>

</Insurance_segment>

<Seals_segment>

<Number_of_seals>22</Number_of_seals>

<Marks_of_seals>22 33 44</Marks_of_seals>

<Sealing_party_code>CR</Sealing_party_code>

</Seals_segment>

<Information_part_a>we eewwee e wewew ewe wewewe e</Information_part_a>

<Operations_segment>

<Location_segment>

<Code>AP001</Code>

<Information/>

</Location_segment>

</Operations_segment>

</Bol_specific_segment>

<Container>

<Reference>AAAU1111113</Reference>

<Number>4</Number>

<Type>10PH</Type>

<Empty_full>1/1</Empty_full>

<Seals>22</Seals>

<Marks1>33</Marks1>

<Marks2>WW</Marks2>

<Sealing_party>CR</Sealing_party>

</Container>

<Container>

<Reference>AAAU2222220</Reference>

<Number>3</Number>

<Type>10PH</Type>

<Empty_full>1/2</Empty_full>

<Seals>4</Seals>

<Marks1>5</Marks1>

<Marks2>7</Marks2>

<Sealing_party>CR</Sealing_party>

</Container>

</TWM_BOL>

Note: as you can see from the provided sample xml, it contains two containers, so the number of

<Container> segments is two, and also the case is valid when B/L not contains any container (B/L xml not contains any <Container> segment at all).

Page 31: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

31

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

4.4.3 Registration Request xml

You should also specify total values of Manifest in registration request (they will be checked against stored Manifest/BOLs before registration).

<?xml version="1.0" encoding="UTF-8"?>

<eRegistrationRequest>

<Identification>

<Registry_number>MAN1</Registry_number>

<Date>2009-09-30</Date>

<Customs_office_code>01MG</Customs_office_code>

</Identification>

<Totals_segment>

<Total_number_of_bols>3</Total_number_of_bols>

<Total_number_of_containers>2</Total_number_of_containers>

<Total_number_of_packages>3600</Total_number_of_packages>

<Total_gross_mass>30000</Total_gross_mass>

</Totals_segment>

</eRegistrationRequest>

4.4.4 After transaction

After any transaction, user will receive response massage containing information about transaction success or error, and if any error occurs errors information will be received (each error will have unique code). In case of failure of transaction the each <Message> element will contain ‘errorCode’ attribute, the value of this attribute will be the code identifying particular error (all the possible error codes are provided in the section 4, page 47). Ex. <Message errorCode="4502">Manifest 01AP, MAN24-11,

2009-09-23 already exists</Message>

The error message content is - Manifest 01AP, MAN24-11, 2009-09-23 already exists

The error code is - 4502

Page 32: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

32

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

4.4.4.1 Manifest store transaction responses samples

Success message

<?xml version="1.0" encoding="UTF-8"?>

< ManifestStoreTransactionResponse> <Identification>

<CustomsCode>01AP</CustomsCode>

<Registry_number>MAN24-1</Registry_number>

<Date/> </Identification>

<TransactionStatus>ok</TransactionStatus>

<Info>

<Message> Operation completed successfully, Manifest was

stored</Message>

</Info>

</ManifestStoreTransactionResponse>

Error Message

<?xml version="1.0" encoding="UTF-8"?>

< ManifestStoreTransactionResponse>

<Identification>

<CustomsCode>01AP</CustomsCode>

<Registry_number>MAN24-11</Registry_number>

<Date/>

</Identification>

<TransactionStatus>Error</TransactionStatus>

<Info>

<Message errorCode="4502">Manifest 01AP, MAN24-11, 2009-09-23

already exists</Message>

</Info>

</ ManifestStoreTransactionResponse>

Page 33: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

33

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

4.4.4.2 BOL store transaction responses samples

Success message

<?xml version="1.0" encoding="UTF-8"?>

< BolStoreTransactionResponse> <Identification>

<CustomsCode>01AP</CustomsCode>

<Registry_number>MAN24-1</Registry_number>

< Bol_reference>BL1</ Bol_reference>

<Date/>

</Identification>

<TransactionStatus>ok</TransactionStatus>

<Info>

<Message> Operation completed successfully, BOL was

stored</Message>

</Info>

</ BolStoreTransactionResponse>

Error message

<?xml version="1.0" encoding="UTF-8"?>

< BolStoreTransactionResponse> <Identification>

<CustomsCode>01AP</CustomsCode>

<Registry_number>MAN24-1</Registry_number>

< Bol_reference>BL1</ Bol_reference>

<Date/>

</Identification>

<TransactionStatus>Error</TransactionStatus>

<Info>

<Message errorCode="5015">Manifest not found</Message>

</Info>

</ BolStoreTransactionResponse>

Page 34: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

34

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

4.4.4.3 Registration transaction responses samples

In case of registration, you should also receive registration information response if transaction was successful completed.

Success message

<?xml version="1.0" encoding="UTF-8"?>

< ManifestRegisterTransactionResponse> <Identification>

<CustomsCode>01AP</CustomsCode>

<Registry_number>MAN24-1</Registry_number>

<Date/>

</Identification>

<TransactionStatus>ok</TransactionStatus>

<Info>

<Message> Operation completed successfully, Mnaifest is

registered</Message>

</Info>

<Registration_Information>

<Registration_number>912</Registration_number>

<Registration_year>2009</Registration_year>

<Registration_date>2009-09-25</Registration_date>

</Registration_Information>

</ ManifestRegisterTransactionResponse>

Error message

Response message to registration request in case of transaction is completed successfully will contain the registration information (reg number, date ...), in case of transaction failure it will contain the details of the failure (in this case it's obvious that the registration was not performed and thus, the message cannot contain complete registration information).

<?xml version="1.0" encoding="UTF-8"?>

< ManifestRegisterTransactionResponse> <Identification>

<CustomsCode>01AP</CustomsCode>

<Registry_number>MAN24-1</Registry_number>

<Date/>

</Identification>

<TransactionStatus>Error</TransactionStatus>

<Info>

<Message errorCode=”4511”>Total Number of packages must be>

0</Message>

</Info>

</ ManifestRegisterTransactionResponse>

Page 35: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

35

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

5 POSSIBLE ERRORS

Every document (Manifest/BOL) which is going to be stored or registered passes through a set of controls and data validation checks. If no errors found on the document after validation, it will be submitted and you will receive notification that transaction is successfully completed. If transaction is registration you will have also manifest registration information (registration number, year, date) in message too, otherwise if any errors occurred during validation process transaction will be rejected and you will get information about the reasons. In this section, possible errors which can occur during the validation process will be described. In the descriptions we will refer to the tables of xml structures of appropriate messages introduced above to point to particular fields in the message.

Page 36: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

36

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

5.1 Manifest errors

These errors can occur during Manifest document processing store/register: Note: if table in “Fields map in xml” is not specified, then field refers to Table 1 (introduced in section 3.1).

Error Cause/Description Field map in xml

Code Message

4001

Carrier name from XML is not equal to corresponding field from Historized Table. It will be cause of invalid signature

This error is concerned to Carrier part : <Carrier_segment>

<Code/>

<Name/>

<Address/>

</Carrier_segment>

For Carrier segment there are available two options:

1. You can just provide the value for <Code> field and leave <Name> and <Address> fields blank, the value must be provided from given code list – ‘asycuda_carriers.csv’. , in this case the Name and address values will be set on the server side automatically according to its values.

2. If you don’t put any value for <Code> field, in this case the <Name> field is mandatory, you have to provide value for it, and <Address> is optional, can be provided as additional information. In this case there is no link with reference table (code list), the system takes your provided values as they are.

Error code ‘4001’ occurs when you provided value for <Code>, and <Name>, and if value for <Name> field is different from the value which was mentioned in code list. Better to use either 1. or 2. option, but not the mixed combination.

Carrier code - <Code> field 23 Carrier name - <Name> filed 24 Carrier address - <Address> filed 25

4002

Invalid carrier code If Carrier code field has a value, it must be one from the provided code list - ‘asycuda_carriers.csv’. This error occurs when provided value does not match with any valid values existing in the code list.

Carrier code - <Code> field 23

4003 Carrier address from XML is not equal to corresponding field from Historized Table. It will cause invalid signature

Equivalent to error ‘4001’, when you use mixed options 1. and 2., (provide code value from the provided codes list) and also provide value for address field . In case if address does not match to appropriate address value from code list you will get this error.

Carrier address - <Address> filed 25

4006 It is not allowed to create Manifest for ‘cuo_cod’

There are some customs offices which are not accepting manifests. If you try to create manifest for that office you will get this error. Currently the customs offices which are not accepting manifest are 01SM -SEME BORDER POST, and 06ID - IDIROKO BORDER STATION

Customs office code - <Code> field 6

4007

Invalid Customs Office ‘cuo_cod’ For customs office code field there is provided codes list – ‘asycuda_customs_offices.xls’. You will get this error if your provided value does not match with any valid code from the codes list.

Customs office code - <Code> field 6

Page 37: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

37

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

Error Cause/Description Field map in xml

Code Message

4008 Departure Date should be earlier or equal to Arrival Date

The departure date (<Date> field) should be before or equal to date of arrival (<Date_of_arrival> field). Otherwise, you will receive this error.

Departure date - <Date> field 4 Arrival date - <Date_of_arrival> - field 13

4011

Voyage Number and Date are not unique Customs code, Voyage number, Departure date are combining the keys of manifest , which means that it must be unique .This error occurs if Manifest with the same keys is submitted to customs office . Need to be changed the Voyage number or Departure date and resubmit the manifest.

Customs office code – <Code> field 6 Voyage number - <Registry_number> fiield 3 Departure date – <Date> field 4

4014 Invalid Place of Departure code This error occurs when the value of the field does not match to any valid value from provided code

list - ‘asycuda_location.xls’. Place of departure code - <Code> field 17

4015 Invalid Place of Destination code This error occurs when the value of the field does not match to any valid value from provided code

list ‘asycuda_location.xls’. Place of destination code – <Code> field 20

4016 Net weight must be greater than 0 Provided value for Net weight must be positive, otherwise you will get this error. Net weight

<Net_tonnage> field 43

4017 Gross weight must be greater 0 Provided value for Net weight must be positive, otherwise you will get this error. Gross weight

<Gross_tonnage> field 42

4018 Gross weight must be greater or equal to net weight

If value of Net weight is greater than Gross weight you will receive this error. field 32 , field 33

4020 Transporter registration date, should be earlier or equal ‘today’

This is additional information concerned with transporter(vessel , plain) itself .The field is not mandatory to contain any value , but if date provided must be earlier than the date of submission of manifest, you will get this error.

Transporter registration date - <Registration_date> field 38

4021

Place of Departure cannot be equal to the Place of Destination

If provided same values for place of departure code and place of destination code, you will get this error.

Place of departure code - <Code> field 17 Place of destination code – <Code> field 20

4023

Mode of transport code and customs office code are incompatible

The customs office must be compatible with mode of transport available. For example if you fill “put 1” (which means Sea transport) for Airport you will get this error.

Available codes for mode of transports you can find in the provided code list

(asycuda_mode_of_transport.xls).

Mode of transport code – <Code> filed 31 (under <Mode_of_transport_segment>) Customs office code – <Code> field 6

4026 Customs office code input required Customs office code must be filled in. Customs office code –

<Code> field 6

4027 Voyage Number input required Voyage Number is mandatory and must be filled in. Voyage number - <Registry_number> fiield

3

4028 Departure date input required Departure date is mandatory , must be filled in. Departure date –

<Date> field 4

Page 38: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

38

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

Error Cause/Description Field map in xml

Code Message

4029

Carrier name input required This error is concerned to Carrier part : <Carrier_segment>

<Code/>

<Name/>

<Address/>

</Carrier_segment>

If <Code> and <Name> fields are both empty you will receive this error. But as described above for error 4001, if you provide value for <Code> field you can leave <Name> field empty. (You must use either 1. or 2. option described in the error 4001 description).

Carrier Name - <Name> field 24: <Carrier_segment> <Code/> <Name/> <Address/> </Carrier_segment>

4031

Invalid mode of transport The code list is asycuda_mode_of_transport.xls, if your provided value does not match with any valid value from code list, you will get this error.

The Mod of transport code <Code> field 31: <Mode_of_transport_segment> <Code> </Mode_of_transport_segment>

4032

Invalid transport's nationality The code list is countries.xls, if your provided value does not match with any valid value from code list, you will get this error.

The Nationality of transport code <Code> field 34: < Nationality_of_transport_segment <Code> </ Nationality_of_transport_segment >

4033

Place of Departure code input required Place of departure code is mandatory; if the value is empty you will get this error. Place of departure code <Code> field 17: <Departure_segment> <Code/> </Departure_segment>

4034

Place of Destination code input required Place of destination code is mandatory , if the value is empty you will get this error Place of destination code <Code> field 20: <Destination_segment> <Code/> </Destination_segment>

4035

Nationality of transport - country code input required

Nationality of transport code field is mandatory, if no value is provided, you will get this error. The Nationality of transport code <Code> field 27: < Nationality_of_transport_segment <Code> </ Nationality_of_transport_segment >

Page 39: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

39

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

Error Cause/Description Field map in xml

Code Message

4036

Mode of Transport – code input required Mode of Transport – code field is mandatory, if no value provided you will get this error. The Mod of transport code <Code> field 34: <Mode_of_transport_segment> <Code> </Mode_of_transport_segment>

4037

Date of arrival input required Date of arrival field is mandatory, if no value provided you will get this error. The Date of arrival field <Date_of_arrival> field 13: <Arrival_segment> <Date_of_arrival>

4048 Carrier code input required Carrier code is mandatory, if not provided you will get this error. Carrier code - <Code> field 23:

4050 You are not authorized to submit manifest using carrier code 'XXXX'

This error indicating that there is an attempt to submit manifest using carrier code which is not assigned to your profile (each carrier should use his own carrier code; otherwise manifest will be rejected by the system).

Carrier code - <Code> field 23:

4051 Name of the transporter input required The Name of transporter field is Mandatory for shipping lines .Need to be provided. <Name_of_transporter/> field 28:

4500

Number of containers is incorrect [ declared ‘m’ , actual is ‘n’ ]

The number of containers specified in registration request is not equal to the actual existing sum of all the containers on the Bill of Ladings added for current manifest. ‘m’ is your provided value and ‘n’ is the actual sum of the containers. Note: The sum mentioned above actually is the sum of all of the containers of Bill of Ladings without duplicates, The same container can be used in more than one Bill of Lading but it counted in the sum only once.

The total number of containers field in registration request xml : <Total_number_of_containers> field 9 in table 3.

4501 Number of B/Ls is incorrect [ declared ‘m’ , actual is ‘n’ ]

The number of B/Ls specified in registration request is not equal to the actual existing sum of all the Bill of Ladings added for current manifest. ‘m’ is your provided value and ‘n’ is the actual sum of the containers.

The total number of Bill of Ladings field in registration request xml : <Total_number_of_bols> field 8 in table 3.

4502

Manifest ‘c’ ‘v’ ‘d’ already exists

Customs code (c), Voyage number (v) , Departure date (d) are combining the key of manifest , which means this combination must be unique .This error is occurs if Manifest with the same keys already submitted for that customs office and there is an attempt to register manifest with the same keys. Need to be changed Voyage number or Departure date and resubmit the manifest.

Customs office code – <Code> field 6 Voyage number - <Registry_number> field 3 Departure date – <Date> field 4

4503

B/Ls of this Manifest have different natures

All the Bill of Lading of the single Manifest must have the same nature (import, export) .In case there are Bill of ladings submitted for the Manifest which have different natures you will get this error.

Note: Bill of Lading nature is specified in the <Bol_Nature> field of each Bill of Lading.

Manifest registration request

Page 40: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

40

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

Error Cause/Description Field map in xml

Code Message

4504

Total number of packages is less than declared

The total number of packages – the value specified in the registration request (field

<Total_number_of_packages> under <Totals_segment> must be equal to the sum of all

the number of packages of 1st level Bill of Ladings added for the current Manifest. In case provided value is greater than actual sum, you will get this error. Note : 1st level Bill of lading is either the House Bill of Lading which is not sub Bill of Lading of any Master Bill of Lading (which means that for 1st level House Bill of lading has empty value for the

filed <Previous_document_reference> where actually parent is linked ) or Master Bill of

Lading .

The total number of packages field <Total_number_of_packages> field 10 in table 3.

4505

Total number of packages is greater than declared

Equivalent to the error for the same field <Total_number_of_packages>, but in case when

your provided value is less than actual sum.

The total number of packages field in registration request xml <Total_number_of_packages> field 10 in table 3.

4506

Total gross mass is less than declared Equivalent to error 4504 but for field <Total_gross_mass> of registration request. The

comparison logic is the same as in case of sum of number of packages is less than compared to what was declared.

The total gross mass field in registration request xml <Total_gross_mass> field 11 in table 3.

4507 Total gross mass is greater than declared Equivalent to the error 4505, but for the filed <Total_gross_mass> of registration request. The total gross mass field in registration

request xml <Total_gross_mass> field 11 in table 3.

4508 Total Gross Mass input required Field <Total_gross_mass> of registration request is mandatory. Empty value is not

acceptable.

The total gross mass field in registration request xml <Total_gross_mass> field 11 in table 3.

4509 Gross weight must be greater than 0 The value provided for <Total_gross_mass> field of registration request must be positive.

Otherwise you will get this error.

The total gross mass field in registration request xml <Total_gross_mass> field 11 in table 3.

4510

Total Number of packages input required Field <Total_number_of_packages> of registration request is mandatory. Empty value is not

acceptable.

The total number of packages field in registration request xml <Total_number_of_packages> field 10 in table 3.

4511

Total Number of packages must be > 0 The value provided for <Total_number_of_packages> field of registration request must be

positive. Otherwise you will get this error.

The total number of packages field in registration request xml <Total_number_of_packages> field 10 in table 3

4512

Total Number of B/L input required Field <Total_number_of_bols> of registration request is mandatory. Empty value is not

acceptable. Here must be given the actual number of 1st level Bill of Ladings added for current Manifest which is going to be registered.

The total number of bill of ladings field in registration request xml <Total_number_of_bols> field 8 in table 3.

4513 Total number of B/Ls must be > 0 The value provided for <Total_number_of_bols> field of registration request must be

positive. Otherwise you will get this error.

The total number of bill of ladings field in registration request xml <Total_number_of_bols> field 8 in table 3.

Page 41: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

41

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

Error Cause/Description Field map in xml

Code Message

4514

Total Number of containers input required Field <Total_number_of_containers> of registration request is mandatory. Empty value is

not acceptable.

The total number of containers field in registration request xml : <Total_number_of_containers> field 9 in table 3.

4515

Total Number of containers must be greater >= 0

The value provided for <Total_number_of_containers> field of registration request must

be greater or equal to 0. Otherwise you will get this error.

The total number of containers field in registration request xml : <Total_number_of_containers> field 9 in table 3.

4516 Manifest already registered This error occurs in case when you send registration request for already registered Manifest. Manifest registration request

4517 Previous registration request for this manifest is in progress

This error occurs when you send registration request for Manifest but the registration is already in progress and you didn’t yet get response.

Manifest registration request

4518 You don't have access to register this manifest

Every user has access only to the Manifest which is stored by its authentication. In case of this authentication is violated then registration will be rejected, responding by this error.

Manifest registration request

4519

Manifest not found If the Manifest by keys specified in the registration request could not be found (due to it is not exist or not stored yet) this error will returned as a response to registration request.

Identification part of registration request fields 3, 4 and 5 in table 3. : <Identification> <Registry_number/> <Date/> <Customs_office_code/> </Identification>

Page 42: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

42

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

5.2 BOL errors These errors can occur during BOL document processing store/register: Note: If table is not specified in the "Fields map to xml" column then field's number referring to the particular rows of Table 2. , which is represents BOL xml structure.

Error Cause/Description Field map in xml

Code Message

5001Invalid nature of B/L This error concerned with <Bol_Nature>, the acceptable values are only 22, 23 , 24 , 28. If

your provided value is not one of the listed you will get this error.

Bill of Lading nature code field <Bol_Nature> field 13

5002

Exporter/shipper name input required This error is concerned to Exporter part (in particular to <Name> field ): <Exporter_segment>

<Code/>

<Name/>

<Address/>

</Exporter_segment>

See error 5006, option 2. In case if <Code> field’s value is empty the Name field is mandatory. Name should not be empty in this case.

Exporter Name field <Name> field 24: <Exporter_segment> <Code/> <Name/> <Address/> </Exporter_segment>

5003

Consignee name input required The same as Exporter part error 5002 , but for Consignee segment : <Consignee_segment>

<Code/>

<Name/>

<Address/>

</Consignee_segment>

Consignee Name field <Name> field 29: <Consignee_segment> <Code/> <Name/>F <Address/> </Consignee_segment>

5004 B/L line number is not unique for this manifest

B/L line number must be unique within single manifest, for all B/Ls. B/L line number field <Line_number> field 11

5005 B/L reference is not unique for this manifest

B/L line number must be unique within single manifest, for all B/Ls. B/L reference number field <Bol_reference> field 5

Page 43: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

43

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

Error Cause/Description Field map in xml

Code Message

5006

Exporter/shipper name from XML is not equal to corresponding field from Reference Table. It will be cause of invalid signature

This error is concerned to Exporter part : <Exporter_segment>

<Code/>

<Name/>

<Address/>

</Exporter_segment>

For Exporter segment there are available two options :

1. You can just provide the value for <Code> filed and left blank the <Name> and <Address> field, the value must be provided from given code list – ‘asycuda_RCN.csv’. In this case the Name and address values will be set on the server side automatically to according values.

2. You don’t provide any value for <Code> field , in this case the <Name> field is mandatory , you have to provide value for it , and <Address> is optional , can be provided as additional information . In this case there is no link with reference table (code list), the system takes your provided values as they are.

Now concerned to the error, this error occurs in the case when you provided value for <Code>, and <Name>, and if your provided value for <Name> field is different from the value which is mentioned in code list. Note: Better to use either 1. or 2. option, but not the mixed combination.

Exporter Name field <Name> field 24: <Exporter_segment> <Code/> <Name/> <Address/> </Exporter_segment>

5007

Exporter/shipper address from XML is not equal to corresponding field from Reference Table. It will be cause of invalid signature

This error occurs in the case when you provided value for <Code> is not empty (provided from code list), and if your provided value for <Address> field is different from the value which is mentioned in code list. Note: Better to use either 1. or 2. option, but not the mixed combination.

Exporter Address field <Address> field 25: <Exporter_segment> <Code/> <Name/> <Address/> </Exporter_segment>

5008

Invalid Exporter/shipper code This error is related to <Code/>

field from <Exporter_segment> , the provided cods list for this value is ‘asycuda_RCN.csv’.

This error occurs if your provided value does not match with none of the values from the codes list.

Exporter Code field <Code> field 23: <Exporter_segment> <Code/> <Name/> <Address/> </Exporter_segment>

Page 44: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

44

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

Error Cause/Description Field map in xml

Code Message

5009

Consignee name from XML is not equal to corresponding field from Reference Table. It will be cause of invalid signature

The same as error 5006 , but for <Consignee_segment>: <Consignee_segment>

<Code/>

<Name/>

<Address/>

</Consignee_segment>

Consignee Name field <Name> field 29: <Consignee_segment> <Code/> <Name/> <Address/> </Consignee_segment>

5010

Consignee address from XML is not equal to corresponding field from Reference Table. It will be cause of invalid signature

The same as error 5007 , but for <Consignee_segment>:

Consignee Address field <Address> field 30: <Consignee_segment> <Code/> <Name/> <Address/> </Consignee_segment>

5011

Invalid Consignee code The codes list is the same ‘asycuda_RCN.csv’, this Error analog to 5008 error. Consignee Code field <Code> field 28: <Consignee_segment> <Code/> <Name/>F <Address/> </Consignee_segment>

5012

Notify name from XML is not equal to corresponding field from Reference Table. It will be cause of invalid signature

The same as error 5006 , but for <Notify_segment>: <Notify_segment>

<Code/>

<Name/>

<Address/>

</Notify_segment>

Notify Name field < Name > field 34: <Notify_segment> <Code/> <Name/> <Address/> </Notify_segment>

5013

Notify address from XML is not equal to corresponding field from Reference Table. It will be cause of invalid signature

The same as error 5007 , but for <Notify_segment>:

Notify Address field < Address > field 35: <Notify_segment> <Code/> <Name/> <Address/> </Notify_segment>

Page 45: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

45

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

Error Cause/Description Field map in xml

Code Message

5014

Invalid Notify code The codes list is the same ‘asycuda_RCN.csv’, this Error analog to 5008 error. Notify Code field < Code> field 33: <Notify_segment> <Code/> <Name/> <Address/> </Notify_segment>

5015

Manifest not found It means that manifest with specified keys cannot be found. Need to be checked following 3 fields to be specified correctly in Bill of Lading: <Identification_segment>

<Registry_number/>

<Date/>

<Bol_reference/>

<Customs_office_segment>

<Code/>

</Customs_office_segment>

</Identification_segment>

Registry_number (voyage/flight number), Date (departure date), Customs office code. This free values are identifying the manifest to which current bill of lading is going to be linked.

Manifest identification fields in Bill of Lading Voyage number code , Departure date , Customs office fields : <Registry_number/> field 3 <Date/> field 4: <Code/> field 7: <Identification_segment> <Registry_number/> <Date/> <Bol_reference> <Customs_office_segment> <Code/> </Customs_office_segment> </Identification_segment>

5016

This container already exists in the list : 'ctn_id’

If the same container with the same ID is added for the same bill of lading, you will get this error. The same container cannot be mentioned for the same bill of lading more than one time

.Instead of 'ctn_id’ you will have the identification (container reference) which is duplicated

for current bill of lading.

The container Reference (Identification number of container) <Reference> field under each <Container> segment

5017

Container 'ctn_id’ does not exist in Parent B/L

If in 2nd level bill of lading specified container ('ctn_id’) which is not exists in the container

list of its parent bill of lading (master) you will receive this error. If Master bill of lading is de-grouped, in its children bill pf lading can be specified containers only which are exist in the Master’s containers list.

The container Reference (Identification number of container) <Reference> field under each <Container> segment

5020

Master B/L can be only on first level If type of Bill of Lading (identified by <Code/> field under <Bol_type_segment> :

<Bol_type_segment>

<Code/>

</Bol_type_segment> )is Master , it can be only 1st level Bill of Lading , which means the

<Previous_document_reference> field should be empty (no link to any parent ) ,

otherwise you will receive this error .

Bill of Lading type code field : <Code> field 19 : <Bol_type_segment> <Code/> </Bol_type_segment> Previous document reference field 12 : <Previous_document_reference>

Page 46: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

46

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

Error Cause/Description Field map in xml

Code Message

5021

Invalid Place of loading code There is codes list provided for this field ‘asycuda_location.xls’. If your provided value is not match with none of the valid values from the codes list (reference, historized table) you will receive this error.

Place of loading code field 38: <Place_of_loading_segment> <Code/> </Place_of_loading_segment>

5022

Invalid Place of unloading code The value for this field must be taken from the same codes list - asycuda_location.xls’. Place of unloading code field 41: <Place_of_ unloading _segment> <Code/> </Place_of_ unloading _segment>

5025

Previous document does not exist This error can occur during storing 2nd level bill of lading. 2nd level bill of ladings are house bill of lading which are linked as children bill of ladings to the Master bill of lading (parent). This relationship is specified by putting Master bill of lading’s reference number in the House bill of

lading <Previous_document_reference> field (of course the Master bill of lading must

belong to the same Manifest , and must be already stored). This error occurs in case when for 2nd level house bill of lading is specified Master (parent) bill of lading reference which is not exist.

Previous document reference field 12: <Previous_document_reference>

5026

Previous document cannot be degrouped - wrong B/L type.

This error also occurs during storing 2nd level bill of lading. If in house bill of lading for its

parent bill of lading (in <Previous_document_reference> field) is specified reference of a

house bill of lading you will get this error. Note: Only Master bill of lading can be de-grouped.

Previous document reference field 12: <Previous_document_reference>

5027

Package type code of house BOL is not equal to package type code of master BOL

If Master Bill of Lading is de-grouped all its child Bill of Ladings must have the same packages

type specified as in Master Bill of lading in the <Package_type_code>field of the

<Packages_segment> segment :

Bill of Lading packages type code field 44: <Package_type_code>

5030

Container identification input required The container segment is numbered segment which means it can be repeated (and as you can see from bol.xsd – 0 and more times) bill of lading can contain 0 containers which means no

any <Container> segment specified on it. But in case if bill of lading contains at least 1

container and on it is specified any container segment the <Reference> field is mandatory

under <Container> segment (for each container). If for any container in the bill of lading you

didn’t specify it identification (reference) you will get this error.

The container Reference (Identification number of container) <Reference> field under each <Container> segment

5033 Volume (BCM) must be positive The field is optional can be empty, but if any value specified it must be positive (>= 0),

otherwise you will receive this error. Volume in cubic meters field 17: <Volume_in_cubic_meters/>

5034 Total number of containers must be positive

Only positive integers are allowed to be specified for containers number field. In case of specifying negative values you will get this error.

Total number of containers , field 15 <Total_number_of_containers>

5035 Total Container must be less than 5000 The number of containers per each Bill of Lading should not exceed 5000. Total number of containers , field 15

<Total_number_of_containers>

5036

Number of containers does not match to the containers list

The number of containers specified in the <Total_number_of_containers> field of the Bill

of Lading must be equal to the number of the containers added for the Bill of Lading (the

number of <Container> segments).

Total number of containers , field 15 <Total_number_of_containers>

5037 Gross Mass must be > 0 Gross mass cannot be negative value. Total gross mass manifested field

16 <Total_gross_mass_manifested>

Page 47: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

47

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

Error Cause/Description Field map in xml

Code Message

5038 Number of packages must be > 0 Number of packages cannot be negative value. Number of packages field 45 ,

<Number_of_packages>

5039 Reference number format is incorrect The reference number must match to the following format

[A-Z0-9-_]*, which means combination of uppercase letters, numbers, dash (-) and underscore ( _) symbols.

Bill of Lading reference number field 5 <Bol_reference>

5040 Previous document number format is incorrect

The same as above but for <Previous_document_reference> field’s content. Previous document reference field 12: <Previous_document_reference>

5041 Invalid Sealing Party If in under <Container> segment for field <Sealing_party> specified any value, it must

be one from provided codes list - asycuda_seal.xls.

Sealing party code field under <Container segment>

5042 Invalid container type If in under <Container> segment for field <Type> specified any value , it must be one from

provided codes list - asycuda_container.xls

<Type> field under <Container> segment

5043 Invalid empty/full indicator If in under <Container> segment for field <Empty_full> specified any value, it must be

one from provided codes list - asycuda_empty_full_indicator.xls.

<Epty_full> field under <Container> segment

5044

Place of loading cannot be equal to Place of unloading

It is not acceptable to have same location codes for mentioned fields in the Bill of Lading : For example <Place_of_loading_segment>

<Code>FRBGU</Code>

</Place_of_loading_segment>

<Place_of_unloading_segment>

<Code>FRBGU</Code>

</Place_of_unloading_segment>

Place of loading code field 38: Place of unloading code field 41:

5046

Customs office code input required Mandatory field, must be not empty Customs office code field 7: <Customs_office_segment> <Code/> </Customs_office_segment>

5047 Voyage Number input required Mandatory field , must be not empty Voyage number field 3:

<Registry_number>

5048 Departure Date input required Mandatory field, must be not empty Departure date field 4:

<Date>

5049 B/L Reference Number input required Mandatory field, must be not empty Bill of Lading reference number field

5 <Bol_reference>

5050 B/L Line Number input required Mandatory field, must be not empty Bill of Lading line number field 11:

<Line_number>

5051

B/L Type code input required Mandatory field, must be not empty Bill of Lading type code field : <Code> field 19: <Bol_type_segment> <Code/> </Bol_type_segment>

Page 48: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

48

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

Error Cause/Description Field map in xml

Code Message

5052 B/L Nature code input required Mandatory field, must be not empty Bill of Lading nature code field 13:

<Bol_Nature>

5053 Number of containers input required Mandatory field, must be not empty Total number of containers , field 15

<Total_number_of_containers>

5054 Package type code input required Mandatory field, must be not empty Bill of Lading packages type code

field 44: <Package_type_code>

5055 Number of packages input required Mandatory field, must be not empty Number of packages field 45,

<Number_of_packages>

5056 Gross mass input required Mandatory field, must be not empty Total gross mass manifested field

16 <Total_gross_mass_manifested>

5058

Place of loading input required Mandatory field, must be not empty Place of loading code field 38: <Place_of_loading_segment> <Code/> </Place_of_loading_segment>

5059

Place of unloading input required Mandatory field, must be not empty Place of unloading code field 41: <Place_of_ unloading _segment> <Code/> </Place_of_unloading _segment>

5060 Goods description input required Mandatory field, must be not empty Goods description field 48:

<Goods_description>

5063

Invalid B/L type Provided codes list is asycuda_transport_document.xls, the value must be one from

the list.

Bill of Lading type code field : <Code> field 19: <Bol_type_segment> <Code/> </Bol_type_segment>

5064

Invalid type of packages Provided codes list is asycuda_package.xls, the value must be one from the list. Bill of Lading packages type code field 44: <Package_type_code>

5065

Invalid Sealing Party Provided codes list is asycuda_seal.xls, the value must be one from the list. Bill of Lading sealing party code Field 71: <Sealing_party_code>

5077 Total number of containers for airfreight must be 0

Total number of containers should be 0 for airfreight. Total number of containers , field 15 <Total_number_of_containers>

Page 49: EMANIFEST INTERFACE INSTALLATION GUIDE - web2.customs.gov.ng · Registration request – against manifest.xsd, bol.xsd, eRegistration.xsd). This directory is scanned periodically

EMANIFEST INTERFACE INSTALLATION GUIDE

49

Copyright © WEBB FONTAINE WFN-EXT-EMAN00-02-EN-V1.7

This document, property of the issuing firm, cannot be

reproduced nor communicated without written authorization.

Error Cause/Description Field map in xml

Code Message

5078 Container processing is not supported for airfreight

The containers segment should not be included in xml for air waybill. Containers segment , field 81 <Container>

5066

Invalid transit shed Provided codes list is asycuda_transit_sheds.xls, the value must be one from the list. Location code field 76 <Location_segment> <Code></Code> <Information/> </Location_segment>

5505

Sum of gross masses of sub B/Ls is greater than remaining gross mass of parent B/L

This error can occur during storing the 2nd level Bill of Lading, in case when the sum of the gross mass of children Bill of ladings exceeds the gross mass value specified in the Maser (parent) Bill of Lading.

Total gross mass manifested field 16 <Total_gross_mass_manifested>

5506

Sum of packages of sub B/Ls is greater than packages of parent B/L

The same as error 5505, but for sum of number of packages. Number of packages field 45 , <Number_of_packages>

5508

B/L nature code is not the same as parent B/L nature code ( prevDocNatuer )

House Bill of leading if linked to a Master Bill of leading must have the same nature code as its Master, the field : <Bol_Nature> Otherwise you will get this error. Note : Available set of values for B/L nature code is the following - 22 (Export), 23 (Import), 24 (Transit) or 28 (transhipment)

Bill of Lading nature code field 13: <Bol_Nature> Previous document reference field 12: <Previous_document_reference>

5510 You don't have access to store B/L for this manifest

The user has access only to the Manifests created by him, if you are not the creator of the manifest you don’t have access to store Bill of Lading to it.

Bill of Lading store request.

5511 Manifest is already registered If Manifest registered it is not accepted to store Bill of Lading to it. Bill of Lading store request

5513 Manifest registration is in progress In case when Bill of Lading store request is sent when the Manifest registration is already

started, the Bill of Lading store transaction will be rejected.

Bill of Lading store request