| GET | /api/purchaseCondition/{OwnerGln}/{Identification} | Get specific Purchase Condition by Purchase Condition Identification number |
|---|
namespace DX.STF.Application.ClientApi.Messages.PurchaseCondition
open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
[<DataContract>]
[<AllowNullLiteral>]
type DocumentIdentification() =
[<DataMember(Name="identifier")>]
member val Identifier:String = null with get,set
[<DataMember(Name="type")>]
member val Type:String = null with get,set
[<DataMember(Name="creationDateAndTime")>]
member val CreationDateAndTime:DateTime = new DateTime() with get,set
[<DataContract>]
[<AllowNullLiteral>]
type Identifier() =
[<DataMember(Name="authority")>]
member val Authority:String = null with get,set
[<DataMember(Name="text")>]
member val Text:String = null with get,set
[<DataContract>]
[<AllowNullLiteral>]
type ContactInformation() =
class end
[<DataContract>]
[<AllowNullLiteral>]
type Partner() =
[<DataMember(Name="identifier")>]
member val Identifier:Identifier = null with get,set
[<DataMember(Name="contactInformation")>]
member val ContactInformation:ResizeArray<ContactInformation> = null with get,set
[<DataContract>]
[<AllowNullLiteral>]
type Header() =
[<DataMember(Name="documentIdentification")>]
member val DocumentIdentification:DocumentIdentification = null with get,set
[<DataMember(Name="sender")>]
member val Sender:Partner = null with get,set
[<DataMember(Name="receiver")>]
member val Receiver:Partner = null with get,set
type DocumentAction =
| ADD = 0
| CHANGE_BY_REFRESH = 1
| DELETE = 2
| REJECTED = 3
type DocumentStatus =
| ADDITIONAL_TRANSMISSION = 0
| COPY = 1
| ORIGINAL = 2
[<AllowNullLiteral>]
type AvpList() =
member val Code:String = null with get,set
member val Value:String = null with get,set
[<AllowNullLiteral>]
type BaseDocument() =
member val CurrencyCode:String = null with get,set
member val CreationDateTime:DateTime = new DateTime() with get,set
member val DocumentActionCode:DocumentAction = new DocumentAction() with get,set
member val DocumentStatusCode:DocumentStatus = new DocumentStatus() with get,set
member val DocumentStructureVersion:String = null with get,set
member val LastUpdateDateTime:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val RevisionNumber:Nullable<Int64> = new Nullable<Int64>() with get,set
member val AvpList:ResizeArray<AvpList> = null with get,set
[<AllowNullLiteral>]
type Quantity() =
member val Value:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val MeasurementUnitCode:String = null with get,set
member val CodeListVersion:String = null with get,set
[<AllowNullLiteral>]
type TimeMeasurement() =
member val TimeMeasurementUnitCode:String = null with get,set
member val Value:Nullable<Decimal> = new Nullable<Decimal>() with get,set
[<AllowNullLiteral>]
type PurchaseConditionsCommitmentPeriod() =
member val CommitmentPeriodDuration:TimeMeasurement = null with get,set
member val PurchaseConditionsCommitmentTypeCode:String = null with get,set
[<AllowNullLiteral>]
type QuantityRange() =
member val MaximumQuantity:Quantity = null with get,set
member val MinimumQuantity:Quantity = null with get,set
[<AllowNullLiteral>]
type DateTimeRange() =
member val BeginDate:DateOnly = new DateOnly() with get,set
member val BeginTime:Nullable<TimeOnly> = new Nullable<TimeOnly>() with get,set
member val EndDate:Nullable<DateOnly> = new Nullable<DateOnly>() with get,set
member val EndTime:Nullable<TimeOnly> = new Nullable<TimeOnly>() with get,set
[<AllowNullLiteral>]
type PurchaseConditionsPriceInformation() =
member val ItemPriceBaseQuantity:Quantity = null with get,set
member val ItemPriceExclusiveAllowancesCharges:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val QuantityRange:QuantityRange = null with get,set
member val EffectivePeriod:DateTimeRange = null with get,set
[<AllowNullLiteral>]
type AllowanceCharge() =
member val AllowanceChargeAmount:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val AllowanceChargePercentage:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val AllowanceChargeType:String = null with get,set
member val AllowanceOrChargeType:String = null with get,set
member val AmountPerUnit:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val BaseAmount:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val BaseNumberOfUnits:String = null with get,set
member val BracketIdentifier:String = null with get,set
member val EffectiveDateType:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val SequenceNumber:String = null with get,set
member val SettlementType:String = null with get,set
member val SpecialServiceType:String = null with get,set
member val AllowanceChargeDescription:String = null with get,set
[<AllowNullLiteral>]
type TransactionalItem() =
member val MeasurementUnitCode:String = null with get,set
member val MeasurementType:String = null with get,set
member val MeasurementValue:String = null with get,set
[<AllowNullLiteral>]
type SerialNumberRange() =
member val MaximumValue:String = null with get,set
member val MinimumValue:String = null with get,set
[<AllowNullLiteral>]
type TransactionalItemDimension() =
member val MeasurementUnitCode:String = null with get,set
member val Depth:String = null with get,set
member val Height:String = null with get,set
member val Width:String = null with get,set
[<AllowNullLiteral>]
type TransactionalItemLogisticUnitInformation() =
member val NumberOfLayers:Nullable<Int64> = new Nullable<Int64>() with get,set
member val NumberOfUnitsPerLayer:Nullable<Int64> = new Nullable<Int64>() with get,set
member val NumberOfUnitsPerPallet:Nullable<Int64> = new Nullable<Int64>() with get,set
member val PackagingTerms:String = null with get,set
member val PackageTypeCode:String = null with get,set
member val MaximumStackingFactor:Nullable<Int64> = new Nullable<Int64>() with get,set
member val ReturnablePackageTransportCostPayment:String = null with get,set
member val DimensionsOfLogisticUnit:ResizeArray<TransactionalItemDimension> = null with get,set
[<AllowNullLiteral>]
type TransactionalItemDataCarrierAndIdentification() =
member val Gs1TransactionalItemIdentificationKey:String = null with get,set
member val DataCarrier:String = null with get,set
[<AllowNullLiteral>]
type TradeItemWaste() =
member val WasteIdentification:String = null with get,set
member val TypeOfWaste:ResizeArray<AvpList> = null with get,set
[<AllowNullLiteral>]
type TransactionalItemOrganicInformation() =
member val IsTradeItemOrganic:Nullable<Boolean> = new Nullable<Boolean>() with get,set
member val OrganicCertification:String = null with get,set
[<AllowNullLiteral>]
type TransactionalItemData() =
member val AvailableForSaleDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val BatchNumber:String = null with get,set
member val BestBeforeDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val CountryOfOrigin:String = null with get,set
member val ItemExpirationDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val LotNumber:String = null with get,set
member val PackagingDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val ProductionDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val ProductQualityIndication:String = null with get,set
member val SellByDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val SerialNumber:ResizeArray<String> = null with get,set
member val ShelfLife:String = null with get,set
member val TradeItemQuantity:Nullable<Int64> = new Nullable<Int64>() with get,set
member val ItemInContactWithFoodProduct:Nullable<Boolean> = new Nullable<Boolean>() with get,set
member val TransactionalItemWeight:ResizeArray<TransactionalItem> = null with get,set
member val TransactionalItemVolume:ResizeArray<TransactionalItem> = null with get,set
member val SerialNumberRange:ResizeArray<SerialNumberRange> = null with get,set
member val TransactionalItemDimensions:ResizeArray<TransactionalItemDimension> = null with get,set
member val TransactionalItemLogisticUnitInformation:TransactionalItemLogisticUnitInformation = null with get,set
member val TransactionalItemDataCarrierAndIdentification:TransactionalItemDataCarrierAndIdentification = null with get,set
member val TradeItemWaste:ResizeArray<TradeItemWaste> = null with get,set
member val TransactionalItemOrganicInformation:TransactionalItemOrganicInformation = null with get,set
member val AvpList:ResizeArray<AvpList> = null with get,set
[<AllowNullLiteral>]
type Colour() =
member val ColourCode:String = null with get,set
member val ColourDescription:String = null with get,set
[<AllowNullLiteral>]
type Size() =
member val DescriptiveSize:String = null with get,set
member val SizeCode:String = null with get,set
[<AllowNullLiteral>]
type TradeItemClassification() =
member val GpcCategoryCode:String = null with get,set
member val AdditionalTradeItemClassificationCode:ResizeArray<AvpList> = null with get,set
member val GpcCategoryName:String = null with get,set
member val GpcAttribute:ResizeArray<AvpList> = null with get,set
[<AllowNullLiteral>]
type TransactionalTradeItem() =
member val Gtin:String = null with get,set
member val AdditionalTradeItemIdentification:ResizeArray<AvpList> = null with get,set
member val TradeItemQuantity:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val TradeItemDescription:String = null with get,set
member val ProductVariantIdentifier:String = null with get,set
member val ItemTypeCode:String = null with get,set
member val TradeItemDataOwner:String = null with get,set
member val ButterFatReference:String = null with get,set
member val TransactionalItemData:ResizeArray<TransactionalItemData> = null with get,set
member val Colour:ResizeArray<Colour> = null with get,set
member val Size:Size = null with get,set
member val TradeItemClassification:TradeItemClassification = null with get,set
member val AvpList:ResizeArray<AvpList> = null with get,set
[<AllowNullLiteral>]
type LeviedDutyFeeTax() =
member val DutyFeeTaxAmount:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val DutyFeeTaxBasisAmount:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val DutyFeeTaxDescription:String = null with get,set
member val DutyFeeTaxPercentage:Nullable<Decimal> = new Nullable<Decimal>() with get,set
[<AllowNullLiteral>]
type DocumentReference() =
member val CreationDateTime:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val RevisionNumber:Nullable<Int64> = new Nullable<Int64>() with get,set
member val LineItemNumber:Nullable<Int64> = new Nullable<Int64>() with get,set
member val EntityIdentification:String = null with get,set
[<AllowNullLiteral>]
type PurchaseConditionsLineItem() =
member val DiscrepancyTolerancePercentage:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val LineItemNumber:Nullable<Int64> = new Nullable<Int64>() with get,set
member val PackagingTypeCode:String = null with get,set
member val ParentLineItemNumber:Nullable<Int64> = new Nullable<Int64>() with get,set
member val PurchaseConditionsQuantity:Quantity = null with get,set
member val PurchaseConditionsCommitmentPeriod:ResizeArray<PurchaseConditionsCommitmentPeriod> = null with get,set
member val PurchaseConditionsPriceInformation:ResizeArray<PurchaseConditionsPriceInformation> = null with get,set
member val AllowanceCharge:ResizeArray<AllowanceCharge> = null with get,set
member val TransactionalTradeItem:TransactionalTradeItem = null with get,set
member val LeviedDutyFeeTax:LeviedDutyFeeTax = null with get,set
member val AvpList:ResizeArray<AvpList> = null with get,set
member val EffectivePeriod:DateTimeRange = null with get,set
member val MaterialSpecification:DocumentReference = null with get,set
member val PurchaseConditionsQuantityRange:QuantityRange = null with get,set
[<AllowNullLiteral>]
type Ecom_PartyIdentificationType() =
member val Gln:String = null with get,set
member val Name:String = null with get,set
member val AdditionalPartyIdentification:ResizeArray<AvpList> = null with get,set
[<AllowNullLiteral>]
type CommunicationChannel() =
member val CommunicationChannelCode:String = null with get,set
member val CommunicationChannelName:String = null with get,set
member val CommunicationValue:String = null with get,set
[<AllowNullLiteral>]
type Contact() =
member val ContactTypeCode:String = null with get,set
member val PersonName:String = null with get,set
member val DepartmentName:String = null with get,set
member val JobTitle:String = null with get,set
member val Responsibility:String = null with get,set
member val CommunicationChannel:ResizeArray<CommunicationChannel> = null with get,set
[<AllowNullLiteral>]
type Address() =
member val StreetAddressOne:String = null with get,set
member val StreetAddressTwo:String = null with get,set
member val StreetAddressThree:String = null with get,set
member val City:String = null with get,set
member val PostalCode:String = null with get,set
member val ProvinceCode:String = null with get,set
member val CountryCode:String = null with get,set
[<AllowNullLiteral>]
type FinancialRoutingNumber() =
member val Number:String = null with get,set
member val NumberTypeCode:String = null with get,set
[<AllowNullLiteral>]
type FinancialAccount() =
member val Number:String = null with get,set
member val NumberTypeCode:String = null with get,set
member val Name:String = null with get,set
[<AllowNullLiteral>]
type FinancialInstitutionInformation() =
member val FinancialInstitutionBranchName:String = null with get,set
member val FinancialInstitutionName:String = null with get,set
member val FinancialRoutingNumber:FinancialRoutingNumber = null with get,set
member val FinancialAccount:FinancialAccount = null with get,set
member val SwiftCode:String = null with get,set
member val ExportersCode:String = null with get,set
[<AllowNullLiteral>]
type TransactionalParty() =
inherit Ecom_PartyIdentificationType()
member val Contact:ResizeArray<Contact> = null with get,set
member val Address:Address = null with get,set
member val CommunicationChannel:ResizeArray<AvpList> = null with get,set
member val FinancialInstitutionInformation:FinancialInstitutionInformation = null with get,set
member val DutyFeeTaxRegistration:String = null with get,set
member val EntityIdentification:String = null with get,set
[<AllowNullLiteral>]
type PurchaseConditionsLocationInformation() =
member val PurchaseConditionsLineItem:ResizeArray<PurchaseConditionsLineItem> = null with get,set
member val ShipFrom:TransactionalParty = null with get,set
member val ShipTo:TransactionalParty = null with get,set
[<AllowNullLiteral>]
type CurrencyExchangeRateInformation() =
member val CurrencyConversionFromCode:String = null with get,set
member val CurrencyConversionToCode:String = null with get,set
member val ExchangeRate:Nullable<Int64> = new Nullable<Int64>() with get,set
member val ExchangeRateDateTime:Nullable<DateTime> = new Nullable<DateTime>() with get,set
[<AllowNullLiteral>]
type PurchaseConditions() =
inherit BaseDocument()
member val PurchaseConditionsCurrencyCode:String = null with get,set
member val PurchaseConditionsLocationInformation:ResizeArray<PurchaseConditionsLocationInformation> = null with get,set
member val CurrencyExchangeRateInformation:CurrencyExchangeRateInformation = null with get,set
member val Buyer:TransactionalParty = null with get,set
member val Payee:TransactionalParty = null with get,set
member val Payer:TransactionalParty = null with get,set
member val PurchaseConditionsIdentification:String = null with get,set
member val RemitTo:TransactionalParty = null with get,set
member val Seller:TransactionalParty = null with get,set
member val TaxRepresentative:TransactionalParty = null with get,set
[<AllowNullLiteral>]
type PurchaseConditionsMessage() =
member val Header:Header = null with get,set
member val PurchaseConditions:PurchaseConditions = null with get,set
///<summary>
///Purchase Conditions
///</summary>
[<Api(Description="Purchase Conditions")>]
[<ApiResponse(Description="PurchaseCondition data", IsDefaultResponse=true, StatusCode=200)>]
[<ApiResponse(Description="No Content", ResponseType=typeof<IReturnVoid>, StatusCode=204)>]
[<ApiResponse(Description="Specified argument was out of the range of valid values.", ResponseType=typeof<ArgumentOutOfRangeException>, StatusCode=400)>]
[<AllowNullLiteral>]
type GetPurchaseConditionByIdentification() =
///<summary>
///Purchase Condition Owner GLN
///</summary>
[<ApiMember(Description="Purchase Condition Owner GLN", ExcludeInSchema=true, ParameterType="path")>]
member val OwnerGln:String = null with get,set
///<summary>
///Purchase Condition Identifier
///</summary>
[<ApiMember(Description="Purchase Condition Identifier", ExcludeInSchema=true, ParameterType="path")>]
member val Identification:String = null with get,set
F# GetPurchaseConditionByIdentification DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /api/purchaseCondition/{OwnerGln}/{Identification} HTTP/1.1
Host: stf-api-uat.data-xchange.co.za
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
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
}
]
}
}