| POST | /api/purchaseCondition | Add new PurchaseCondition |
|---|
import Foundation
import ServiceStack
/**
* Purchase Conditions
*/
// @Api(Description="Purchase Conditions")
// @ApiResponse(Description="Add Purchase Condition request received", IsDefaultResponse=true, StatusCode=200)
// @ApiResponse(Description="Purchase Condition not accepted, Confirm Sender GLN", ResponseType=typeof(UnauthorizedAccessException), StatusCode=403)
public class AddPurchaseCondition : Codable
{
/**
* Purchase Condition model containing all of the Purchase Condition data
*/
// @ApiMember(Description="Purchase Condition model containing all of the Purchase Condition data", ParameterType="model")
public var purchaseConditions:PurchaseConditionsMessage
required public init(){}
}
public class PurchaseConditionsMessage : Codable
{
public var header:Header
public var purchaseConditions:PurchaseConditions
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 PurchaseConditions : BaseDocument
{
public var purchaseConditionsCurrencyCode:String
public var purchaseConditionsLocationInformation:[PurchaseConditionsLocationInformation] = []
public var currencyExchangeRateInformation:CurrencyExchangeRateInformation
public var buyer:TransactionalParty
public var payee:TransactionalParty
public var payer:TransactionalParty
public var purchaseConditionsIdentification:String
public var remitTo:TransactionalParty
public var seller:TransactionalParty
public var taxRepresentative:TransactionalParty
required public init(){ super.init() }
private enum CodingKeys : String, CodingKey {
case purchaseConditionsCurrencyCode
case purchaseConditionsLocationInformation
case currencyExchangeRateInformation
case buyer
case payee
case payer
case purchaseConditionsIdentification
case remitTo
case seller
case taxRepresentative
}
required public init(from decoder: Decoder) throws {
try super.init(from: decoder)
let container = try decoder.container(keyedBy: CodingKeys.self)
purchaseConditionsCurrencyCode = try container.decodeIfPresent(String.self, forKey: .purchaseConditionsCurrencyCode)
purchaseConditionsLocationInformation = try container.decodeIfPresent([PurchaseConditionsLocationInformation].self, forKey: .purchaseConditionsLocationInformation) ?? []
currencyExchangeRateInformation = try container.decodeIfPresent(CurrencyExchangeRateInformation.self, forKey: .currencyExchangeRateInformation)
buyer = try container.decodeIfPresent(TransactionalParty.self, forKey: .buyer)
payee = try container.decodeIfPresent(TransactionalParty.self, forKey: .payee)
payer = try container.decodeIfPresent(TransactionalParty.self, forKey: .payer)
purchaseConditionsIdentification = try container.decodeIfPresent(String.self, forKey: .purchaseConditionsIdentification)
remitTo = try container.decodeIfPresent(TransactionalParty.self, forKey: .remitTo)
seller = try container.decodeIfPresent(TransactionalParty.self, forKey: .seller)
taxRepresentative = try container.decodeIfPresent(TransactionalParty.self, forKey: .taxRepresentative)
}
public override func encode(to encoder: Encoder) throws {
try super.encode(to: encoder)
var container = encoder.container(keyedBy: CodingKeys.self)
if purchaseConditionsCurrencyCode != nil { try container.encode(purchaseConditionsCurrencyCode, forKey: .purchaseConditionsCurrencyCode) }
if purchaseConditionsLocationInformation.count > 0 { try container.encode(purchaseConditionsLocationInformation, forKey: .purchaseConditionsLocationInformation) }
if currencyExchangeRateInformation != nil { try container.encode(currencyExchangeRateInformation, forKey: .currencyExchangeRateInformation) }
if buyer != nil { try container.encode(buyer, forKey: .buyer) }
if payee != nil { try container.encode(payee, forKey: .payee) }
if payer != nil { try container.encode(payer, forKey: .payer) }
if purchaseConditionsIdentification != nil { try container.encode(purchaseConditionsIdentification, forKey: .purchaseConditionsIdentification) }
if remitTo != nil { try container.encode(remitTo, forKey: .remitTo) }
if seller != nil { try container.encode(seller, forKey: .seller) }
if taxRepresentative != nil { try container.encode(taxRepresentative, forKey: .taxRepresentative) }
}
}
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 PurchaseConditionsLocationInformation : Codable
{
public var purchaseConditionsLineItem:[PurchaseConditionsLineItem] = []
public var shipFrom:TransactionalParty
public var shipTo:TransactionalParty
required public init(){}
}
public class PurchaseConditionsLineItem : Codable
{
public var discrepancyTolerancePercentage:Double?
public var lineItemNumber:Int?
public var packagingTypeCode:String
public var parentLineItemNumber:Int?
public var purchaseConditionsQuantity:Quantity
public var purchaseConditionsCommitmentPeriod:[PurchaseConditionsCommitmentPeriod] = []
public var purchaseConditionsPriceInformation:[PurchaseConditionsPriceInformation] = []
public var allowanceCharge:[AllowanceCharge] = []
public var transactionalTradeItem:TransactionalTradeItem
public var leviedDutyFeeTax:LeviedDutyFeeTax
public var avpList:[AvpList] = []
public var effectivePeriod:DateTimeRange
public var materialSpecification:DocumentReference
public var purchaseConditionsQuantityRange:QuantityRange
required public init(){}
}
public class Quantity : Codable
{
public var value:Double?
public var measurementUnitCode:String
public var codeListVersion:String
required public init(){}
}
public class PurchaseConditionsCommitmentPeriod : Codable
{
public var commitmentPeriodDuration:TimeMeasurement
public var purchaseConditionsCommitmentTypeCode:String
required public init(){}
}
public class TimeMeasurement : Codable
{
public var timeMeasurementUnitCode:String
public var value:Double?
required public init(){}
}
public class PurchaseConditionsPriceInformation : Codable
{
public var itemPriceBaseQuantity:Quantity
public var itemPriceExclusiveAllowancesCharges:Double?
public var quantityRange:QuantityRange
public var effectivePeriod:DateTimeRange
required public init(){}
}
public class QuantityRange : Codable
{
public var maximumQuantity:Quantity
public var minimumQuantity:Quantity
required public init(){}
}
public class DateTimeRange : Codable
{
public var beginDate:Date
@TimeSpan public var beginTime:TimeInterval?
public var endDate:Date?
@TimeSpan public var endTime:TimeInterval?
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 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 LeviedDutyFeeTax : Codable
{
public var dutyFeeTaxAmount:Double?
public var dutyFeeTaxBasisAmount:Double?
public var dutyFeeTaxDescription:String
public var dutyFeeTaxPercentage:Double?
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 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 CurrencyExchangeRateInformation : Codable
{
public var currencyConversionFromCode:String
public var currencyConversionToCode:String
public var exchangeRate:Int?
public var exchangeRateDateTime:Date?
required public init(){}
}
public class TokenDto : ICommandResponse, Codable
{
public var token:String
required public init(){}
}
Swift AddPurchaseCondition DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /api/purchaseCondition HTTP/1.1
Host: stf-api-uat.data-xchange.co.za
Accept: application/json
Content-Type: application/json
Content-Length: length
{"purchaseConditions":{"header":{"documentIdentification":{"identifier":"String","type":"String"},"sender":{"identifier":{"authority":"String","text":"String"},"contactInformation":[{}]},"receiver":{"identifier":{"authority":"String","text":"String"},"contactInformation":[{}]}},"purchaseConditions":{"purchaseConditionsCurrencyCode":"String","purchaseConditionsLocationInformation":[{"purchaseConditionsLineItem":[{"discrepancyTolerancePercentage":0,"lineItemNumber":0,"packagingTypeCode":"String","parentLineItemNumber":0,"purchaseConditionsQuantity":{"value":0,"measurementUnitCode":"String","codeListVersion":"String"},"purchaseConditionsCommitmentPeriod":[{"commitmentPeriodDuration":{"timeMeasurementUnitCode":"String","value":0},"purchaseConditionsCommitmentTypeCode":"String"}],"purchaseConditionsPriceInformation":[{"itemPriceBaseQuantity":{"value":0,"measurementUnitCode":"String","codeListVersion":"String"},"itemPriceExclusiveAllowancesCharges":0,"quantityRange":{"maximumQuantity":{"value":0,"measurementUnitCode":"String","codeListVersion":"String"},"minimumQuantity":{"value":0,"measurementUnitCode":"String","codeListVersion":"String"}},"effectivePeriod":{"beginDate":"0001-01-01","beginTime":"PT0S","endDate":"0001-01-01","endTime":"PT0S"}}],"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"}],"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"}]},"leviedDutyFeeTax":{"dutyFeeTaxAmount":0,"dutyFeeTaxBasisAmount":0,"dutyFeeTaxDescription":"String","dutyFeeTaxPercentage":0},"avpList":[{"code":"String","value":"String"}],"effectivePeriod":{"beginDate":"0001-01-01","beginTime":"PT0S","endDate":"0001-01-01","endTime":"PT0S"},"materialSpecification":{"creationDateTime":"0001-01-01","revisionNumber":0,"lineItemNumber":0,"entityIdentification":"String"},"purchaseConditionsQuantityRange":{"maximumQuantity":{"value":0,"measurementUnitCode":"String","codeListVersion":"String"},"minimumQuantity":{"value":0,"measurementUnitCode":"String","codeListVersion":"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"}]}}],"currencyExchangeRateInformation":{"currencyConversionFromCode":"String","currencyConversionToCode":"String","exchangeRate":0,"exchangeRateDateTime":"0001-01-01"},"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"}]},"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"}]},"purchaseConditionsIdentification":"String","remitTo":{"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"}]},"taxRepresentative":{"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"}]},"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: application/json
Content-Length: length
{}