openapi: 3.0.0
servers:
  - url: 'https://nies.pgs.customs.gov.mt/ncesws/sys2sys/import/h7/'
    description: Development
  - url: 'https://nies.test.customs.gov.mt/ncesws/sys2sys/import/h7/'
    description: Testing
info:
  description: System-2-System interface for integration of traders' application with NIS
  version: 3.0.0
  title: Import H7 System-2-System API
  contact:
    name: support.customs@gov.mt
paths:
  '/{mrn}':
    get:
      summary: Get Import declaration by MRN
      description: Returns a representation of the Import H7 declaration with the given MRN
      operationId: getImportDeclarationDetails
      parameters:
        - name: mrn
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Import declaration
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/AcknowledgedDeclaration'
              examples:
                acknowledgedDeclarationExample:
                  $ref: '#/components/examples/acknowledgedDeclarationExample'
            application/json:
              schema:
                $ref: '#/components/schemas/AcknowledgedDeclaration'
              examples:
                acknowledgedDeclarationExample:
                  $ref: '#/components/examples/acknowledgedDeclarationExample'
        '403':
          description: Unauthorised
          content:
            application/xml:
              schema:
                type: string
            application/json:
              schema:
                type: string
        '400':
          description: Bad Request
          content:
            application/xml:
              schema:
                type: string
            application/json:
              schema:
                type: string
      security:
        - niesBasic: []
  '/{mrn}/printout':
    get:
      summary: Get a printout of the Import declaration with the given MRN
      description: Returns a Base54 (ISO-8859-1 charset) encoded PDF of the Import declaration with the given MRN. Use this for testing purposes https://emn178.github.io/online-tools/base64_decode_file.html
      operationId: getImportAccompanyingDocument
      parameters:
        - name: mrn
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Import declaration printout
        '403':
          description: Unauthorised
          content:
            text/plain:
              schema:
                type: string
        '400':
          description: Bad Request
          content:
            text/plain:
              schema:
                type: string
      security:
        - niesBasic: []
  /amended:
    post:
      summary: Submit amendment to Import declaration
      description: Returns acknowledged amendment or validation errors.
      operationId: amendImportDeclaration
      responses:
        '200':
          description: Acknowledged
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/AcknowledgedDeclaration'
              examples:
                acknowledgedDeclarationExample:
                  $ref: '#/components/examples/acknowledgedDeclarationExample'
            application/json:
              schema:
                $ref: '#/components/schemas/AcknowledgedDeclaration'
              examples:
                acknowledgedDeclarationExample:
                  $ref: '#/components/examples/acknowledgedDeclarationExample'
        '403':
          description: Rejected
          content:
            application/xml:
              schema:
                type: array
                xml:
                  name: validationError
                items:
                  $ref: '#/components/schemas/ValidationError'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ValidationError'
        '400':
          description: Bad Request
          content:
            application/xml:
              schema:
                type: string
            application/json:
              schema:
                type: string
      security:
        - niesBasic: []
      requestBody:
        required: false
        content:
          application/xml:
            schema:
              $ref: '#/components/schemas/AmendedDeclaration'
            examples:
              amendedDeclarationExample:
                $ref: '#/components/examples/amendedDeclarationExample'
          application/json:
            schema:
              $ref: '#/components/schemas/AmendedDeclaration'
            examples:
              amendedDeclarationExample:
                $ref: '#/components/examples/amendedDeclarationExample'
  /submitted:
    post:
      summary: Submit Import declaration
      description: Returns acknowledged declaration or validation errors. The accept paramenter must be set to true to submit the declaration. If accept is false, the declaration will be validated and an acknowledged declaration is sent as a response, but the declaration will not be submitted.
      operationId: submitImportDeclaration
      parameters:
        - name: accept
          in: query
          required: true
          schema:
            type: boolean
      responses:
        '200':
          description: Acknowledged
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/AcknowledgedDeclaration'
              examples:
                acknowledgedDeclarationExample:
                  $ref: '#/components/examples/acknowledgedDeclarationExample'
            application/json:
              schema:
                $ref: '#/components/schemas/AcknowledgedDeclaration'
              examples:
                acknowledgedDeclarationExample:
                  $ref: '#/components/examples/acknowledgedDeclarationExample'
        '403':
          description: Rejected
          content:
            application/xml:
              schema:
                type: array
                xml:
                  name: validationError
                items:
                  $ref: '#/components/schemas/ValidationError'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ValidationError'
        '400':
          description: Bad Request
          content:
            application/xml:
              schema:
                type: string
            application/json:
              schema:
                type: string
                
      security:
        - niesBasic: []
      requestBody:
        description: Import declaration
        required: true
        content:
          application/xml:
            schema:
              $ref: '#/components/schemas/SubmittedDeclaration'
            examples:
              submittedDeclarationExample:
                $ref: '#/components/examples/submittedDeclarationExample'
              submittedManifestDeclarationExample:
                $ref: '#/components/examples/submittedManifestDeclarationExample'
          application/json:
            schema:
              $ref: '#/components/schemas/SubmittedDeclaration'
            examples:
              submittedDeclarationExample:
                $ref: '#/components/examples/submittedDeclarationExample'
              submittedManifestDeclarationExample:
                $ref: '#/components/examples/submittedManifestDeclarationExample'
