Interface MaterialModel

interface MaterialModel {
    CAS?: Workflow<string>;
    additionalInformation?: Meta<string>;
    agentId?: string;
    applicantId?: string;
    beneficiaryId?: string;
    brokerId?: string;
    buyerArticleNumber?: Workflow<string>;
    buyerId?: string;
    buyerOrderNumber?: Workflow<string>;
    carrierId?: string;
    code?: Workflow<string>;
    consigneeId?: string;
    countryOfOriginHistory?: ItemCountryOfOrigin[];
    creationType?: MasterDataCreationType;
    customProperties?: {
        [key: string]: string;
    };
    customerId?: string;
    customsLaw?: {
        customsTariffNumber?: CustomsTariffNumber & Workflow<any>;
        customsTariffNumberByCountry?: {
            [alpha2Code: string]: string;
        };
        preferences?: Workflow<TradePreference>[];
        procedure?: Workflow<string>;
        typeOfBusiness?: Workflow<TypeOfBusinessType>;
    };
    declarantId?: string;
    description?: Workflow<string>;
    destinationCountry?: AddressModel;
    dimensions?: Dimensions & Workflow<any>;
    documentDescription?: Workflow<string>;
    documentTypeCodes?: ExtendedDocumentTypeCode[];
    eanNumber?: Workflow<string>;
    exporterId?: string;
    grossWeight?: Weight & Workflow<number>;
    hasAnyUserEditedProperties?: boolean;
    id?: string;
    importerId?: string;
    itemPrice?: Money & Workflow<number>;
    matchingType?: "tariffNumber" | "materialNumber";
    materialNumber?: Workflow<string>;
    meta?: {
        userCreated?: boolean;
        userEdited?: boolean;
        version?: number;
    };
    meursing?: Meursing[];
    netWeight?: Weight & Workflow<number>;
    obligaterId?: string;
    priceHistory?: ItemPrice[];
    projectId?: string;
    recipientId?: string;
    recipients?: {
        id: string;
        name: string;
    }[];
    shipper?: string;
    shipperCountry?: AddressModel;
    shipperId?: string;
    tags?: string[];
    unitOfMeasurement?: UnitOfMeasurement;
    units?: Workflow<{
        number?: number;
        type?: string;
    }>[];
    warehouseId?: string;
}

Properties

CAS?: Workflow<string>
additionalInformation?: Meta<string>
agentId?: string

Owning agent, if any. Used for matching by tariff number.

applicantId?: string

Owning applicant, if any. Used for matching by tariff number.

beneficiaryId?: string

Owning beneficiary, if any. Used for matching by tariff number.

brokerId?: string

Owning broker, if any. Used for matching by tariff number.

buyerArticleNumber?: Workflow<string>
buyerId?: string

Owning buyer, if any. Used for matching by tariff number.

buyerOrderNumber?: Workflow<string>
carrierId?: string

Owning carrier, if any. Used for matching by tariff number.

code?: Workflow<string>
consigneeId?: string

Owning consignee, if any. Used for matching by tariff number.

countryOfOriginHistory?: ItemCountryOfOrigin[]
creationType?: MasterDataCreationType
customProperties?: {
    [key: string]: string;
}

Key/Value pairs for custom properties

Type declaration

  • [key: string]: string
customerId?: string
customsLaw?: {
    customsTariffNumber?: CustomsTariffNumber & Workflow<any>;
    customsTariffNumberByCountry?: {
        [alpha2Code: string]: string;
    };
    preferences?: Workflow<TradePreference>[];
    procedure?: Workflow<string>;
    typeOfBusiness?: Workflow<TypeOfBusinessType>;
}

Type declaration

  • Optional customsTariffNumber?: CustomsTariffNumber & Workflow<any>

    Customs tariff number for "default" country (the one set in the project settings tariff number tree system)

  • Optional customsTariffNumberByCountry?: {
        [alpha2Code: string]: string;
    }

    Map to foreign tariff number per country, e.g. "CH" -> "12345678"

    • [alpha2Code: string]: string
  • Optional preferences?: Workflow<TradePreference>[]
  • Optional procedure?: Workflow<string>
  • Optional typeOfBusiness?: Workflow<TypeOfBusinessType>
declarantId?: string

Owning declarant, if any. Used for matching by tariff number.

description?: Workflow<string>
destinationCountry?: AddressModel

Used for matching aggregated.toAddress, only for export cases

dimensions?: Dimensions & Workflow<any>
documentDescription?: Workflow<string>
documentTypeCodes?: ExtendedDocumentTypeCode[]
eanNumber?: Workflow<string>
exporterId?: string

Owning exporter, if any. Used for matching by tariff number.

grossWeight?: Weight & Workflow<number>
hasAnyUserEditedProperties?: boolean

Redundant meta property needed for search scoring

id?: string
importerId?: string

Owning exporter, if any. Used for matching by tariff number.

itemPrice?: Money & Workflow<number>
matchingType?: "tariffNumber" | "materialNumber"
materialNumber?: Workflow<string>
meta?: {
    userCreated?: boolean;
    userEdited?: boolean;
    version?: number;
}

Type declaration

  • Optional userCreated?: boolean
  • Optional userEdited?: boolean
  • Optional version?: number
meursing?: Meursing[]
netWeight?: Weight & Workflow<number>
obligaterId?: string

Owning obligater, if any. Used for matching by tariff number.

priceHistory?: ItemPrice[]
projectId?: string
recipientId?: string

Owning recipient, if any. Used for matching by tariff number.

recipients?: {
    id: string;
    name: string;
}[]

Different materialNumbers might be applied for different recipients. The recipientId refers to a stakeholder.

Type declaration

  • id: string
  • name: string
shipper?: string

Stakeholder reference, owning shipper entity. Each materialNumber can only be uniquely matched to the same shipper there might be more than one materialNumber for different recipients!

shipperCountry?: AddressModel

Used for matching item.countryOfOrigin / aggregated.fromAddress (fallback), only for import cases

shipperId?: string
tags?: string[]

Tags for material data

unitOfMeasurement?: UnitOfMeasurement
units?: Workflow<{
    number?: number;
    type?: string;
}>[]
warehouseId?: string

Owning warehouse, if any. Used for matching by tariff number.