| POST | /api/creditNote | Add new credit note |
|---|
import Foundation
import ServiceStack
/**
* Credit Note
*/
// @Api(Description="Credit Note")
// @ApiResponse(Description="Add credit note request received", IsDefaultResponse=true, StatusCode=200)
// @ApiResponse(Description="Credit note not accepted, Confirm Sender GLN", ResponseType=typeof(UnauthorizedAccessException), StatusCode=403)
public class AddCreditNote : Codable
{
/**
* Credit Note model containing all of the Credit Note data
*/
// @ApiMember(Description="Credit Note model containing all of the Credit Note data", ParameterType="model")
public var creditNote:InvoiceMessage
required public init(){}
}
public class InvoiceMessage : Codable
{
public var header:Header
public var invoice:InvoiceClass
required public init(){}
}
// @DataContract
public class Header : Codable
{
// @DataMember(Name="documentIdentification")
public var documentIdentification:DocumentIdentification
// @DataMember(Name="sender")
public var sender:Partner
// @DataMember(Name="receiver")
public var receiver:Partner
required public init(){}
}
// @DataContract
public class DocumentIdentification : Codable
{
// @DataMember(Name="identifier")
public var identifier:String
// @DataMember(Name="type")
public var type:String
// @DataMember(Name="creationDateAndTime")
public var creationDateAndTime:Date
required public init(){}
}
// @DataContract
public class Partner : Codable
{
// @DataMember(Name="identifier")
public var identifier:Identifier
// @DataMember(Name="contactInformation")
public var contactInformation:[ContactInformation] = []
required public init(){}
}
// @DataContract
public class Identifier : Codable
{
// @DataMember(Name="authority")
public var authority:String
// @DataMember(Name="text")
public var text:String
required public init(){}
}
// @DataContract
public class ContactInformation : Codable
{
required public init(){}
}
public class InvoiceClass : BaseDocument
{
public var countryOfSupplyOfGoods:String
public var buyer:TransactionalParty
public var seller:TransactionalParty
public var payee:TransactionalParty
public var payer:TransactionalParty
public var shipFrom:TransactionalParty
public var shipTo:TransactionalParty
public var ultimateConsignee:TransactionalParty
public var supplierAccountReceivable:String
public var invoiceIdentification:String
public var invoice:Invoice
public var salesOrder:DocumentReference
public var purchaseOrder:DocumentReference
public var deliveryNote:DocumentReference
public var tradeAgreement:DocumentReference
public var shipmentTransportationInformation:ShipmentTransportationInformation
public var paymentTerms:String
public var invoiceLineItem:[InvoiceLineItem] = []
public var invoiceTotals:InvoiceTotals
required public init(){ super.init() }
private enum CodingKeys : String, CodingKey {
case countryOfSupplyOfGoods
case buyer
case seller
case payee
case payer
case shipFrom
case shipTo
case ultimateConsignee
case supplierAccountReceivable
case invoiceIdentification
case invoice
case salesOrder
case purchaseOrder
case deliveryNote
case tradeAgreement
case shipmentTransportationInformation
case paymentTerms
case invoiceLineItem
case invoiceTotals
}
required public init(from decoder: Decoder) throws {
try super.init(from: decoder)
let container = try decoder.container(keyedBy: CodingKeys.self)
countryOfSupplyOfGoods = try container.decodeIfPresent(String.self, forKey: .countryOfSupplyOfGoods)
buyer = try container.decodeIfPresent(TransactionalParty.self, forKey: .buyer)
seller = try container.decodeIfPresent(TransactionalParty.self, forKey: .seller)
payee = try container.decodeIfPresent(TransactionalParty.self, forKey: .payee)
payer = try container.decodeIfPresent(TransactionalParty.self, forKey: .payer)
shipFrom = try container.decodeIfPresent(TransactionalParty.self, forKey: .shipFrom)
shipTo = try container.decodeIfPresent(TransactionalParty.self, forKey: .shipTo)
ultimateConsignee = try container.decodeIfPresent(TransactionalParty.self, forKey: .ultimateConsignee)
supplierAccountReceivable = try container.decodeIfPresent(String.self, forKey: .supplierAccountReceivable)
invoiceIdentification = try container.decodeIfPresent(String.self, forKey: .invoiceIdentification)
invoice = try container.decodeIfPresent(Invoice.self, forKey: .invoice)
salesOrder = try container.decodeIfPresent(DocumentReference.self, forKey: .salesOrder)
purchaseOrder = try container.decodeIfPresent(DocumentReference.self, forKey: .purchaseOrder)
deliveryNote = try container.decodeIfPresent(DocumentReference.self, forKey: .deliveryNote)
tradeAgreement = try container.decodeIfPresent(DocumentReference.self, forKey: .tradeAgreement)
shipmentTransportationInformation = try container.decodeIfPresent(ShipmentTransportationInformation.self, forKey: .shipmentTransportationInformation)
paymentTerms = try container.decodeIfPresent(String.self, forKey: .paymentTerms)
invoiceLineItem = try container.decodeIfPresent([InvoiceLineItem].self, forKey: .invoiceLineItem) ?? []
invoiceTotals = try container.decodeIfPresent(InvoiceTotals.self, forKey: .invoiceTotals)
}
public override func encode(to encoder: Encoder) throws {
try super.encode(to: encoder)
var container = encoder.container(keyedBy: CodingKeys.self)
if countryOfSupplyOfGoods != nil { try container.encode(countryOfSupplyOfGoods, forKey: .countryOfSupplyOfGoods) }
if buyer != nil { try container.encode(buyer, forKey: .buyer) }
if seller != nil { try container.encode(seller, forKey: .seller) }
if payee != nil { try container.encode(payee, forKey: .payee) }
if payer != nil { try container.encode(payer, forKey: .payer) }
if shipFrom != nil { try container.encode(shipFrom, forKey: .shipFrom) }
if shipTo != nil { try container.encode(shipTo, forKey: .shipTo) }
if ultimateConsignee != nil { try container.encode(ultimateConsignee, forKey: .ultimateConsignee) }
if supplierAccountReceivable != nil { try container.encode(supplierAccountReceivable, forKey: .supplierAccountReceivable) }
if invoiceIdentification != nil { try container.encode(invoiceIdentification, forKey: .invoiceIdentification) }
if invoice != nil { try container.encode(invoice, forKey: .invoice) }
if salesOrder != nil { try container.encode(salesOrder, forKey: .salesOrder) }
if purchaseOrder != nil { try container.encode(purchaseOrder, forKey: .purchaseOrder) }
if deliveryNote != nil { try container.encode(deliveryNote, forKey: .deliveryNote) }
if tradeAgreement != nil { try container.encode(tradeAgreement, forKey: .tradeAgreement) }
if shipmentTransportationInformation != nil { try container.encode(shipmentTransportationInformation, forKey: .shipmentTransportationInformation) }
if paymentTerms != nil { try container.encode(paymentTerms, forKey: .paymentTerms) }
if invoiceLineItem.count > 0 { try container.encode(invoiceLineItem, forKey: .invoiceLineItem) }
if invoiceTotals != nil { try container.encode(invoiceTotals, forKey: .invoiceTotals) }
}
}
public class BaseDocument : Codable
{
public var currencyCode:String
public var creationDateTime:Date
public var documentActionCode:DocumentAction
public var documentStatusCode:DocumentStatus
public var documentStructureVersion:String
public var lastUpdateDateTime:Date?
public var revisionNumber:Int?
public var avpList:[AvpList] = []
required public init(){}
}
public enum DocumentAction : String, Codable
{
case ADD
case CHANGE_BY_REFRESH
case DELETE
case REJECTED
}
public enum DocumentStatus : String, Codable
{
case ADDITIONAL_TRANSMISSION
case COPY
case ORIGINAL
}
public class AvpList : Codable
{
public var code:String
public var value:String
required public init(){}
}
public class TransactionalParty : Ecom_PartyIdentificationType
{
public var contact:[Contact] = []
public var address:Address
public var communicationChannel:[AvpList] = []
public var financialInstitutionInformation:FinancialInstitutionInformation
public var dutyFeeTaxRegistration:String
public var entityIdentification:String
required public init(){ super.init() }
private enum CodingKeys : String, CodingKey {
case contact
case address
case communicationChannel
case financialInstitutionInformation
case dutyFeeTaxRegistration
case entityIdentification
}
required public init(from decoder: Decoder) throws {
try super.init(from: decoder)
let container = try decoder.container(keyedBy: CodingKeys.self)
contact = try container.decodeIfPresent([Contact].self, forKey: .contact) ?? []
address = try container.decodeIfPresent(Address.self, forKey: .address)
communicationChannel = try container.decodeIfPresent([AvpList].self, forKey: .communicationChannel) ?? []
financialInstitutionInformation = try container.decodeIfPresent(FinancialInstitutionInformation.self, forKey: .financialInstitutionInformation)
dutyFeeTaxRegistration = try container.decodeIfPresent(String.self, forKey: .dutyFeeTaxRegistration)
entityIdentification = try container.decodeIfPresent(String.self, forKey: .entityIdentification)
}
public override func encode(to encoder: Encoder) throws {
try super.encode(to: encoder)
var container = encoder.container(keyedBy: CodingKeys.self)
if contact.count > 0 { try container.encode(contact, forKey: .contact) }
if address != nil { try container.encode(address, forKey: .address) }
if communicationChannel.count > 0 { try container.encode(communicationChannel, forKey: .communicationChannel) }
if financialInstitutionInformation != nil { try container.encode(financialInstitutionInformation, forKey: .financialInstitutionInformation) }
if dutyFeeTaxRegistration != nil { try container.encode(dutyFeeTaxRegistration, forKey: .dutyFeeTaxRegistration) }
if entityIdentification != nil { try container.encode(entityIdentification, forKey: .entityIdentification) }
}
}
public class Ecom_PartyIdentificationType : Codable
{
public var gln:String
public var name:String
public var additionalPartyIdentification:[AvpList] = []
required public init(){}
}
public class Contact : Codable
{
public var contactTypeCode:String
public var personName:String
public var departmentName:String
public var jobTitle:String
public var responsibility:String
public var communicationChannel:[CommunicationChannel] = []
required public init(){}
}
public class CommunicationChannel : Codable
{
public var communicationChannelCode:String
public var communicationChannelName:String
public var communicationValue:String
required public init(){}
}
public class Address : Codable
{
public var streetAddressOne:String
public var streetAddressTwo:String
public var streetAddressThree:String
public var city:String
public var postalCode:String
public var provinceCode:String
public var countryCode:String
required public init(){}
}
public class FinancialInstitutionInformation : Codable
{
public var financialInstitutionBranchName:String
public var financialInstitutionName:String
public var financialRoutingNumber:FinancialRoutingNumber
public var financialAccount:FinancialAccount
public var swiftCode:String
public var exportersCode:String
required public init(){}
}
public class FinancialRoutingNumber : Codable
{
public var number:String
public var numberTypeCode:String
required public init(){}
}
public class FinancialAccount : Codable
{
public var number:String
public var numberTypeCode:String
public var name:String
required public init(){}
}
public class Invoice : Codable
{
public var creationDate:Date?
public var revisionNumber:Int?
public var entityIdentification:String
required public init(){}
}
public class DocumentReference : Codable
{
public var creationDateTime:Date?
public var revisionNumber:Int?
public var lineItemNumber:Int?
public var entityIdentification:String
required public init(){}
}
public class ShipmentTransportationInformation : Codable
{
public var carrier:TransactionalParty
public var freightForwarder:TransactionalParty
required public init(){}
}
public class InvoiceLineItem : Codable
{
public var lineNumber:Int?
public var parentLineItemNumber:String
public var invoicedQuantity:Quantity
public var transactionalTradeItem:TransactionalTradeItem
public var itemPriceBaseQuantity:Double?
public var retailPriceExcludingExcise:Double?
public var recommendedRetailPrice:Double?
public var taxInformation:TaxInformation
public var amountExclusiveAllowancesCharges:Double?
public var amountInclusiveAllowancesCharges:Double?
public var itemPriceExclusiveAllowancesCharges:Double?
public var itemPriceInclusiveAllowancesCharges:Double?
public var tradeAgreement:String
public var deliveryNote:String
public var promotionalDeal:DocumentReference
public var invoiceAllowanceCharge:[InvoiceAllowanceCharge] = []
public var extendedProperties:Extension
required public init(){}
}
public class Quantity : Codable
{
public var value:Double?
public var measurementUnitCode:String
public var codeListVersion:String
required public init(){}
}
public class TransactionalTradeItem : Codable
{
public var gtin:String
public var additionalTradeItemIdentification:[AvpList] = []
public var tradeItemQuantity:Double?
public var tradeItemDescription:String
public var productVariantIdentifier:String
public var itemTypeCode:String
public var tradeItemDataOwner:String
public var butterFatReference:String
public var transactionalItemData:[TransactionalItemData] = []
public var colour:[Colour] = []
public var size:Size
public var tradeItemClassification:TradeItemClassification
public var avpList:[AvpList] = []
required public init(){}
}
public class TransactionalItemData : Codable
{
public var availableForSaleDate:Date?
public var batchNumber:String
public var bestBeforeDate:Date?
public var countryOfOrigin:String
public var itemExpirationDate:Date?
public var lotNumber:String
public var packagingDate:Date?
public var productionDate:Date?
public var productQualityIndication:String
public var sellByDate:Date?
public var serialNumber:[String] = []
public var shelfLife:String
public var tradeItemQuantity:Int?
public var itemInContactWithFoodProduct:Bool?
public var transactionalItemWeight:[TransactionalItem] = []
public var transactionalItemVolume:[TransactionalItem] = []
public var serialNumberRange:[SerialNumberRange] = []
public var transactionalItemDimensions:[TransactionalItemDimension] = []
public var transactionalItemLogisticUnitInformation:TransactionalItemLogisticUnitInformation
public var transactionalItemDataCarrierAndIdentification:TransactionalItemDataCarrierAndIdentification
public var tradeItemWaste:[TradeItemWaste] = []
public var transactionalItemOrganicInformation:TransactionalItemOrganicInformation
public var avpList:[AvpList] = []
required public init(){}
}
public class TransactionalItem : Codable
{
public var measurementUnitCode:String
public var measurementType:String
public var measurementValue:String
required public init(){}
}
public class SerialNumberRange : Codable
{
public var maximumValue:String
public var minimumValue:String
required public init(){}
}
public class TransactionalItemDimension : Codable
{
public var measurementUnitCode:String
public var depth:String
public var height:String
public var width:String
required public init(){}
}
public class TransactionalItemLogisticUnitInformation : Codable
{
public var numberOfLayers:Int?
public var numberOfUnitsPerLayer:Int?
public var numberOfUnitsPerPallet:Int?
public var packagingTerms:String
public var packageTypeCode:String
public var maximumStackingFactor:Int?
public var returnablePackageTransportCostPayment:String
public var dimensionsOfLogisticUnit:[TransactionalItemDimension] = []
required public init(){}
}
public class TransactionalItemDataCarrierAndIdentification : Codable
{
public var gs1TransactionalItemIdentificationKey:String
public var dataCarrier:String
required public init(){}
}
public class TradeItemWaste : Codable
{
public var wasteIdentification:String
public var typeOfWaste:[AvpList] = []
required public init(){}
}
public class TransactionalItemOrganicInformation : Codable
{
public var isTradeItemOrganic:Bool?
public var organicCertification:String
required public init(){}
}
public class Colour : Codable
{
public var colourCode:String
public var colourDescription:String
required public init(){}
}
public class Size : Codable
{
public var descriptiveSize:String
public var sizeCode:String
required public init(){}
}
public class TradeItemClassification : Codable
{
public var gpcCategoryCode:String
public var additionalTradeItemClassificationCode:[AvpList] = []
public var gpcCategoryName:String
public var gpcAttribute:[AvpList] = []
required public init(){}
}
public class TaxInformation : Codable
{
public var taxPercentage:Double?
public var taxAmount:Double?
required public init(){}
}
public class InvoiceAllowanceCharge : Codable
{
public var allowanceCharge:AllowanceCharge
public var leviedDutyFeeTax:TaxInformation
required public init(){}
}
public class AllowanceCharge : Codable
{
public var allowanceChargeAmount:Double?
public var allowanceChargePercentage:Double?
public var allowanceChargeType:String
public var allowanceOrChargeType:String
public var amountPerUnit:Double?
public var baseAmount:Double?
public var baseNumberOfUnits:String
public var bracketIdentifier:String
public var effectiveDateType:Date?
public var sequenceNumber:String
public var settlementType:String
public var specialServiceType:String
public var allowanceChargeDescription:String
required public init(){}
}
public class Extension : Codable
{
required public init(){}
}
public class InvoiceTotals : Codable
{
public var baseAmount:Double?
public var prepaidAmount:Double?
public var prepaidAmountDate:Date?
public var totalAmountInvoiceAllowancesCharges:Double?
public var totalLineAmountInclusiveAllowancesCharges:Double?
public var totalTaxAmount:Double?
public var totalInvoiceAmount:Double?
public var totalInvoiceAmountPayable:Double?
required public init(){}
}
public class TokenDto : ICommandResponse, Codable
{
public var token:String
required public init(){}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /api/creditNote HTTP/1.1
Host: stf-api-uat.data-xchange.co.za
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"creditNote":{"header":{"documentIdentification":{"identifier":"String","type":"String"},"sender":{"identifier":{"authority":"String","text":"String"},"contactInformation":[{}]},"receiver":{"identifier":{"authority":"String","text":"String"},"contactInformation":[{}]}},"invoice":{"countryOfSupplyOfGoods":"String","buyer":{"contact":[{"contactTypeCode":"String","personName":"String","departmentName":"String","jobTitle":"String","responsibility":"String","communicationChannel":[{"communicationChannelCode":"String","communicationChannelName":"String","communicationValue":"String"}]}],"address":{"streetAddressOne":"String","streetAddressTwo":"String","streetAddressThree":"String","city":"String","postalCode":"String","provinceCode":"String","countryCode":"String"},"communicationChannel":[{"code":"String","value":"String"}],"financialInstitutionInformation":{"financialInstitutionBranchName":"String","financialInstitutionName":"String","financialRoutingNumber":{"number":"String","numberTypeCode":"String"},"financialAccount":{"number":"String","numberTypeCode":"String","name":"String"},"swiftCode":"String","exportersCode":"String"},"dutyFeeTaxRegistration":"String","entityIdentification":"String","gln":"String","name":"String","additionalPartyIdentification":[{"code":"String","value":"String"}]},"seller":{"contact":[{"contactTypeCode":"String","personName":"String","departmentName":"String","jobTitle":"String","responsibility":"String","communicationChannel":[{"communicationChannelCode":"String","communicationChannelName":"String","communicationValue":"String"}]}],"address":{"streetAddressOne":"String","streetAddressTwo":"String","streetAddressThree":"String","city":"String","postalCode":"String","provinceCode":"String","countryCode":"String"},"communicationChannel":[{"code":"String","value":"String"}],"financialInstitutionInformation":{"financialInstitutionBranchName":"String","financialInstitutionName":"String","financialRoutingNumber":{"number":"String","numberTypeCode":"String"},"financialAccount":{"number":"String","numberTypeCode":"String","name":"String"},"swiftCode":"String","exportersCode":"String"},"dutyFeeTaxRegistration":"String","entityIdentification":"String","gln":"String","name":"String","additionalPartyIdentification":[{"code":"String","value":"String"}]},"payee":{"contact":[{"contactTypeCode":"String","personName":"String","departmentName":"String","jobTitle":"String","responsibility":"String","communicationChannel":[{"communicationChannelCode":"String","communicationChannelName":"String","communicationValue":"String"}]}],"address":{"streetAddressOne":"String","streetAddressTwo":"String","streetAddressThree":"String","city":"String","postalCode":"String","provinceCode":"String","countryCode":"String"},"communicationChannel":[{"code":"String","value":"String"}],"financialInstitutionInformation":{"financialInstitutionBranchName":"String","financialInstitutionName":"String","financialRoutingNumber":{"number":"String","numberTypeCode":"String"},"financialAccount":{"number":"String","numberTypeCode":"String","name":"String"},"swiftCode":"String","exportersCode":"String"},"dutyFeeTaxRegistration":"String","entityIdentification":"String","gln":"String","name":"String","additionalPartyIdentification":[{"code":"String","value":"String"}]},"payer":{"contact":[{"contactTypeCode":"String","personName":"String","departmentName":"String","jobTitle":"String","responsibility":"String","communicationChannel":[{"communicationChannelCode":"String","communicationChannelName":"String","communicationValue":"String"}]}],"address":{"streetAddressOne":"String","streetAddressTwo":"String","streetAddressThree":"String","city":"String","postalCode":"String","provinceCode":"String","countryCode":"String"},"communicationChannel":[{"code":"String","value":"String"}],"financialInstitutionInformation":{"financialInstitutionBranchName":"String","financialInstitutionName":"String","financialRoutingNumber":{"number":"String","numberTypeCode":"String"},"financialAccount":{"number":"String","numberTypeCode":"String","name":"String"},"swiftCode":"String","exportersCode":"String"},"dutyFeeTaxRegistration":"String","entityIdentification":"String","gln":"String","name":"String","additionalPartyIdentification":[{"code":"String","value":"String"}]},"shipFrom":{"contact":[{"contactTypeCode":"String","personName":"String","departmentName":"String","jobTitle":"String","responsibility":"String","communicationChannel":[{"communicationChannelCode":"String","communicationChannelName":"String","communicationValue":"String"}]}],"address":{"streetAddressOne":"String","streetAddressTwo":"String","streetAddressThree":"String","city":"String","postalCode":"String","provinceCode":"String","countryCode":"String"},"communicationChannel":[{"code":"String","value":"String"}],"financialInstitutionInformation":{"financialInstitutionBranchName":"String","financialInstitutionName":"String","financialRoutingNumber":{"number":"String","numberTypeCode":"String"},"financialAccount":{"number":"String","numberTypeCode":"String","name":"String"},"swiftCode":"String","exportersCode":"String"},"dutyFeeTaxRegistration":"String","entityIdentification":"String","gln":"String","name":"String","additionalPartyIdentification":[{"code":"String","value":"String"}]},"shipTo":{"contact":[{"contactTypeCode":"String","personName":"String","departmentName":"String","jobTitle":"String","responsibility":"String","communicationChannel":[{"communicationChannelCode":"String","communicationChannelName":"String","communicationValue":"String"}]}],"address":{"streetAddressOne":"String","streetAddressTwo":"String","streetAddressThree":"String","city":"String","postalCode":"String","provinceCode":"String","countryCode":"String"},"communicationChannel":[{"code":"String","value":"String"}],"financialInstitutionInformation":{"financialInstitutionBranchName":"String","financialInstitutionName":"String","financialRoutingNumber":{"number":"String","numberTypeCode":"String"},"financialAccount":{"number":"String","numberTypeCode":"String","name":"String"},"swiftCode":"String","exportersCode":"String"},"dutyFeeTaxRegistration":"String","entityIdentification":"String","gln":"String","name":"String","additionalPartyIdentification":[{"code":"String","value":"String"}]},"ultimateConsignee":{"contact":[{"contactTypeCode":"String","personName":"String","departmentName":"String","jobTitle":"String","responsibility":"String","communicationChannel":[{"communicationChannelCode":"String","communicationChannelName":"String","communicationValue":"String"}]}],"address":{"streetAddressOne":"String","streetAddressTwo":"String","streetAddressThree":"String","city":"String","postalCode":"String","provinceCode":"String","countryCode":"String"},"communicationChannel":[{"code":"String","value":"String"}],"financialInstitutionInformation":{"financialInstitutionBranchName":"String","financialInstitutionName":"String","financialRoutingNumber":{"number":"String","numberTypeCode":"String"},"financialAccount":{"number":"String","numberTypeCode":"String","name":"String"},"swiftCode":"String","exportersCode":"String"},"dutyFeeTaxRegistration":"String","entityIdentification":"String","gln":"String","name":"String","additionalPartyIdentification":[{"code":"String","value":"String"}]},"supplierAccountReceivable":"String","invoiceIdentification":"String","invoice":{"creationDate":"0001-01-01","revisionNumber":0,"entityIdentification":"String"},"salesOrder":{"creationDateTime":"0001-01-01","revisionNumber":0,"lineItemNumber":0,"entityIdentification":"String"},"purchaseOrder":{"creationDateTime":"0001-01-01","revisionNumber":0,"lineItemNumber":0,"entityIdentification":"String"},"deliveryNote":{"creationDateTime":"0001-01-01","revisionNumber":0,"lineItemNumber":0,"entityIdentification":"String"},"tradeAgreement":{"creationDateTime":"0001-01-01","revisionNumber":0,"lineItemNumber":0,"entityIdentification":"String"},"shipmentTransportationInformation":{"carrier":{"contact":[{"contactTypeCode":"String","personName":"String","departmentName":"String","jobTitle":"String","responsibility":"String","communicationChannel":[{"communicationChannelCode":"String","communicationChannelName":"String","communicationValue":"String"}]}],"address":{"streetAddressOne":"String","streetAddressTwo":"String","streetAddressThree":"String","city":"String","postalCode":"String","provinceCode":"String","countryCode":"String"},"communicationChannel":[{"code":"String","value":"String"}],"financialInstitutionInformation":{"financialInstitutionBranchName":"String","financialInstitutionName":"String","financialRoutingNumber":{"number":"String","numberTypeCode":"String"},"financialAccount":{"number":"String","numberTypeCode":"String","name":"String"},"swiftCode":"String","exportersCode":"String"},"dutyFeeTaxRegistration":"String","entityIdentification":"String","gln":"String","name":"String","additionalPartyIdentification":[{"code":"String","value":"String"}]},"freightForwarder":{"contact":[{"contactTypeCode":"String","personName":"String","departmentName":"String","jobTitle":"String","responsibility":"String","communicationChannel":[{"communicationChannelCode":"String","communicationChannelName":"String","communicationValue":"String"}]}],"address":{"streetAddressOne":"String","streetAddressTwo":"String","streetAddressThree":"String","city":"String","postalCode":"String","provinceCode":"String","countryCode":"String"},"communicationChannel":[{"code":"String","value":"String"}],"financialInstitutionInformation":{"financialInstitutionBranchName":"String","financialInstitutionName":"String","financialRoutingNumber":{"number":"String","numberTypeCode":"String"},"financialAccount":{"number":"String","numberTypeCode":"String","name":"String"},"swiftCode":"String","exportersCode":"String"},"dutyFeeTaxRegistration":"String","entityIdentification":"String","gln":"String","name":"String","additionalPartyIdentification":[{"code":"String","value":"String"}]}},"paymentTerms":"String","invoiceLineItem":[{"lineNumber":0,"parentLineItemNumber":"String","invoicedQuantity":{"value":0,"measurementUnitCode":"String","codeListVersion":"String"},"transactionalTradeItem":{"gtin":"String","additionalTradeItemIdentification":[{"code":"String","value":"String"}],"tradeItemQuantity":0,"tradeItemDescription":"String","productVariantIdentifier":"String","itemTypeCode":"String","tradeItemDataOwner":"String","butterFatReference":"String","transactionalItemData":[{"availableForSaleDate":"0001-01-01","batchNumber":"String","bestBeforeDate":"0001-01-01","countryOfOrigin":"String","itemExpirationDate":"0001-01-01","lotNumber":"String","packagingDate":"0001-01-01","productionDate":"0001-01-01","productQualityIndication":"String","sellByDate":"0001-01-01","serialNumber":["String"],"shelfLife":"String","tradeItemQuantity":0,"itemInContactWithFoodProduct":false,"transactionalItemWeight":[{"measurementUnitCode":"String","measurementType":"String","measurementValue":"String"}],"transactionalItemVolume":[{"measurementUnitCode":"String","measurementType":"String","measurementValue":"String"}],"serialNumberRange":[{"maximumValue":"String","minimumValue":"String"}],"transactionalItemDimensions":[{"measurementUnitCode":"String","depth":"String","height":"String","width":"String"}],"transactionalItemLogisticUnitInformation":{"numberOfLayers":0,"numberOfUnitsPerLayer":0,"numberOfUnitsPerPallet":0,"packagingTerms":"String","packageTypeCode":"String","maximumStackingFactor":0,"returnablePackageTransportCostPayment":"String","dimensionsOfLogisticUnit":[{"measurementUnitCode":"String","depth":"String","height":"String","width":"String"}]},"transactionalItemDataCarrierAndIdentification":{"gs1TransactionalItemIdentificationKey":"String","dataCarrier":"String"},"tradeItemWaste":[{"wasteIdentification":"String","typeOfWaste":[{"code":"String","value":"String"}]}],"transactionalItemOrganicInformation":{"isTradeItemOrganic":false,"organicCertification":"String"},"avpList":[{"code":"String","value":"String"}]}],"colour":[{"colourCode":"String","colourDescription":"String"}],"size":{"descriptiveSize":"String","sizeCode":"String"},"tradeItemClassification":{"gpcCategoryCode":"String","additionalTradeItemClassificationCode":[{"code":"String","value":"String"}],"gpcCategoryName":"String","gpcAttribute":[{"code":"String","value":"String"}]},"avpList":[{"code":"String","value":"String"}]},"itemPriceBaseQuantity":0,"retailPriceExcludingExcise":0,"recommendedRetailPrice":0,"taxInformation":{"taxPercentage":0,"taxAmount":0},"amountExclusiveAllowancesCharges":0,"amountInclusiveAllowancesCharges":0,"itemPriceExclusiveAllowancesCharges":0,"itemPriceInclusiveAllowancesCharges":0,"tradeAgreement":"String","deliveryNote":"String","promotionalDeal":{"creationDateTime":"0001-01-01","revisionNumber":0,"lineItemNumber":0,"entityIdentification":"String"},"invoiceAllowanceCharge":[{"allowanceCharge":{"allowanceChargeAmount":0,"allowanceChargePercentage":0,"allowanceChargeType":"String","allowanceOrChargeType":"String","amountPerUnit":0,"baseAmount":0,"baseNumberOfUnits":"String","bracketIdentifier":"String","effectiveDateType":"0001-01-01","sequenceNumber":"String","settlementType":"String","specialServiceType":"String","allowanceChargeDescription":"String"},"leviedDutyFeeTax":{"taxPercentage":0,"taxAmount":0}}],"extendedProperties":{}}],"invoiceTotals":{"baseAmount":0,"prepaidAmount":0,"prepaidAmountDate":"0001-01-01","totalAmountInvoiceAllowancesCharges":0,"totalLineAmountInclusiveAllowancesCharges":0,"totalTaxAmount":0,"totalInvoiceAmount":0,"totalInvoiceAmountPayable":0},"currencyCode":"String","documentActionCode":"ADD","documentStatusCode":"ADDITIONAL_TRANSMISSION","documentStructureVersion":"String","lastUpdateDateTime":"0001-01-01","revisionNumber":0,"avpList":[{"code":"String","value":"String"}]}}}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length
{}