openapi: 3.0.3
info:
  title: Interface API Gamma Refonte
  description: Interface API Gamma Refonte
  version: 1.0.0
  contact:
    name: DGDDI - Douane Française
    url: https://www.douane.gouv.fr/

paths:
  # Chemin facultatif
  /801:
    post:
      summary: Définition d'un message 801
      operationId: message801
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BodyType801'
      parameters:
        - $ref: '../api/headerHttp.yaml#/components/parameters/messageId'
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '../api/retourHttp.yaml#/components/schemas/retour200'

components:
  schemas:
    BodyType801:
      type: object
      properties:
        EADESADContainer:
          $ref: '#/components/schemas/EADESADContainerType'
      required:
        - EADESADContainer

    EADESADContainerType:
      type: object
      properties:
        Attributes:
          $ref: '#/components/schemas/AttributesType801'
        ConsigneeTrader:
          $ref: '#/components/schemas/ConsigneeTraderType801'
        ExciseMovement:
          $ref: '#/components/schemas/ExciseMovementType801'
        ConsignorTrader:
          $ref: '#/components/schemas/ConsignorTraderType801'
        PlaceOfDispatchTrader:
          $ref: '#/components/schemas/PlaceOfDispatchTraderType801'
        DispatchImportOffice:
          $ref: '#/components/schemas/DispatchImportOfficeType801'
        ComplementConsigneeTrader:
          $ref: '#/components/schemas/ComplementConsigneeTraderType801'
        DeliveryPlaceTrader:
          $ref: '#/components/schemas/DeliveryPlaceTraderType801'
        DeliveryPlaceCustomsOffice:
          $ref: '#/components/schemas/DeliveryPlaceCustomsOfficeType801'
        CompetentAuthorityDispatchOffice:
          $ref: '#/components/schemas/CompetentAuthorityDispatchOfficeType801'
        TransportArrangerTrader:
          $ref: '#/components/schemas/TransportArrangerTraderType801'
        FirstTransporterTrader:
          $ref: '#/components/schemas/FirstTransporterTraderType801'
        TransportDetails:
          type: array
          maxItems: 99
          items:
            $ref: '#/components/schemas/TransportDetailsType801'
        DocumentCertificate:
          type: array
          maxItems: 9
          items:
            $ref: '#/components/schemas/DocumentCertificateType801'
        EadEsad:
          $ref: '#/components/schemas/EadEsadType801'
        HeaderEadEsad:
          $ref: '#/components/schemas/HeaderEadEsadType801'
        TransportMode:
          $ref: '#/components/schemas/TransportModeType801'
        MovementGuarantee:
          $ref: '#/components/schemas/MovementGuaranteeType801'
        BodyEadEsad:
          type: array
          maxItems: 999
          items:
            $ref: '#/components/schemas/BodyEadEsadType801'
      required:
        - OrigineMessageType
        - Attributes
        - ConsignorTrader
        - TransportDetails
        - EadEsad
        - HeaderEadEsad
        - MovementGuarantee
        - BodyEadEsad
        - TransportMode
        - CompetentAuthorityDispatchOffice

    ConsigneeTraderType801:
      type: object
      description: |
        | **Nom de l'élément** | **Référentiels** | **Règles**                                           | **Conditions** |
        |----------------------|------------------|------------------------------------------------------|----------------|
        | Traderid             |                  | IC_RG_R045<br>IC_RG_R271<br>IC_RG_R272<br>FR_RG_R151 | IC_RG_C010     |
        | TraderName           |                  |                                                      |                |
        | StreetName           |                  |                                                      |                |
        | StreetNumber         |                  |                                                      |                |
        | Postcode             |                  |                                                      |                |
        | City                 |                  |                                                      |                |
        | language             | Ref_28 (BC12)    |                                                      | IC_RG_C002     |
        | EoriNumber           |                  |                                                      | IC_RG_C180     |
      properties:
        Traderid:
          $ref: '../ie/types.yaml#/components/schemas/TraderidType'
        TraderName:
          $ref: '../ie/types.yaml#/components/schemas/TraderNameType'
        StreetName:
          $ref: '../ie/types.yaml#/components/schemas/StreetNameType'
        StreetNumber:
          $ref: '../ie/types.yaml#/components/schemas/StreetNumberType'
        Postcode:
          $ref: '../ie/types.yaml#/components/schemas/PostcodeType'
        City:
          $ref: '../ie/types.yaml#/components/schemas/CityType'
        EoriNumber:
          $ref: '../ie/types.yaml#/components/schemas/EoriNumberType'
        __language:
          $ref: '../ie/types.yaml#/components/schemas/LanguageCodeType'
      required:
        - TraderName
        - StreetName
        - Postcode
        - City

    ConsignorTraderType801:
      type: object
      description: |
        | **Nom de l'élément** | **Référentiels** | **Règles**               | **Conditions** |
        |----------------------|------------------|--------------------------|----------------|
        | TraderExciseNumber   |                  | IC_RG_R044<br>IC_RG_R271 |                |
        | TraderName           |                  | FR_RG_R128               |                |
        | StreetName           |                  | FR_RG_R128               |                |
        | StreetNumber         |                  | FR_RG_R128               |                |
        | Postcode             |                  | FR_RG_R128               |                |
        | City                 |                  | FR_RG_R128               |                |
        | language             | Ref_28 (BC12)    | FR_RG_R026               | IC_RG_C002     |
      properties:
        TraderExciseNumber:
          $ref: '../ie/types.yaml#/components/schemas/ExciseNumberType'
        TraderName:
          $ref: '../ie/types.yaml#/components/schemas/TraderNameType'
        StreetName:
          $ref: '../ie/types.yaml#/components/schemas/StreetNameType'
        StreetNumber:
          $ref: '../ie/types.yaml#/components/schemas/StreetNumberType'
        Postcode:
          $ref: '../ie/types.yaml#/components/schemas/PostcodeType'
        City:
          $ref: '../ie/types.yaml#/components/schemas/CityType'
        __language:
          $ref: '../ie/types.yaml#/components/schemas/LanguageCodeType'
      required:
        - TraderExciseNumber
        - TraderName
        - StreetName
        - Postcode
        - City


    ExciseMovementType801:
      type: object
      description: |
        | **Nom de l'élément**             | **Référentiels** | **Règles**                             | **Conditions** |
        |----------------------------------|------------------|----------------------------------------|----------------|
        | AdministrativeReferenceCode      |                  | IC_RG_R030<br>IC_RG_R235<br>IC_RG_R273 |                |
        | DateAndTimeOfValidationOfEadEsad |                  |                                        |                |
      properties:
        AdministrativeReferenceCode:
          $ref: '../ie/types.yaml#/components/schemas/AdministrativeReferenceCodeType'
        DateAndTimeOfValidationOfEadEsad:
          $ref: '../ie/types.yaml#/components/schemas/DateTimeType'
      required:
        - DateAndTimeOfValidationOfEadEsad

    PlaceOfDispatchTraderType801:
      type: object
      description: |
        | **Nom de l'élément**    | **Référentiels** | **Règles**               | **Conditions** |
        |-------------------------|------------------|--------------------------|----------------|
        | ReferenceOfTaxWarehouse |                  | IC_RG_R044<br>IC_RG_R271 | IC_RG_C208     |
        | TraderName              |                  |                          | IC_RG_C207     |
        | StreetName              |                  |                          | IC_RG_C207     |
        | StreetNumber            |                  |                          |                |
        | Postcode                |                  |                          | IC_RG_C207     |
        | City                    |                  |                          | IC_RG_C207     |
        | language                | Ref_28 (BC12)    | FR_RG_R026               | IC_RG_C002     |
      properties:
        ReferenceOfTaxWarehouse:
          $ref: '../ie/types.yaml#/components/schemas/ReferenceOfTaxWarehouseType'
        TraderName:
          $ref: '../ie/types.yaml#/components/schemas/TraderNameType'
        StreetName:
          $ref: '../ie/types.yaml#/components/schemas/StreetNameType'
        StreetNumber:
          $ref: '../ie/types.yaml#/components/schemas/StreetNumberType'
        Postcode:
          $ref: '../ie/types.yaml#/components/schemas/PostcodeType'
        City:
          $ref: '../ie/types.yaml#/components/schemas/CityType'
        __language:
          $ref: '../ie/types.yaml#/components/schemas/LanguageCodeType'


    DispatchImportOfficeType801:
      type: object
      description: |
        | **Nom de l'élément** | **Référentiels** | **Règles**               | **Conditions** |
        |----------------------|------------------|--------------------------|----------------|
        | ReferenceNumber      |                  | IC_RG_R032<br>IC_RG_R236 |                |
      properties:
        ReferenceNumber:
          $ref: '../ie/types.yaml#/components/schemas/ReferenceNumberType'
      required:
        - ReferenceNumber

    ComplementConsigneeTraderType801:
      type: object
      description: |
        | **Nom de l'élément**                     | **Référentiels** | **Règles** | **Conditions** |
        |------------------------------------------|------------------|------------|----------------|
        | MemberStateCode                          | Ref_31 (BC11)    |            |                |
        | SerialNumberOfCertificate<br>OfExemption |                  |            |                |
        | DateNAttConsign                          |                  |            |                |
      properties:
        MemberStateCode:
          $ref: '../ie/types.yaml#/components/schemas/MemberStateCodeType'
        SerialNumberOfCertificateOfExemption:
          $ref: '../ie/types.yaml#/components/schemas/SerialNumberOfCertificateOfExemptionType'
        DateNAttConsign:
          $ref: '../ie/types.yaml#/components/schemas/DateType'
      required:
        - MemberStateCode

    DeliveryPlaceTraderType801:
      type: object
      description: |
        | **Nom de l'élément** | **Référentiels** | **Règles**                             | **Conditions** |
        |----------------------|------------------|----------------------------------------|----------------|
        | Traderid             |                  | IC_RG_R045<br>IC_RG_R271<br>IC_RG_R272 | IC_RG_C074     |
        | TraderName           |                  |                                        | IC_RG_C079     |
        | StreetName           |                  |                                        | IC_RG_C078     |
        | StreetNumber         |                  |                                        |                |
        | Postcode             |                  |                                        | IC_RG_C078     |
        | City                 |                  |                                        | IC_RG_C078     |
        | language             | Ref_28 (BC12)    | FR_RG_R026                             | IC_RG_C002     |
      properties:
        Traderid:
          $ref: '../ie/types.yaml#/components/schemas/TraderidType'
        TraderName:
          $ref: '../ie/types.yaml#/components/schemas/TraderNameType'
        StreetName:
          $ref: '../ie/types.yaml#/components/schemas/StreetNameType'
        StreetNumber:
          $ref: '../ie/types.yaml#/components/schemas/StreetNumberType'
        Postcode:
          $ref: '../ie/types.yaml#/components/schemas/PostcodeType'
        City:
          $ref: '../ie/types.yaml#/components/schemas/CityType'
        __language:
          $ref: '../ie/types.yaml#/components/schemas/LanguageCodeType'

    DeliveryPlaceCustomsOfficeType801:
      type: object
      description: |
        | **Nom de l'élément** | **Référentiels** | **Règles**               | **Conditions** |
        |----------------------|------------------|--------------------------|----------------|
        | ReferenceNumber      |                  | IC_RG_R032<br>IC_RG_R236 |                |
      properties:
        ReferenceNumber:
          $ref: '../ie/types.yaml#/components/schemas/ExciseOfficeCodeType'
      required:
        - ReferenceNumber

    TransportArrangerTraderType801:
      type: object
      description: |
        | **Nom de l'élément** | **Référentiels** | **Règles** | **Conditions** |
        |----------------------|------------------|------------|----------------|
        | VatNumber            |                  |            |                |
        | TraderName           |                  |            |                |
        | StreetName           |                  |            |                |
        | StreetNumber         |                  |            |                |
        | Postcode             |                  |            |                |
        | City                 |                  |            |                |
        | language             | Ref_28 (BC12)    | FR_RG_R026 | IC_RG_C002     |
      properties:
        VatNumber:
          $ref: '../ie/types.yaml#/components/schemas/VatNumberType'
        TraderName:
          $ref: '../ie/types.yaml#/components/schemas/TraderNameType'
        StreetName:
          $ref: '../ie/types.yaml#/components/schemas/StreetNameType'
        StreetNumber:
          $ref: '../ie/types.yaml#/components/schemas/StreetNumberType'
        Postcode:
          $ref: '../ie/types.yaml#/components/schemas/PostcodeType'
        City:
          $ref: '../ie/types.yaml#/components/schemas/CityType'
        __language:
          $ref: '../ie/types.yaml#/components/schemas/LanguageCodeType'
      required:
        - TraderName
        - StreetName
        - Postcode
        - City

    FirstTransporterTraderType801:
      type: object
      description: |
        | **Nom de l'élément** | **Référentiels** | **Règles** | **Conditions** |
        |----------------------|------------------|------------|----------------|
        | VatNumber            |                  |            |                |
        | TraderName           |                  |            |                |
        | StreetName           |                  |            |                |
        | StreetNumber         |                  |            |                |
        | Postcode             |                  |            |                |
        | City                 |                  |            |                |
        | language             | Ref_28 (BC12)    | FR_RG_R026 | IC_RG_C002     |
      properties:
        VatNumber:
          $ref: '../ie/types.yaml#/components/schemas/VatNumberType'
        TraderName:
          $ref: '../ie/types.yaml#/components/schemas/TraderNameType'
        StreetName:
          $ref: '../ie/types.yaml#/components/schemas/StreetNameType'
        StreetNumber:
          $ref: '../ie/types.yaml#/components/schemas/StreetNumberType'
        Postcode:
          $ref: '../ie/types.yaml#/components/schemas/PostcodeType'
        City:
          $ref: '../ie/types.yaml#/components/schemas/CityType'
        __language:
          $ref: '../ie/types.yaml#/components/schemas/LanguageCodeType'

    TransportDetailsType801:
      type: object
      description: |
        | **Nom de l'élément**         | **Référentiels** | **Règles** | **Conditions** |
        |------------------------------|------------------|------------|----------------|
        | TransportUnitCode            | Ref_53  (BC35)   |            |                |
        | IdentityOfTransportUnits     |                  |            | IC_RG_C156     |
        | CommercialSealIdentification |                  |            |                |
        | ComplementaryInformation     |                  |            | IC_RG_C127     |
        | language                     | Ref_28 (BC12)    |            | IC_RG_C002     |
        | SealInformation              |                  |            |                |
        | language                     | Ref_28 (BC12)    |            | IC_RG_C002     |
      properties:
        TransportUnitCode:
          $ref: '../ie/types.yaml#/components/schemas/TransportUnitCodeType'
        IdentityOfTransportUnits:
          $ref: '../ie/types.yaml#/components/schemas/IdentityOfTransportUnitsType'
        CommercialSealIdentification:
          $ref: '../ie/types.yaml#/components/schemas/CommercialSealIdentificationType'
        ComplementaryInformation:
          $ref: '#/components/schemas/LSDComplementaryInformationType801'
        SealInformation:
          $ref: '#/components/schemas/LSDSealInformationType801'
        __language:
          $ref: '../ie/types.yaml#/components/schemas/LanguageCodeType'
      required:
        - TransportUnitCode

    DocumentCertificateType801:
      type: object
      description: |
        | **Nom de l'élément** | **Référentiels** | **Règles** | **Conditions** |
        |----------------------|------------------|------------|----------------|
        | DocumentType         | Ref_15 (BC106)   |            | IC_RG_C006     |
        | DocumentReference    |                  |            | IC_RG_C202     |
        | DocumentDescription  |                  |            | IC_RG_C006     |
        | ReferenceOfDocument  |                  |            | IC_RG_C006     |
        | language             | Ref_28 (BC12)    | FR_RG_R026 | IC_RG_C002     |
      properties:
        DocumentType:
          $ref: '../ie/types.yaml#/components/schemas/DocumentTypeType'
        DocumentReference:
          $ref: '../ie/types.yaml#/components/schemas/DocumentReferenceType'
        DocumentDescription:
          $ref: '#/components/schemas/LSDDocumentDescriptionType801'
        ReferenceOfDocument:
          $ref: '#/components/schemas/LSDReferenceOfDocumentType801'
        __language:
          $ref: '../ie/types.yaml#/components/schemas/LanguageCodeType'

    EadEsadType801:
      type: object
      description: |
        | **Nom de l'élément** | **Référentiels** | **Règles** | **Conditions** |
        |----------------------|------------------|------------|----------------|
        | LocalReferenceNumber |                  |            |                |
        | InvoiceNumber        |                  |            |                |
        | InvoiceDate          |                  |            |                |
        | OriginTypeCode       | Ref_37 (TC30)    | IC_RG_R260 |                |
        | DateOfDispatch       |                  |            |                |
        | TimeOfDispatch       |                  |            |                |
        | UpstreamArc          |                  | IC_RG_R030 |                |
        | ImportSad            |                  |            |                |
      properties:
        LocalReferenceNumber:
          $ref: '../ie/types.yaml#/components/schemas/LocalReferenceNumberType'
        InvoiceNumber:
          $ref: '../ie/types.yaml#/components/schemas/InvoiceNumberType'
        InvoiceDate:
          $ref: '../ie/types.yaml#/components/schemas/DateType'
        OriginTypeCode:
          $ref: '../ie/tcl.yaml#/components/schemas/OriginTypeCode'
        DateOfDispatch:
          $ref: '../ie/types.yaml#/components/schemas/DateType'
        TimeOfDispatch:
          $ref: '../ie/types.yaml#/components/schemas/TimeType'
        UpstreamArc:
          $ref: '../ie/types.yaml#/components/schemas/AdministrativeReferenceCodeType'
        ImportSad:
          type: array
          maxItems: 9
          items:
            $ref: '#/components/schemas/ImportSadType801'
      required:
        - LocalReferenceNumber
        - InvoiceNumber
        - OriginTypeCode
        - DateOfDispatch

    ImportSadType801:
      type: object
      description: |
        | **Nom de l'élément** | **Référentiels** | **Règles** | **Conditions** |
        |----------------------|------------------|------------|----------------|
        | ImportSadType        |                  |            |                |
      properties:
        ImportSadNumber:
          $ref: '../ie/types.yaml#/components/schemas/ImportSadNumberType'
      required:
        - ImportSadNumber

    HeaderEadEsadType801:
      type: object
      description: |
        | **Nom de l'élément**          | **Référentiels** | **Règles**               | **Conditions** |
        |-------------------------------|------------------|--------------------------|----------------|
        | SequenceNumber                |                  | IC_RG_R059<br>IC_RG_R232 |                |
        | DateAndTimeOfUpdateValidation |                  |                          |                |
        | DestinationTypeCode           | Ref_13 (TC32)    | IC_RG_R258               |                |
        | JourneyTime                   |                  | IC_RG_R054               |                |
        | TransportArrangement          |                  |                          |                |
      properties:
        SequenceNumber:
          $ref: '../ie/types.yaml#/components/schemas/SequenceNumberType'
        DateAndTimeOfUpdateValidation:
          $ref: '../ie/types.yaml#/components/schemas/DateTimeType'
        DestinationTypeCode:
          $ref: '../ie/tcl.yaml#/components/schemas/DestinationTypeCode'
        JourneyTime:
          $ref: '../ie/types.yaml#/components/schemas/JourneyTimeType'
        TransportArrangement:
          $ref: '../ie/tcl.yaml#/components/schemas/TransportArrangement'
      required:
        - SequenceNumber
        - DateAndTimeOfUpdateValidation
        - TransportArrangement
        - DestinationTypeCode
        - JourneyTime

    TransportModeType801:
      type: object
      description: |
        | **Nom de l'élément**     | **Référentiels** | **Règles** | **Conditions** |
        |--------------------------|------------------|------------|----------------|
        | TransportModeCode        | Ref_52 (BC67)    |            |                |
        | ComplementaryInformation |                  |            | IC_RG_C127     |
        | language                 | Ref_28 (BC12)    |            | IC_RG_C002     |
      properties:
        TransportModeCode:
          $ref: '../ie/types.yaml#/components/schemas/TransportModeCodeType'
        ComplementaryInformation:
          $ref: '#/components/schemas/LSDComplementaryInformationType801'
        __language:
          $ref: '../ie/types.yaml#/components/schemas/LanguageCodeType'
      required:
        - TransportModeCode

    MovementGuaranteeType801:
      type: object
      description: |
        | **Nom de l'élément** | **Référentiels** | **Règles** | **Conditions** |
        |----------------------|------------------|------------|----------------|
        | GuarantorTypeCode    | Ref_26 (TC29)    |            |                |
        | GuarantorTrader      |                  |            |                |
      properties:
        GuarantorTypeCode:
          $ref: '../ie/tcl.yaml#/components/schemas/GuarantorTypeCode'
        GuarantorTrader:
          type: array
          maxItems: 2
          items:
            $ref: '#/components/schemas/GuarantorTraderType801'
      required:
        - GuarantorTypeCode

    GuarantorTraderType801:
      type: object
      description: |
        | **Nom de l'élément** | **Référentiels** | **Règles**               | **Conditions** |
        |----------------------|------------------|--------------------------|----------------|
        | TraderExciseNumber   |                  | IC_RG_R027<br>IC_RG_R271 |                |
        | VatNumber            |                  |                          |                |
        | TraderName           |                  |                          | IC_RG_C101     |
        | StreetName           |                  |                          | IC_RG_C101     |
        | StreetNumber         |                  |                          |                |
        | City                 |                  |                          | IC_RG_C101     |
        | Postcode             |                  |                          | IC_RG_C101     |
        | language             | Ref_28 (BC12)    | FR_RG_R026               | IC_RG_C002     |
      properties:
        TraderExciseNumber:
          $ref: '../ie/types.yaml#/components/schemas/ExciseNumberType'
        VatNumber:
          $ref: '../ie/types.yaml#/components/schemas/VatNumberType'
        TraderName:
          $ref: '../ie/types.yaml#/components/schemas/TraderNameType'
        StreetName:
          $ref: '../ie/types.yaml#/components/schemas/StreetNameType'
        StreetNumber:
          $ref: '../ie/types.yaml#/components/schemas/StreetNumberType'
        Postcode:
          $ref: '../ie/types.yaml#/components/schemas/PostcodeType'
        City:
          $ref: '../ie/types.yaml#/components/schemas/CityType'
        __language:
          $ref: '../ie/types.yaml#/components/schemas/LanguageCodeType'


    BodyEadEsadType801:
      type: object
      description: |
        | **Nom de l'élément**                 | **Référentiels** | **Règles**                               | **Conditions**           |
        |--------------------------------------|------------------|------------------------------------------|--------------------------|
        | BodyRecordUniqueReference            |                  | IC_RG_R232<br>IC_RG_BR037<br>IC_RG_BR040 |                          |
        | ExciseProductCode                    | Ref_21 (BC36)    | IC_RG_R215<br>IC_RG_R263                 |                          |
        | CnCode                               |                  | IC_RG_R211<br>IC_RG_R232<br>IC_RG_BR039  |                          |
        | Quantity                             |                  | IC_RG_R232                               |                          |
        | GrossMass                            |                  | IC_RG_R219<br>IC_RG_R232                 |                          |
        | NetMass                              |                  | IC_RG_BR038<br>IC_RG_R219<br>IC_RG_R232  |                          |
        | AlcoholicStrength                    |                  | IC_RG_R237                               | IC_RG_C047<br>IC_RG_C152 |
        | DegreePlato                          |                  | IC_RG_R232                               | IC_RG_C048<br>IC_RG_C152 |
        | FiscalMark                           |                  |                                          |                          |
        | FiscalMarkUsedFlag                   | Ref_99 (TC27)    |                                          |                          |
        | DesignationOfOrigin                  |                  |                                          |                          |
        | IndependentSmallProducersDeclaration |                  |                                          |                          |
        | SizeOfProducer                       |                  | IC_RG_R232                               |                          |
        | Density                              |                  | IC_RG_R232                               | IC_RG_C049               |
        | CommercialDescription                |                  |                                          | IC_RG_C002               |
        | BrandNameOfProducts                  |                  |                                          | IC_RG_C002               |
        | MaturationPeriodOrAgeOfProducts      |                  |                                          | IC_RG_C002               |
        | CodeCompl                            |                  |                                          |                          |
        | PrixFact                             |                  |                                          |                          |
      properties:
        BodyRecordUniqueReference:
          $ref: '../ie/types.yaml#/components/schemas/BodyRecordUniqueReferenceType'
        ExciseProductCode:
          $ref: '../ie/types.yaml#/components/schemas/ExciseProductCodeType'
        CnCode:
          $ref: '../ie/types.yaml#/components/schemas/CnCodeType'
        CodeCompl:
          $ref: '../fr/fr-v3.yaml#/components/schemas/CodeCompl'
        PrixFact:
          $ref: '../fr/fr-v3.yaml#/components/schemas/Prix'
        Quantity:
          $ref: '../ie/types.yaml#/components/schemas/QuantityType'
        GrossMass:
          $ref: '../ie/types.yaml#/components/schemas/GrossMassType'
        NetMass:
          $ref: '../ie/types.yaml#/components/schemas/NetMassType'
        AlcoholicStrengthByVolumeInPercentage:
          $ref: '../ie/types.yaml#/components/schemas/AlcoholicStrengthType'
        DegreePlato:
          $ref: '../ie/types.yaml#/components/schemas/DegreePlatoType'
        FiscalMark:
          $ref: '#/components/schemas/LSDFiscalMarkType801'
        FiscalMarkUsedFlag:
          $ref: '../ie/tcl.yaml#/components/schemas/Flag'
        DesignationOfOrigin:
          $ref: '#/components/schemas/LSDDesignationOfOriginType801'
        IndependentSmallProducersDeclaration:
          $ref: '#/components/schemas/LSDIndependentSmallProducersDeclarationType801'
        SizeOfProducer:
          $ref: '../ie/types.yaml#/components/schemas/SizeOfProducerType'
        Density:
          $ref: '../ie/types.yaml#/components/schemas/DensityType'
        CommercialDescription:
          $ref: '#/components/schemas/LSDCommercialDescriptionType801'
        BrandNameOfProducts:
          $ref: '#/components/schemas/LSDBrandNameOfProductsType801'
        MaturationPeriodOrAgeOfProducts:
          $ref: '#/components/schemas/LSDMaturationPeriodOrAgeOfProductsType801'
        Package:
          type: array
          maxItems: 99
          items:
            $ref: '#/components/schemas/PackageType801'
        WineProduct:
          $ref: '#/components/schemas/WineProductType801'
      required:
        - BodyRecordUniqueReference
        - ExciseProductCode
        - CnCode
        - Quantity
        - GrossMass
        - NetMass
        - Package

    PackageType801:
      type: object
      description: |
        | **Nom de l'élément**         | **Référentiels** | **Règles** | **Conditions** |
        |------------------------------|------------------|------------|----------------|
        | KindOfPackages               | Ref_38 (BC17)    |            |                |
        | NumberOfPackages             |                  | IC_RG_R251 | IC_RG_C073     |
        | ShippingMarks                |                  |            | IC_RG_C203     |
        | language                     | Ref_28 (BC12)    |            | IC_RG_C002     |
        | CommercialSealIdentification |                  |            |                |
        | SealInformation              |                  |            |                |
        | language                     | Ref_28 (BC12)    |            | IC_RG_C002     |
      properties:
        KindOfPackages:
          $ref: '../ie/types.yaml#/components/schemas/KindOfPackagesType'
        NumberOfPackages:
          $ref: '../ie/types.yaml#/components/schemas/NumberOfPackagesType'
        ShippingMarks:
          $ref: '../ie/types.yaml#/components/schemas/ShippingMarksType'
        CommercialSealIdentification:
          $ref: '../ie/types.yaml#/components/schemas/CommercialSealIdentificationType'
        SealInformation:
          $ref: '#/components/schemas/LSDSealInformationType801'
        __language:
          $ref: '../ie/types.yaml#/components/schemas/LanguageCodeType'
      required:
        - KindOfPackages

    WineProductType801:
      type: object
      description: |
        | **Nom de l'élément**      | **Référentiels** | **Règles** | **Conditions** |
        |---------------------------|------------------|------------|----------------|
        | WineProductCategory       | Ref_05 (TC38)    |            |                |
        | WineGrowingZoneCode       | Ref_57 (BC40)    |            |                |
        | ThirdCountryOfOrigin      |                  | IC_RG_R051 | IC_RG_C045     |
        | ThirdCountryOfDestination |                  |            |                |
        | OtherInformation          |                  |            |                |
        | language                  | Ref_28 (BC12)    |            | IC_RG_C002     |
      properties:
        WineProductCategory:
          $ref: '../ie/tcl.yaml#/components/schemas/CategoryOfWineProduct'
        WineGrowingZoneCode:
          $ref: '../ie/types.yaml#/components/schemas/WineGrowingZoneCodeType'
        ThirdCountryOfOrigin:
          $ref: '../ie/types.yaml#/components/schemas/ThirdCountryOfOriginType'
        ThirdCountryOfDestination:
          $ref: '../ie/types.yaml#/components/schemas/ThirdCountryOfOriginType'
        OtherInformation:
          $ref: '#/components/schemas/LSDOtherInformationType801'
        WineOperation:
          type: array
          maxItems: 99
          items:
            $ref: '#/components/schemas/WineOperationType801'
        __language:
          $ref: '../ie/types.yaml#/components/schemas/LanguageCodeType'
      required:
        - WineProductCategory

    WineOperationType801:
      type: object
      description: |
        | **Nom de l'élément** | **Référentiels** | **Règles** | **Conditions** |
        |----------------------|------------------|------------|----------------|
        | WineOperationCode    |                  |            |                |
      properties:
        WineOperationCode:
          $ref: '../ie/types.yaml#/components/schemas/WineOperationCodeType'
      required:
        - WineOperationCode

    AttributesType801:
      type: object
      description: |
        | **Nom de l'élément**     | **Référentiels** | **Règles** | **Conditions** |
        |--------------------------|------------------|------------|----------------|
        | SubmissionMessage        |                  |            |                |
        | Deferred Submission flag |                  |            |                |
      properties:
        SubmissionMessageType:
          $ref: '../ie/tcl.yaml#/components/schemas/SubmissionType'
        DeferredSubmissionFlag:
          $ref: '../ie/tcl.yaml#/components/schemas/Flag'
      required:
        - SubmissionMessageType
        - DeferredSubmissionFlag

    CompetentAuthorityDispatchOfficeType801:
      type: object
      description: |
        | **Nom de l'élément** | **Référentiels** | **Règles**               | **Conditions** |
        |----------------------|------------------|--------------------------|----------------|
        | ReferenceNumber      |                  | IC_RG_R032<br>IC_RG_R236 |                |
      properties:
        ReferenceNumber:
          $ref: '../ie/types.yaml#/components/schemas/ExciseOfficeCodeType'
      required:
        - ReferenceNumber

    LSDBrandNameOfProductsType801:
      type: object
      properties:
        _content_:
          $ref: '../ie/types.yaml#/components/schemas/BrandNameOfProductsType'
        __language:
          $ref: '../ie/types.yaml#/components/schemas/LanguageCodeType'
      required:
        - __language
        - _content_

    LSDCommercialDescriptionType801:
      type: object
      properties:
        _content_:
          $ref: '../ie/types.yaml#/components/schemas/CommercialDescriptionType'
        __language:
          $ref: '../ie/types.yaml#/components/schemas/LanguageCodeType'
      required:
        - __language
        - _content_

    LSDComplementaryInformationType801:
      type: object
      properties:
        _content_:
          $ref: '../ie/types.yaml#/components/schemas/ComplementaryInformationType'
        __language:
          $ref: '../ie/types.yaml#/components/schemas/LanguageCodeType'
      required:
        - __language
        - _content_

    LSDDesignationOfOriginType801:
      type: object
      properties:
        _content_:
          $ref: '../ie/types.yaml#/components/schemas/DesignationOfOriginType'
        __language:
          $ref: '../ie/types.yaml#/components/schemas/LanguageCodeType'
      required:
        - __language
        - _content_

    LSDIndependentSmallProducersDeclarationType801:
      type: object
      properties:
        _content_:
          $ref: '../ie/types.yaml#/components/schemas/IndependentSmallProducersDeclarationType'
        __language:
          $ref: '../ie/types.yaml#/components/schemas/LanguageCodeType'
      required:
        - __language
        - _content_

    LSDMaturationPeriodOrAgeOfProductsType801:
      type: object
      properties:
        _content_:
          $ref: '../ie/types.yaml#/components/schemas/MaturationPeriodOrAgeOfProductsType'
        __language:
          $ref: '../ie/types.yaml#/components/schemas/LanguageCodeType'
      required:
        - __language
        - _content_

    LSDDocumentDescriptionType801:
      type: object
      properties:
        _content_:
          $ref: '../ie/types.yaml#/components/schemas/DocumentDescriptionType'
        __language:
          $ref: '../ie/types.yaml#/components/schemas/LanguageCodeType'
      required:
        - __language
        - _content_

    LSDFiscalMarkType801:
      type: object
      properties:
        _content_:
          $ref: '../ie/types.yaml#/components/schemas/FiscalMarkType'
        __language:
          $ref: '../ie/types.yaml#/components/schemas/LanguageCodeType'
      required:
        - __language
        - _content_

    LSDOtherInformationType801:
      type: object
      properties:
        _content_:
          $ref: '../ie/types.yaml#/components/schemas/OtherInformationType'
        __language:
          $ref: '../ie/types.yaml#/components/schemas/LanguageCodeType'
      required:
        - __language
        - _content_

    LSDReferenceOfDocumentType801:
      type: object
      properties:
        _content_:
          $ref: '../ie/types.yaml#/components/schemas/ReferenceOfDocumentType'
        __language:
          $ref: '../ie/types.yaml#/components/schemas/LanguageCodeType'
      required:
        - __language
        - _content_

    LSDSealInformationType801:
      type: object
      properties:
        _content_:
          $ref: '../ie/types.yaml#/components/schemas/SealInformationType'
        __language:
          $ref: '../ie/types.yaml#/components/schemas/LanguageCodeType'
      required:
        - __language
        - _content_