components:
  requestBodies: {}
  schemas:
    AcknowledgedDeclaration:
      type: object
      properties:
        lrn:
          type: string
        mrn:
          type: string
        procedureType:
          type: string
          default: 'H7'
        additionalDeclType:
          type: string
        referenceNumberUCR:
          type: string
        grossMass:
          type: number
          format: double
        transportInsuranceCurrencyCode:
          type: string
        transportInsuranceCurrencyRate:
          type: number
          format: double
        transportInsuranceAmount:
          type: number
          format: double
        declarant:
          $ref: '#/components/schemas/TraderWithRepresentation'
        importer:
          $ref: '#/components/schemas/Trader'
        exporter:
          $ref: '#/components/schemas/Trader'
        representative:
          $ref: '#/components/schemas/TraderWithRepresentation'
        locationGoods:
          $ref: '#/components/schemas/LocationGoods'
        previousDocs:
          type: array
          items:
            $ref: '#/components/schemas/PreviousDocument'
          xml:
            wrapped: true
            name: previousDocs
        transportDocs:
          type: array
          items:
            $ref: '#/components/schemas/TransportDocument'
          xml:
            wrapped: true
            name: transportDocs
        supportingDocs:
          type: array
          items:
            $ref: '#/components/schemas/SupportingDocument'
          xml:
            wrapped: true
            name: supportingDocs
        additionalRefs:
          type: array
          items:
            $ref: '#/components/schemas/AdditionalReference'
          xml:
            wrapped: true
            name: additionalRefs
        additionalInformation:
          type: array
          items:
            $ref: '#/components/schemas/AdditionalInformation'
          xml:
            wrapped: true
            name: additionalInformation
        additionalFiscalRefs:
          type: array
          items:
            $ref: '#/components/schemas/AdditionalFiscalReference'
          xml:
            wrapped: true
            name: additionalFiscalRefs
        goodsItems:
          type: array
          items:
            $ref: '#/components/schemas/AcknowledgedGoodsItem'
          xml:
            wrapped: true
            name: goodsItems
        lastUpdated:
          type: string
        createdBy:
          type: string
        submittedBy:
          type: string
        declarationDate:
          type: string
        acceptanceDate:
          type: string
        currentState:
          $ref: '#/components/schemas/State'
        states:
          type: array
          items:
            $ref: '#/components/schemas/State'
          xml:
            wrapped: true
            name: states
        totalIntrinsicValue:
          type: number
          format: double
          default: 'EUR'
        taxCalculations:
          type: array
          items:
            $ref: '#/components/schemas/TaxCalculation'
          xml:
            wrapped: true
            name: taxCalculations
        latestMessage:
          $ref: '#/components/schemas/Message'
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
          xml:
            wrapped: true
            name: messages
      description: An acknowledged Import declaration
      #xml:
      #  name: declaration
    AcknowledgedGoodsItem:
      type: object
      xml:
        name: goodsItem
      properties:
        itemNo:
          type: integer
          format: int32
        description:
          type: string
        referenceNumberUCR:
          type: string
        grossMass:
          type: number
          format: double
        additionalProcedures:
          type: array
          items:
            $ref: '#/components/schemas/AdditionalProcedure'
          xml:
            wrapped: true
            name: additionalProcedures
        currency:
          type: string
          default: 'EUR'
        amount:
          type: number
          format: double
        currencyRate:
          type: number
          format: double
        intrinsicValue:
          type: number
          format: double
        transportInsuranceCurrencyCode:
          type: string
        transportInsuranceCurrencyRate:
          type: number
          format: double
        transportInsuranceAmount:
          type: number
          format: double
        exporter:
          $ref: '#/components/schemas/Trader'
        commodityCode: 
          $ref: '#/components/schemas/CommodityCode'
        packages:
          type: array
          items:
            $ref: '#/components/schemas/Package'
          xml:
            wrapped: true
            name: packages
        previousDocs:
          type: array
          items:
            $ref: '#/components/schemas/PreviousDocument'
          xml:
            wrapped: true
            name: previousDocs
        transportDocs:
          type: array
          items:
            $ref: '#/components/schemas/TransportDocument'
          xml:
            wrapped: true
            name: transportDocs
        supportingDocs:
          type: array
          items:
            $ref: '#/components/schemas/SupportingDocument'
          xml:
            wrapped: true
            name: supportingDocs
        additionalRefs:
          type: array
          items:
            $ref: '#/components/schemas/AdditionalReference'
          xml:
            wrapped: true
            name: additionalRefs
        additionalInformation:
          type: array
          items:
            $ref: '#/components/schemas/AdditionalInformation'
          xml:
            wrapped: true
            name: additionalInformation
      description: An acknowledged goods item
    CommodityCode:
      type: object
      properties:
        harmonisedSystemSubHeadingCode: 
          type: string
    AdditionalProcedure:
      type: object
      xml:
        name: additionalProcedure
      properties:
        additionalProcedure:
          type: string
    PreviousDocument:
      type: object
      xml:
        name: previousDoc
      properties:
        type:
          type: string
        refNo:
          type: string
    TransportDocument:
      type: object
      xml:
        name: transportDoc
      properties:
        type:
          type: string
        refNo:
          type: string
    SupportingDocument:
      type: object
      xml:
        name: supportingDoc
      properties:
        type:
          type: string
        refNo:
          type: string
    AdditionalReference:
      type: object
      xml:
        name: additionalRef
      properties:
        type:
          type: string
        refNo:
          type: string
    AdditionalInformation:
      type: object
      xml:
        name: additionalInformationEntry
      properties:
        code:
          type: string
        text:
          type: string
    AdditionalFiscalReference:
      type: object
      xml:
        name: additionalFiscalRef
      properties:
        role:
          type: string
        vatId:
          type: string
    Message:
      type: object
      xml:
        name: message
      properties:
        type:
          type: string
        text:
          type: string
        timestamp:
          type: string
        user:
          type: string
    Package:
      type: object
      xml:
        name: package
      properties:
        numberOfPackages:
          type: integer
          format: int32
    State:
      type: object
      xml:
        name: state
      properties:
        description:
          type: string
        timestamp:
          type: string
        user:
          type: string
        additionalInfo:
          type: string
    TaxCalculation:  ##
      type: object
      xml:
        name: taxCalculation
      properties:
        lineNo:
          type: integer
          format: int32
        itemNo:
          type: integer
          format: int32
        tariffType:
          type: string
        accountNo:
          type: string
        taxType:
          type: string
        calcType:
          type: integer
          format: int32
        base:
          type: number
          format: double
        rate:
          type: number
          format: double
        amount:
          type: number
          format: double
        calculationDate:
          type: string
    Trader:
      type: object
      properties:
        eori:
          type: string
        name:
          type: string
        streetAndNumber:
          type: string
        postalCode:
          type: string
        city:
          type: string
        countryCode:
          type: string
    TraderWithContactPerson:
      type: object
      properties:
        eori:
          type: string
        name:
          type: string
        streetAndNumber:
          type: string
        postalCode:
          type: string
        city:
          type: string
        countryCode:
          type: string
        contactPerson:
          $ref: '#/components/schemas/ContactPerson'
    TraderWithRepresentation:
      type: object
      properties:
        eori:
          type: string
        name:
          type: string
        streetAndNumber:
          type: string
        postalCode:
          type: string
        city:
          type: string
        countryCode:
          type: string
        status:
          type: integer
        contactPerson:
          $ref: '#/components/schemas/ContactPerson'
    ContactPerson:
      type: object
      properties:
        name:
          type: string
        phone:
          type: string
        email:
          type: string
    LocationGoods:
      type: object
      properties:
        typeOfLocation: 
          type: string
        qualifierOfIdentification:
          type: string
        unlocode:
          type: string
        authorisationNumber:
          type: string
        additionalIdentifier:
          type: string
        customsOffice:
          type: string
        latitude:
          type: string
        longitude:
          type: string
        eoIdentificationNo:
          type: string
        streetAndNumber:
          type: string
        postcode:
          type: string
        city:
          type: string
        country:
          type: string
        paPostcode:
          type: string
        paHouseNo:
          type: string
        paCountry:
          type: string
    ValidationError:
      type: object
      properties:
        code:
          type: string
        errorPointer:
          type: string
        validationDate:
          type: string
          format: date-time
        description:
          type: string
    AmendedDeclaration:
      type: object
      properties:
        lrn:
          type: string
        mrn:
          type: string
        procedureType:
          type: string
          default: 'H7'
        additionalDeclType:
          type: string
        referenceNumberUCR:
          type: string
        grossMass:
          type: number
          format: double
        transportInsuranceCurrencyCode:
          type: string
        transportInsuranceAmount:
          type: number
          format: double
        declarant:
          $ref: '#/components/schemas/TraderWithContactPerson'
        importer:
          $ref: '#/components/schemas/Trader'
        exporter:
          $ref: '#/components/schemas/Trader'
        representative:
          $ref: '#/components/schemas/TraderWithRepresentation'
        locationGoods:
          $ref: '#/components/schemas/LocationGoods'
        previousDocs:
          type: array
          items:
            $ref: '#/components/schemas/PreviousDocument'
          xml:
            wrapped: true
            name: previousDocs
        transportDocs:
          type: array
          items:
            $ref: '#/components/schemas/TransportDocument'
          xml:
            wrapped: true
            name: transportDocs
        supportingDocs:
          type: array
          items:
            $ref: '#/components/schemas/SupportingDocument'
          xml:
            wrapped: true
            name: supportingDocs
        additionalRefs:
          type: array
          items:
            $ref: '#/components/schemas/AdditionalReference'
          xml:
            wrapped: true
            name: additionalRefs
        additionalInformation:
          type: array
          items:
            $ref: '#/components/schemas/AdditionalInformation'
          xml:
            wrapped: true
            name: additionalInformation
        additionalFiscalRefs:
          type: array
          items:
            $ref: '#/components/schemas/AdditionalFiscalReference'
          xml:
            wrapped: true
            name: additionalFiscalRefs
        goodsItems:
          type: array
          items:
            $ref: '#/components/schemas/SubmittedGoodsItem'
          xml:
            wrapped: true
            name: goodsItems
      description: An amended Import declaration
    SubmittedGoodsItem:
      type: object
      xml:
        name: goodsItem
      properties:
        itemNo:
          type: integer
          format: int32
        description:
          type: string
        referenceNumberUCR:
          type: string
        grossMass:
          type: number
          format: double
        additionalProcedures:
          type: array
          items:
            $ref: '#/components/schemas/AdditionalProcedure'
          xml:
            wrapped: true
            name: additionalProcedures
        currency:
          type: string
          default: 'EUR'
        amount:
          type: number
          format: double
        transportInsuranceCurrencyCode:
          type: string
        transportInsuranceAmount:
          type: number
          format: double
        exporter:
          $ref: '#/components/schemas/Trader'
        commodityCode:
          $ref: '#/components/schemas/CommodityCode'
        packages:
          type: array
          items:
            $ref: '#/components/schemas/Package'
          xml:
            wrapped: true
            name: packages
        previousDocs:
          type: array
          items:
            $ref: '#/components/schemas/PreviousDocument'
          xml:
            wrapped: true
            name: previousDocs
        transportDocs:
          type: array
          items:
            $ref: '#/components/schemas/TransportDocument'
          xml:
            wrapped: true
            name: transportDocs
        supportingDocs:
          type: array
          items:
            $ref: '#/components/schemas/SupportingDocument'
          xml:
            wrapped: true
            name: supportingDocs
        additionalRefs:
          type: array
          items:
            $ref: '#/components/schemas/AdditionalReference'
          xml:
            wrapped: true
            name: additionalRefs
        additionalInformation:
          type: array
          items:
            $ref: '#/components/schemas/AdditionalInformation'
          xml:
            wrapped: true
            name: additionalInformation
      description: A submitted goods item
    SubmittedDeclaration:
      type: object
      properties:
        lrn:
          type: string
        procedureType:
          type: string
          default: 'H7'
        additionalDeclType:
          type: string
        referenceNumberUCR:
          type: string
        grossMass:
          type: number
          format: double
        transportInsuranceCurrencyCode:
          type: string
        transportInsuranceAmount:
          type: number
          format: double
        declarant:
          $ref: '#/components/schemas/TraderWithContactPerson'
        importer:
          $ref: '#/components/schemas/Trader'
        exporter:
          $ref: '#/components/schemas/Trader'
        representative:
          $ref: '#/components/schemas/TraderWithRepresentation'
        locationGoods:
          $ref: '#/components/schemas/LocationGoods'
        previousDocs:
          type: array
          items:
            $ref: '#/components/schemas/PreviousDocument'
          xml:
            wrapped: true
            name: previousDocs
        transportDocs:
          type: array
          items:
            $ref: '#/components/schemas/TransportDocument'
          xml:
            wrapped: true
            name: transportDocs
        supportingDocs:
          type: array
          items:
            $ref: '#/components/schemas/SupportingDocument'
          xml:
            wrapped: true
            name: supportingDocs
        additionalRefs:
          type: array
          items:
            $ref: '#/components/schemas/AdditionalReference'
          xml:
            wrapped: true
            name: additionalRefs
        additionalInformation:
          type: array
          items:
            $ref: '#/components/schemas/AdditionalInformation'
          xml:
            wrapped: true
            name: additionalInformation
        additionalFiscalRefs:
          type: array
          items:
            $ref: '#/components/schemas/AdditionalFiscalReference'
          xml:
            wrapped: true
            name: additionalFiscalRefs
        goodsItems:
          type: array
          items:
            $ref: '#/components/schemas/SubmittedGoodsItem'
          xml:
            wrapped: true
            name: goodsItems
      description: A submitted Import declaration
  ### object examples
  examples:
    submittedDeclarationExample:
      value:
        procedureType: H7
        additionalDeclType: A
        referenceNumberUCR: UCR-number
        declarant:
          eori: MT32323232
        importer:
          eori: MT32323232
          name: test32
          streetAndNumber: test street
          postalCode: tst1278
          city: city
          countryCode: MT
        exporter:
          name: test-name
          streetAndNumber: test-streetAndNumber
          postalCode: zzz1111
          city: test-city
          countryCode: MT
        representative:
          eori: MT77777777
          status: 2
          contactPerson:
            name: Tom
            phone: 99887766
            email: tom231xyz@ygmail.com
        locationGoods:
          typeOfLocation: A
          qualifierOfIdentification: V
          customsOffice: MT000113
        additionalFiscalRefs:
          role: FR5
          vatId: MT10000000
        goodsItems:
          itemNo: 1
          description: Ceramic
          grossMass: 100
          #additionalProcedure: C07 #F48
          additionalProcedures:
            additionalProcedure: C07
          currency: EUR
          amount: 140
          transportInsuranceCurrencyCode: EUR
          transportInsuranceAmount: 5
          commodityCode:
            harmonisedSystemSubHeadingCode: 840490 #690721
          packages:
            numberOfPackages: 30
          previousDocs:
            type: 705
            refNo: ref1234
          supportingDocs:
            type: N380
            refNo: ref3464
          additionalInformation:
            code: 11111
            text: test
      summary: H7 submitted declaration example
    acknowledgedDeclarationExample:
      value:
        lrn: 2021100014159
        mrn: 21MT150400010166X8
        procedureType: H7
        additionalDeclType: A
        referenceNumberUCR: UCR-number
        declarant:
          eori: MT32323232
          name: test32
          streetAndNumber: test street
          postalCode: tst1278
          city: city
          countryCode: MT
          representationType: DIRECT
        importer:
          eori: MT32323232
          name: test32
          streetAndNumber: test street
          postalCode: tst1278
          city: city
          countryCode: MT
        exporter:
          name: test-name
          streetAndNumber: test-streetAndNumber
          postalCode: zzz1111
          city: test-city
          countryCode: MT
        representative:
          eori: MT77777777
          status: 2
        locationGoods:
          typeOfLocation: A
          qualifierOfIdentification: V
          customsOffice: MT000113
        additionalFiscalRefs:
          role: FR5
          vatId: MT10000000
        goodsItems:
          itemNo: 1
          description: Ceramic
          grossMass: 100
          additionalProcedures:
            additionalProcedure: C07
          currency: EUR
          amount: 140
          intrinsicValue: 140
          transportInsuranceCurrencyCode: EUR
          transportInsuranceCurrencyRate: 1
          transportInsuranceAmount: 5
          commodityCode:
            harmonisedSystemSubHeadingCode: 840490
          packages:
            numberOfPackages: 30
          previousDocs:
            type: 705
            refNo: ref1234
          supportingDocs:
            type: N380
            refNo: ref3464
          additionalInformation:
            code: 11111
            text: test
        lastUpdated: testerUser1
        createdBy: testerUser1
        submittedBy: testerUser1
        declarationDate: 2021-04-15T10:00
        acceptanceDate: 2021-04-15T10:10
        currentState:
          description: AWAITING AUTOMATED RISK ANALYSIS
          timeStamp: 2021-04-15T10:27
          user: SYSTEM
        states:
          - description: SUBMITTED
            timeStamp: 2021-04-15T10:10
            user: testerUser1
          - description: ACKNOWLEDGED
            timeStamp: 2021-04-15T10:10
            user: testerUser1
          - description: ACCEPTED
            timeStamp: 2021-04-15T10:10
            user: testerUser1
          - description: AWAITING AUTOMATED RISK ANALYSIS
            timeStamp: 2021-04-15T10:27
            user: SYSTEM
        taxCalculations:
          accountNo: 1900
          amount: 16.0
          base: 90.0
          calcType: 1900
          calculationDate: 2021-04-15T10:10
          itemNo: 1
          lineNo: 1
          rate: 0.18
          tariffType: VAT
          taxType: A45
        totalIntrinsicValue: 140
      summary: H7 acknowledged declaration example
    submittedManifestDeclarationExample:
      value:
        lrn: 2020600014136
        procedureType: H7
        additionalDeclType: A
        referenceNumberUCR: UCR-number
        declarant:
          eori: MT32323232
        importer:
          eori: MT32323232
          name: test32
          streetAndNumber: test street
          postalCode: tst1278
          city: city
          countryCode: MT
        exporter:
          name: test-name
          streetAndNumber: test-streetAndNumber
          postalCode: zzz1111
          city: test-city
          countryCode: MT
        representative:
          eori: MT77777777
          status: 2
        locationGoods:
          typeOfLocation: A
          qualifierOfIdentification: V
          customsOffice: MT000113
        additionalFiscalRef:
          role: FR5
          vatId: MT10000000
        goodsItems:
          itemNo: 1
          description: Ceramic
          grossMass: 100
          additionalProcedures:
            additionalProcedure: F48
          currency: EUR
          amount: 140
          commodityCode:
            harmonisedSystemSubHeadingCode: 690721
          packages:
            numberOfPackages: 30
          previousDocs:
            type: 705
            refNo: ref1234
          supportingDocs:
            type: N380
            refNo: ref3464
          additionalInformation:
            code: 11111
            text: test
      summary: A Dummy H7 manifest declaration example
    amendedDeclarationExample:
      value:
        lrn: 2021100014159
        mrn: 21MT150400010166X8
        procedureType: H7
        additionalDeclType: A
        referenceNumberUCR: UCR-number
        declarant:
          eori: MT32323232
        importer:
          eori: MT32323232
          name: test32
          streetAndNumber: test street
          postalCode: tst1278
          city: city
          countryCode: MT
        exporter:
          name: test-name
          streetAndNumber: test-streetAndNumber
          postalCode: zzz1111
          city: test-city
          countryCode: MT
        representative:
          eori: MT77777777
          status: 2
        locationGoods:
          typeOfLocation: A
          qualifierOfIdentification: V
          customsOffice: MT000113
        additionalFiscalRefs:
          role: FR5
          vatId: MT10000000
        goodsItems:
          itemNo: 1
          description: Ceramic ++
          grossMass: 100
          additionalProcedure:
            additionalProcedure: F48
          currency: EUR
          amount: 140
          commodityCode:
            harmonisedSystemSubHeadingCode: 690721
          packages:
            numberOfPackages: 30
          additionalInformation:
            code: 11111
            text: test
      summary: H7 amended declaration example
  securitySchemes:
    niesBasic:
      type: http
      scheme: basic
