  

 

Tracelink University

 ## Breadcrumb

1. [Home](/)
2. [Resources](/resources/resource-center)
3. [TraceLink University](/resources/tracelink-university)
 
  

 

 

# Invoice inbound Link Action Transactions

 

 

 

 

 

 

 

 

- [Download PDF](/node/627981/pdf)
- [Share](#)
    - [ LinkedIn ](https://www.linkedin.com/shareArticle?mini=true&url=https://www.tracelink.com/resources/tracelink-university/invoice-inbound-link-action-transactions&title=Invoice inbound Link Action Transactions&summary=The Link Action Invoice in an ERP system is a sales invoice that is generated and sent by a seller to a buyer (customer) after the goods have been shipped or services have been delivered. &source=TraceLink "LinkedIn")
    - [ Facebook ](https://www.facebook.com/share.php?u=https://www.tracelink.com/resources/tracelink-university/invoice-inbound-link-action-transactions&t=Invoice inbound Link Action Transactions "Facebook")
    - [ Mail ](mailto:?subject=Invoice inbound Link Action Transactions+|+TraceLink&body=https://www.tracelink.com/resources/tracelink-university/invoice-inbound-link-action-transactions "Mail")
    - [ Twitter ](https://twitter.com/intent/tweet?text=Invoice inbound Link Action Transactions https://www.tracelink.com/resources/tracelink-university/invoice-inbound-link-action-transactions&via=TraceLink "Twitter")
 
 

 

 

 

 

#### Table of contents

 

 

 

The Link Action Invoice in an ERP system is a sales invoice that is generated and sent by a seller to a buyer (customer) after the goods have been shipped or services have been delivered. Invoice serves as a formal request for payment.

## Netsuite ERP

The following are the Netsuite ERP attributes that are mapped with the Canonical attributes and their output path.

- **Transform Name**:
    - STD\_Transform\_MPL\_Netsuite\_Invoice\_IB\_V1
 
[![Closed](/sites/default/files/tech_comms/mpl/Skins/Default/Stylesheets/Images/transparent.gif)Guidelines](#)                Netsuite Field Input Element Mapped Canonical Output Target Output Element Mapping Rules       JSON - - -       CONSTANT\[id\] - id Hard code "57cd4683-2287-4b9e-9b13-29068be3a9e8" to Target       CONSTANT\[schemaId\] - schemaId Hard code "multienterprise-process-connect\_canonicalInvoice" to Target       CONSTANT\[objectType\] - objectType Hard code "multienterprise-process-connect\_canonicalInvoice" to Target       CONSTANT\[schemaVersion\] - schemaVersion Hard code "1" to Target       CONSTANT\[processingFunctionTypeCode\] `#data/messageBody/canonicalInvoiceHeader`  processingFunctionTypeCode Hard code "CREATE" to target       CONSTANT\[b2bTransactionTypeName\] `#/data/controlFileHeader`  b2bTransactionTypeName Hard code "MPC\_INVOICE" to target data element       account - - -         fullName `#data/messageBody/canonicalInvoiceHeader/bankInfo`  accountHolderName Move source to target         location - - -           mainAddress - - -             city `#data/messageBody/canonicalInvoiceHeader/bankInfo`  city Move source to target             country `#data/messageBody/canonicalInvoiceHeader/bankInfo/country`  country Move source to target         sBankCompanyId `#data/messageBody/canonicalInvoiceHeader/bankInfo/accountNumber`  accountNumber Move source to target         sBankName `#data/messageBody/canonicalInvoiceHeader/bankInfo/bankName`  bankName Move source to target         sBankRoutingNumber `#data/messageBody/canonicalInvoiceHeader/bankInfo`  bankIdentifier Move source to target       amountPaid - - -       amountRemaining - - -       amountRemainingTotalBox - - -       billAddress - - -       billAddressList - - -         id - - -         refName - - -       billingAddress - - -         addr1 `#data/messageBody/canonicalInvoiceHeader/billToBusinessInformation/address`  address1 Move source to target         addr2 `#data/messageBody/canonicalInvoiceHeader/billToBusinessInformation/address`  address2 Move source to target         addressee `#data/messageBody/canonicalInvoiceHeader/billToBusinessInformation`  businessName Move source to target         addrPhone `#data/messageBody/canonicalInvoiceHeader/billToBusinessInformation/address`  telephone Move source to target         addrText - - -         city `#data/messageBody/canonicalInvoiceHeader/billToBusinessInformation/address`  city Move source to target         country - - -           id `#data/messageBody/canonicalInvoiceHeader/billToBusinessInformation/address`  country Move source to target           refName - - -         override - - -         state `#data/messageBody/canonicalInvoiceHeader/billToBusinessInformation/address`  state Move source to target         zip `#data/messageBody/canonicalInvoiceHeader/billToBusinessInformation/address`  postalCode Move source to target       billingAddress\_text - - -       canHaveStackable - - -       class - - -         id - - -         refName - - -       CONSTANT\[CREATEDON\] `#data/messageBody/canonicalInvoiceHeader/invoiceDates`  dateType Hardcode "CREATEDON" to target       createdDate `#data/messageBody/canonicalInvoiceHeader/invoiceDates`  dateValue Move source to target if dateType=CREATEDON       createdFrom - - -         id - - -         refName - - -       currency - - -         currencyPrecision - - -         displaySymbol - - -         exchangeRate `#data/messageBody/canonicalInvoiceHeader/invoiceCurrency`  exchangeRate Move source to target         formatSample - - -         id - - -         isBaseCurrency - - -         isInactive - - -         lastModifiedDate - - -         locale - - -           id - - -           refName - - -         name - - -         overrideCurrencyFormat - - -         symbol `#data/messageBody/canonicalInvoiceHeader/invoiceCurrency`  exchangeRateCurrencyCode Move source to target         symbolPlacement - - -           id - - -           refName - - -       customForm - - -         id - - -         refName - - -       department - - -         id - - -         refName - - -       discountAmount - - -       discountDate - - -       discountTotal - - -       CONSTANT\[DUEDATE\] `#data/messageBody/canonicalInvoiceHeader/invoiceDates`  dateType Hardcode "DUEDATE" to target       dueDate `#data/messageBody/canonicalInvoiceHeader/invoiceDates`  dateValue Move source to target if dateType=DUEDATE       CONSTANT\[ENDDATE\] `#data/messageBody/canonicalInvoiceHeader/invoiceDates`  dateType Hardcode "ENDDATE" to target       endDate `#data/messageBody/canonicalInvoiceHeader/invoiceDates`  dateValue Move source to target if dateType=ENDDATE       entity - - -         addressBook - - -           items - - -             addressBookAddress - - -               addr1 `#data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/address`  address1 Move source to target               addr2 `#data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/address`  address2 Move source to target               addressee - - -               addrPhone `#data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/address`  telephone Move source to target               addrText - - -               city `#data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/address`  city Move source to target               country - - -                 id id `#data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/address`  country Move source to target                 refName refName - - -               override - - -               state `#data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/address`  state Move source to target               zip `#data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/address`  postalCode Move source to target               fax `#data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/address`  fax Move source to target               url - - -             addressBookAddress\_text - - -             addressId - - -             defaultBilling - - -             defaultShipping - - -             id - - -             internalId - - -             isResidential - - -             label - - -           totalResults - - -         aging - - -         aging1 - - -         aging2 - - -         aging3 - - -         aging4 - - -         alcoholRecipientType - - -           id - - -           refName - - -         balance - - -         companyName `#data/messageBody/canonicalInvoiceHeader/customerBusinessInformation`  businessName Move source to target         contact - - -           category - - -           title `#data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/companyLocationContactInformation`  contactTitle Move source to target           comments - - Do not Map           company - - Do not Map             id - - Do not Map             refName - - Do not Map           contactSource - - Do not Map             id - - Do not Map             refName - - Do not Map           customForm - - Do not Map             id - - Do not Map             refName - - Do not Map           dateCreated - - Do not Map           email `#data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/companyLocationContactInformation`  contactEmail Move source to target           entityId `#data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/companyLocationContactInformation`  contactName Move source to target           firstName - - Do not Map           id - - Do not Map           isInactive - - Do not Map           isPrivate - - Do not Map           lastModifiedDate - - Do not Map           lastName - - Do not Map           mobilePhone - - Do not Map           owner - - Do not Map           phone `#data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/companyLocationContactInformation`  contactPhone Move source to target           salutation - - -           subsidiary - - -             id - - -             refName - - -         contactList - - -           count - - -           hasMore - - -           items - - -           offset - - -           totalResults - - -         contactRoles - - -         creditHoldOverride - - -           id - - -           refName - - -         currency - - -           currencyPrecision - - -           displaySymbol - - -           exchangeRate - - -           formatSample - - -           id - - -           isBaseCurrency - - -           isInactive - - -           lastModifiedDate - - -           locale - - -             id - - -             refName - - -           name - - -           overrideCurrencyFormat - - -           symbol - - -           symbolPlacement - - -             id - - -             refName - - -         currencyList - - -         customForm - - -           id - - -           refName - - -         dateCreated - - -         daysOverdue - - -         defaultAddress - - -         depositBalance - - -         emailPreference - - -           id - - -           refName - - -         emailTransactions - - -         entityId - - -         entityStatus - - -           id - - -           refName - - -         externalId `#data/controlFileHeader`  fileReceiverNumber Move source to target         CONSTANT\[COMPANYID\] `#data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/mpcCompanyLocationIdentifierList`  companyIdentifierType Hardcode "COMPANYID"         externalId\[2\] `#data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/mpcCompanyLocationIdentifierList`  companyIdentifierValue Move source to target where companyIdentifierType="COMPANYID"         externalId\[3\] `#data/controlFileHeader`  linkIdentifier Required value. Identifies application, sender and receiver:

concatenate MPC + ".COMPANYID:" +vendor/externalId + ".COMPANYID:" + entity/externalId to linkIdentifier

          fax - - -         faxTransactions - - -         giveAccess - - -         groupPricing - - -         id - - -         isBudgetApproved - - -         isInactive - - -         isPerson - - -         itemPricing - - -         language - - -           id - - -           refName - - -         lastModifiedDate - - -         overdueBalance - - -         phone - - -         printTransactions - - -         receivablesAccount - - -           id - - -           refName - - -         sendEmail - - -         shipComplete - - -         shippingCarrier - - -           id - - -           refName - - -         subsidiary - - -           id - - -           refName - - -         terms - - -           id - - -           refName - - -         unbilledOrders - - -       exchangeRate - - -       expCost - - -       fob - - -       handlingCost - - -       id - - -       item - - -         items - - -           account - - -             id - - -             refName - - -           amount `#data/messageBody/canonicalInvoiceItemDetails/invoicePricing`  pricingAmount Move source to target           description `#data/messageBody/canonicalInvoiceItemDetails/productItemInformation`  productDescription Move source to target           excludeFromRateRequest - - -           item - - -             assetAccount - - -               id - - -               refName - - -             atpMethod - - -               id - - -               refName - - -             averageCost - - -             baseUnit - - -             class - - -               id - - -               refName - - -             cogsAccount - - -               id - - -               refName - - -             contingentRevenueHandling - - -             correlatedItems - - -             costingMethod - - -               id - - -               refName - - -             countryOfManufacture - - -               id - - -               refName - - -             createdDate - - -             createRevenuePlansOn - - -               id - - -               refName - - -             currency - - -               id - - -               refName - - -             customForm - - -               id - - -               refName - - -             deferredRevenueAccount - - -               id - - -               refName - - -             deferRevRec - - -             department - - -               id - - -               refName - - -             directRevenuePosting - - -             displayName `#data/messageBody/canonicalInvoiceItemDetails/productItemInformation`  productName -             enforceminqtyinternally - - -             excludeFromSiteMap - - -             froogleProductFeed - - -             id - - -             includeChildren - - -             incomeAccount - - -               id - - -               refName - - -             internalId - - -             isGCoCompliant - - -             isInactive - - -             isOnline - - -             CONSTANT `#data/messageBody/canonicalInvoiceItemDetails/productCodesIdentifiers`  productCodeType Move "SUPPLIER" to target             itemId `#data/messageBody/canonicalInvoiceItemDetails/productCodesIdentifiers`  productCodeValue -             itemType - - -               id - - -               refName - - -             itemVendor - - -             lastModifiedDate - - -             lastPurchasePrice - - -             locations - - -             manufacturer - - -             matchBillToReceipt - - -             nexTagProductFeed - - -             presentationItem - - -             price - - -             purchaseUnit - - -             revenueRecognitionRule - - -               id - - -               refName - - -             revRecForecastRule - - -               id - - -               refName - - -             saleUnit - - -             shipIndividually - - -             shoppingProductFeed - - -             shopzillaProductFeed - - -             siteCategory - - -             stockUnit - - -             subsidiary - - -             supplyReplenishmentMethod - - -               id - - -               refName - - -             totalValue - - -             transferPriceUnits - - -             translations - - -             unitsType - - -               id - - -               refName - - -             useMarginalRates - - -             VSOEDelivered - - -             VSOESopGroup - - -               id - - -               refName - - -             weight - - -             weightUnit - - -               id - - -               refName - - -             weightUnits - - -             yahooProductFeed - - -           itemType - - -             id - - -             refName - - -           line `#data/messageBody/canonicalInvoiceItemDetails`  lineItemNumber Move source to target           marginal - - -           orderDoc - - -             id - - -             refName - - -           orderLine - - -           price - - -             id - - -             refName - - -           printItems - - -           CONSTANT `#data/messageBody/canonicalInvoiceItemDetails/itemQuantity`  quantityType Move "INVOICE" to target           quantity `#data/messageBody/canonicalInvoiceItemDetails/itemQuantity`  quantityValue Move source to target           quantityAvailable - - -           rate `#data/messageBody/canonicalInvoiceItemDetails/invoicePricing`  unitPriceBasisQuantity Move source to target           units `#data/messageBody/canonicalInvoiceItemDetails/itemQuantity`  unitOfMeasure Move source to target         totalResults - - -       itemCost - - -       lastModifiedDate - - -       linkedTrackingNumbers - - -       location - - -         id - - -         refName - - -       memo - - -       otherRefNum - - -       partner - - -         id - - -         refName - - -       postingPeriod - - -         id - - -         refName - - -       prevDate - - -       salesEffectiveDate - - -       shipAddress - - -       shipAddressList - - -         id - - -         refName - - -       CONSTANT\[SHIPPED\] `#data/messageBody/canonicalInvoiceHeader/invoiceDates`  dateType Hardcode "SHIPPED" to target       shipDate `#data/messageBody/canonicalInvoiceHeader/invoiceDates`  dateValue Move source to target if dateType="SHIPPED"       shipIsResidential - - -       shipOverride - - -       shippingAddress - - -         addr1 `#data/messageBody/canonicalInvoiceHeader/shipToLocationInformation/address`  address1 Move source to target         addr2 `#data/messageBody/canonicalInvoiceHeader/shipToLocationInformation/address`  address2 Move source to target         addressee `#data/messageBody/canonicalInvoiceHeader/shipToLocationInformation`  businessName Move source to target         addrPhone `#data/messageBody/canonicalInvoiceHeader/shipToLocationInformation/address`  telephone Move source to target         addrText - - -         city `#data/messageBody/canonicalInvoiceHeader/shipToLocationInformation/address`  city Move source to target         country - - -           id `#data/messageBody/canonicalInvoiceHeader/shipToLocationInformation/address`  country Move source to target           refName - - -         override - - -         state `#data/messageBody/canonicalInvoiceHeader/shipToLocationInformation/address`  state Move source to target         zip `#data/messageBody/canonicalInvoiceHeader/shipToLocationInformation/address`  postalCode Move source to target         fax - - -         url - - -       shippingAddress\_text - - -       shippingCostOverridden - - -       CONSTANT\[STARTDATE\] `#data/messageBody/canonicalInvoiceHeader/invoiceDates`  dateType Hardcode "STARTDATE" to target       startDate `#data/messageBody/canonicalInvoiceHeader/invoiceDates`  dateValue Move source to target if dateType=STARTDATE       status - - -         id - - -         refName - - -       subsidiary - - -         id - - -         refName - - -       subtotal - - -       taxDetails - - -         items - - -           taxAmount `#data/messageBody/canonicalInvoiceHeader/taxes`  taxAmount Move source to target           taxCode - - -             taxType - - -               country `#data/messageBody/canonicalInvoiceHeader/taxes`  country Move source to target           taxType `#data/messageBody/canonicalInvoiceHeader/taxes`  taxType Move source to target           taxRate `#data/messageBody/canonicalInvoiceHeader/taxes`  taxRate Move source to target       terms - - -         dateDriven - - -           id - - -           refName - - -         dayDiscountExpires - - -         dayOfMonthNetDue - - -         discountPercentDateDriven `#data/messageBody/canonicalInvoiceHeader/termsOfPayment`  termsOfPaymentPercent Move source to target         dueNextMonthIfWithinDays `#data/messageBody/canonicalInvoiceHeader/termsOfPayment`  numberOfDays Move source to target         id - - Do not Map         isInactive - - Do not Map         lastModifiedDate - - Do not Map         longitemtype - - Do not Map         name `#data/messageBody/canonicalInvoiceHeader/termsOfPayment`  termsOfPaymentKey Move source to target         preferred - - -         tname - - -       time - - -       toBeEmailed - - -       toBeFaxed - - -       toBePrinted - - -       total - - -       trackingNumbers - - -       CONSTANT\[INVOICE\] `#data/messageBody/canonicalInvoiceHeader/invoiceDates`  dateType Hardcode "INVOICE" to target       tranDate `#data/messageBody/canonicalInvoiceHeader/invoiceDates`  dateValue Move source to target if dateType=INVOICE       tranId - - -       lastFetchTime - - -       vendor - - -         country - - -           id - - -           refName - - -         currency - - -           id - - -           refName - - -         email - - -         externalId\[1\] `#data/controlFileHeader`  fileSenderNumber Move source to target         CONSTANT\[COMPANYID\] `#data/messageBody/canonicalInvoiceHeader/supplierBusinessInformation/mpcCompanyLocationIdentifierList`  companyIdentifierType Hardcode "COMPANYID"         externalId\[2\] `#data/messageBody/canonicalInvoiceHeader/supplierBusinessInformation/mpcCompanyLocationIdentifierList`  companyIdentifierValue Move source to target where companyIdentifierType="COMPANYID"         externalId\[3\] `#data/controlFileHeader`  linkIdentifier Required value. Identifies application, sender and receiver:

concatenate MPC + ".COMPANYID:" +vendor/externalId + ".COMPANYID:" + entity/externalId to linkIdentifier

          id - - -         isElimination - - -         isInactive - - -         lastModifiedDate - - -         legalName - - -         mainAddress - - -           addr1 `#data/messageBody/canonicalInvoiceHeader/supplierBusinessInformation/address`  address1 Move source to target           addr2 `#data/messageBody/canonicalInvoiceHeader/supplierBusinessInformation/address`  address2 Move source to target           addressee `#data/messageBody/canonicalInvoiceHeader/supplierBusinessInformation`  businessName Move source to target           addrPhone `#data/messageBody/canonicalInvoiceHeader/supplierBusinessInformation/address`  telephone Move source to target           addrText - - -           city `#data/messageBody/canonicalInvoiceHeader/supplierBusinessInformation/address`  city Move source to target           country - - -             id `#data/messageBody/canonicalInvoiceHeader/supplierBusinessInformation/address`  country Move source to target             refName - - -           override - - -           state `#data/messageBody/canonicalInvoiceHeader/supplierBusinessInformation/address`  state Move source to target           zip `#data/messageBody/canonicalInvoiceHeader/supplierBusinessInformation/address`  postalCode Move source to target           fax - - -           url - - -         name - - -         returnAddress - - -         shippingAddress - - -         state - - -      

 

## Creatio ERP

The following are the Creatio ERP attributes that are mapped with the Canonical attributes and their output path.

- **Transform Name**:
    - STD\_Transform\_MPL\_Creatio\_Invoice\_IB\_V1
 
[![Closed](/sites/default/files/tech_comms/mpl/Skins/Default/Stylesheets/Images/transparent.gif)Guidelines](#)          Input Element Output Path Output Element Mapping Rules     Id - - -   CreatedOn - - -   CreatedById - - -   ModifiedOn - - -   ModifiedById - - -   Number - - -   Start Date `data/messageBody/canonicalInvoiceHeader/transactionReferenceIdentifierList(1)`  transactionDate Store literal value. b2bTransactionIdentifierType= INVOICE If inbound payload has has 0001-01-01T00:00:00Z value then do not map.   `data/messageBody/canonicalInvoiceHeader/transactionReferenceIdentifierList(1)`  epochTransactionDate Convert input to epoch format b2bTransactionIdentifierType= INVOICE If inbound payload has has 0001-01-01T00:00:00Z value then do not map. Miliseconds will be rounded off 000.   `data/messageBody/canonicalInvoiceHeader/invoiceDates` dateValue Store literal value. dateType=INVOICE   ` data/messageBody/canonicalInvoiceHeader/invoiceDates`  epochDateValue Convert input to epoch format. dateType=INVOICE If inbound payload has has 0001-01-01T00:00:00Z value then do not map. Miliseconds will be rounded off 000.   UsrEDITermsBasis - - -     Name `#/data/messageBody/canonicalInvoiceHeader/termsOfPayment`  termsOfPaymentDateBasis Convert from sourcepayload to canonical target using enum mapping worksheet if source present, else do not map.   AccountId - - -   SupplierId - - -   OrderId - - -   Amount `#data/messageBody/canonicalInvoiceSummary`  summaryValue Store literal value where summaryType = TOTALAMOUNT   AmountWithoutTax - - -   PrimaryAmountWithoutTax - - -   DevatisTermsId - - -   DevatisDueDate - - -   DevatisPurchaseOrderDate - - -   DevatisTrueCommerceInvoiceId `#/data/messageBody/canonicalInvoiceHeader/transactionReferenceIdentifierList(1)`  b2bTransactionIdentifierValue Store literal value b2bTransactionIdentifierType = "INVOICE"   DevatisIsValid - - -   DevatisSupplierAddressId - - -   DevatisShipperAddressId - - -   UsrPurchaseOrderTypeDescription `data/messageBody/canonicalInvoiceHeader`  invoiceType Refer the enum list and map to canonical code   UsrEDIParentIDNumber `data/messageBody/canonicalInvoiceHeader/billToBusinessInformation/mpcCompanyLocationIdentifierList`  companyIdentifierValue If UsrEDIParentIDNumber is not empty move UsrEDIParentIDNumber to target else if DevatisParentAccount.UsrNumber is not empty move DevatisParentAccount.UsrNumber to target else if DevatisParentAccount.DevatisIdentificationNumber is not empty move DevatisParentAccount.DevatisIdentificationNumber to target   UsrEDIParentIDType - - -     Description `data/messageBody/canonicalInvoiceHeader/billToBusinessInformation/mpcCompanyLocationIdentifierList`  companyIdentifierType if UsrEDIParentIDType.Description is not empty move UsrEDIParentIDType.Description to target else if DevatisParentAccount.DevatisIdentifcationType is not empty Move DevatisParentAccount.DevatisIdentifcationType to target   UsrEDICustomerIDNumber `#/data/messageBody/canonicalInvoiceHeader/billToShipToBusinessInformation/mpcCompanyLocationIdentiferList`  compnayIdentiferValue If UsrUsrEDICustomerIDNumber is not empty move UsrEDICustomerIDNumber to target else if Account.UsrNumber is not empty move Account.UsrNumber to target else if Account.DevatisIdentificationNumber is not empty move Account.DevatisIdentificationNumber to target   UsrEDICustomerIDType           Description `#/data/messageBody/canonicalInvoiceHeader/billToShipToBusinessInformation/mpcCompanyLocationIdentiferList`  compnayIdentiferType if UsrEDICustomerIDType.Description is not empty move UsrEDICustomerIDType.Description to target else if Account.DevatisIdentifcationType is not empty Move Account.DevatisIdentifcationType to target   Account - - -     Id - - -     Name `#/data/messageBody/canonicalInvoiceHeader/billToShipToBusinessInformation`  businessName Store literal value     TypeId - - -     Phone - - -     AdditionalPhone - - -     Fax - - -     Web - - -     AddressTypeId - - -     Address `#/data/messageBody/canonicalInvoiceHeader/billToShipToBusinessInformation/address`  address1 Store literal value     CityId - - -     RegionId - - -     Zip `#/data/messageBody/canonicalInvoiceHeader/billToShipToBusinessInformation/address`  postalCode Store literal value     CountryId - - -     CityName `#/data/messageBody/canonicalInvoiceHeader/billToShipToBusinessInformation/address`  city Store literal value     RegionCode `#/data/messageBody/canonicalInvoiceHeader/billToShipToBusinessInformation/address`  state Store literal value     CountryCode `#/data/messageBody/canonicalInvoiceHeader/billToShipToBusinessInformation/address`  country Store literal value     Notes - - -     AlternativeName - - -     GPSN - - -     GPSE - - -     Completeness - - -     DevatisIdentificationNumber `#/data/messageBody/canonicalInvoiceHeader/billToShipToBusinessInformation/mpcCompnayLocationIdentiferList`  compnayIdentiferValue If UsrUsrEDICustomerIDNumber is not empty move UsrEDICustomerIDNumber to target else if Account.UsrNumber is not empty MoveAccount.UsrNumber to target else if Account.DevatisIdentificationNumber is not empty move Account.DevatisIdentificationNumber to target     DevatisIdentificationType `#/data/messageBody/canonicalInvoiceHeader/billToShipToBusinessInformation/mpcCompnayLocationIdentiferList`  compnayIdentiferType if UsrEDICustomerIDType.Description is not empty move UsrEDICustomerIDType.Description to target else if Account.DevatisIdentifcationType is not empty Move Account.DevatisIdentifcationType to target     UsrNumber `#/data/messageBody/canonicalInvoiceHeader/cBusinessInformation/mpcCompanyLocationIdentiferList`  compnayIdentiferValue If UsrUsrEDICustomerIDNumber is not empty move UsrEDICustomerIDNumber to target else if Account.UsrNumber is not empty MoveAccount.UsrNumber to target else if Account.DevatisIdentificationNumber is not empty move Account.DevatisIdentificationNumber to target   Supplier - - -     Id - - -     Name `#/data/messageBody/canonicalInvoiceHeader/remitToBusinessInformation`  businessName Store literal value     `#/data/messageBody/canonicalInvoiceHeader/supplierBusinessInformation`  businessName Store literal value     OwnerId - - -     CreatedOn - - -     CreatedById - - -     ModifiedOn - - -     ModifiedById - - -     Code - - -     TypeId - - -     Phone - - -     AddressTypeId - - -     Address `#/data/messageBody/canonicalInvoiceHeader/remitToBusinessInformation/address`  address1 Store literal value     `#/data/messageBody/canonicalInvoiceHeader/supplierBusinessInformation/address`  address1 Store literal value     CityId - - -     - - -     RegionId - - -     - - -     Zip `#/data/messageBody/canonicalInvoiceHeader/remitToBusinessInformation/address`  postalCode Store literal value     `#/data/messageBody/canonicalInvoiceHeader/supplierBusinessInformation/address`  postalCode Store literal value     CountryId - - -     - - -     CityName `#/data/messageBody/canonicalInvoiceHeader/remitToBusinessInformation/address`  city Store literal value     `#/data/messageBody/canonicalInvoiceHeader/supplierBusinessInformation/address`  city Store literal value     RegionCode `#/data/messageBody/canonicalInvoiceHeader/remitToBusinessInformation/address`  state Store literal value     `#/data/messageBody/canonicalInvoiceHeader/supplierBusinessInformation/address`  state Store literal value     CountryCode `#/data/messageBody/canonicalInvoiceHeader/remitToBusinessInformation/address`  country Store literal value     `#/data/messageBody/canonicalInvoiceHeader/supplierBusinessInformation/address`  country Store literal value     DevatisIdentificationNumber `#/data/messageBody/canonicalInvoiceHeader/remitToBusinessInformation/mpcCompanyLocationIdentifierList`  companyIdentifierValue if Supplier.UsrNumber is not empty MoveSupplier.UsrNumber to target else if Supplier.DevatisIdentificationNumber is not empty move Supplier.DevatisIdentificationNumber to target     `#/data/messageBody/canonicalInvoiceHeader/supplierBusinessInformation/mpcCompanyLocationIdentifierList`  companyIdentifierValue if Supplier.UsrNumber is not empty MoveSupplier.UsrNumber to target else if Supplier.DevatisIdentificationNumber is not empty move Supplier.DevatisIdentificationNumber to target     DevatisIdentificationTypeId - - -     DevatisAddress2 - - -     DevatisDiscount - - -     DevatisEDIName - - -     Logo@odata.mediaEditLink - - -     Logo@odata.mediaReadLink - - -     Logo@odata.mediaContentType - - -     DevatisIdentificationType `#/data/messageBody/canonicalInvoiceHeader/supplierBusinessInformation/mpcCompanyLocationIdentifierList`  companyIdentifierType Store literal value     `#/data/messageBody/canonicalInvoiceHeader/remitToBusinessInformation/mpcCompanyLocationIdentifierList`  companyIdentifierType Store literal value     UsrNumber `#/data/messageBody/canonicalInvoiceHeader/remitToBusinessInformation/mpcCompanyLocationIdentifierList`  companyIdentifierValue if Supplier.UsrNumber is not empty MoveSupplier.UsrNumber to target else if Supplier.DevatisIdentificationNumber is not empty move Supplier.DevatisIdentificationNumber to target     `#/data/messageBody/canonicalInvoiceHeader/supplierBusinessInformation/mpcCompanyLocationIdentifierList`  companyIdentifierValue if Supplier.UsrNumber is not empty MoveSupplier.UsrNumber to target else if Supplier.DevatisIdentificationNumber is not empty move Supplier.DevatisIdentificationNumber to target     `#/data/controlFileHeader`  fileSenderNumber Supplier.DevatisIdentificationType +":"+ .Supplier.UsrNumber   Order - - -     Id - - -     CreatedOn - - -     CreatedById - - -     ModifiedOn - - -     ModifiedById - - -     Number - - -     Date `#/data/messageBody/canonicalInvoiceHeader/transactionReferenceIdentifierList(2)`  transactionDate Store literal value b2bTransactionIdentifierType = PURCHASEORDER If inbound payload has has 0001-01-01T00:00:00Z value then do not map.     `#/data/messageBody/canonicalInvoiceHeader/transactionReferenceIdentifierList(2)`  epochTransactionDate Convert input to epoch format b2bTransactionIdentifierType = PURCHASEORDER If inbound payload has has 0001-01-01T00:00:00Z value then do not map. Miliseconds will be rounded off 000.      `#/data/messageBody/canonicalInvoiceHeader/invoiceDates`  dateValue Store literal value dateType = PURCHASEORDER If inbound payload has has 0001-01-01T00:00:00Z value then do not map.     `#/data/messageBody/canonicalInvoiceHeader/invoiceDates`  epochDateValue Convert input to epoch format. dateType = PURCHASEORDER If inbound payload has has 0001-01-01T00:00:00Z value then do not map. Miliseconds will be rounded off 000.     StatusId - - -     PaymentStatusId - - -     DeliveryStatusId - - -     ActualDate - - -     CurrencyId - - -     CurrencyRate - - -     Amount - - -     PaymentAmount - - -     PrimaryAmount - - -     PrimaryPaymentAmount - - -     SourceOrderId - - -     DeliveryTypeId - - -     PaymentTypeId - - -     ReceiverName - - -     Comment - - -     DevatisParentAccountId - - -     DevatisCustomerPurchaseOrderNumber `#/data/messageBody/canonicalInvoiceHeader/transactionReferenceIdentifierList(2)`  b2bTransactionIdentifierValue Store literal Value where b2bTransactionIdentifierType= PURCHASEORDER     DevatisLoadedOn - - -     DevatisMemo - - -     DevatisEDILocDescription - - -     DevatisEDITerms `#/data/messageBody/canonicalInvoiceHeader/termsOfPayment`  numberOfDays 4th element in the string. Store literal Value     `#/data/messageBody/canonicalInvoiceHeader/termsOfPayment`  termsOfPaymentPercent 1st element in the string . Store literal Value     `#/data/messageBody/canonicalInvoiceHeader/termsOfPayment`  discountDueNumberOfDays 2nd element in the string.Store literal Value     `#/data/messageBody/canonicalInvoiceHeader/termsOfPayment`  termsOfPaymentTypeCode Hard Code to BASIC     UsrEDIParentIDNumber - - -     UsrEDICustomerIDNumber - - -   DevatisParentAccount - - -     Id - - -     Name `#/data/messageBody/canonicalInvoiceHeader/customerBusinessInformation`  businessName Store literal Value     `data/messageBody/canonicalInvoiceHeader/billToBusinessInformation`  businessName Store literal Value     OwnerId - - -     CreatedOn - - -     CreatedById - - -     ModifiedOn - - -     ModifiedById - - -     Code - - -     Phone - - -     AdditionalPhone - - -     Fax - - -     Web - - -     AddressTypeId - - -     Address `#/data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/address`  address1 Store literal Value     `data/messageBody/canonicalInvoiceHeader/billToBusinessInformation/address`  address1 Store literal Value     CityId - - -     RegionId - - -     Zip `#/data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/address`  postalCode Store literal Value     `data/messageBody/canonicalInvoiceHeader/billToBusinessInformation/address`  postalCode Store literal Value     CountryId - - -     CityName `#/data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/address`  city Store literal Value     `data/messageBody/canonicalInvoiceHeader/billToBusinessInformation/address`  city Store literal Value     RegionCode `#/data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/address`  state Store literal Value     `data/messageBody/canonicalInvoiceHeader/billToBusinessInformation/address`  state Store literal Value     CountryCode `#/data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/address/`  country Store literal Value     `data/messageBody/canonicalInvoiceHeader/billToBusinessInformation/address`  country Store literal Value     DevatisCustomerNumber - - -     DevatisColumn3 - - -     DevatisIdentificationNumber `#/data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/mpcCompanyLocationIdentifierList`  companyIdentifierValue if DevatisParentAccount.UsrNumber is not empty move DevatisParentAccount.UsrNumberto target else if DevatisParentAccount.DevatisIdentificationNumber is not empty move DevatisParentAccount.DevatisIdentificationNumber to target     `data/messageBody/canonicalInvoiceHeader/billToBusinessInformation/mpcCompanyLocationIdentifierList`  companyIdentifierValue If UsrEDIParentIDNumber is not empty move UsrEDIParentIDNumber to target else if DevatisParentAccount.UsrNumber is not empty move DevatisParentAccount.UsrNumberto target else if DevatisParentAccount.DevatisIdentificationNumber is not empty move DevatisParentAccount.DevatisIdentificationNumber to target     DevatisIdentificationTypeId - - -     DevatisAddress2 - - -     DevatisDiscount - - -     DevatisEDIName - - -     DevatisIdentificationType `data/messageBody/canonicalInvoiceHeader/billToBusinessInformation/mpcCompanyLocationIdentifierList`  companyIdentifierType if UsrEDIParentIDType.Description is not empty move UsrEDIParentIDType.Description to target else if DevatisParentAccount.DevatisIdentifcationType is not empty Move DevatisParentAccount.DevatisIdentifcationType to target     `#/data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/mpcCompanyLocationIdentifierList`  companyIdentifierType if DevatisParentAccount.DevatisIdentifcationType is not empty Move DevatisParentAccount.DevatisIdentifcationType to target     UsrNumber `#/data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/mpcCompanyLocationIdentifierList`  companyIdentifierValue if DevatisParentAccount.UsrNumber is not empty move DevatisParentAccount.UsrNumber to target else if DevatisParentAccount.DevatisIdentificationNumber is not empty move DevatisParentAccount.DevatisIdentificationNumber to target     `data/messageBody/canonicalInvoiceHeader/billToBusinessInformation/mpcCompanyLocationIdentifierList`  companyIdentifierValue If UsrEDIParentIDNumber is not empty move UsrEDIParentIDNumber to target else if DevatisParentAccount.UsrNumber is not empty move DevatisParentAccount.UsrNumber to target else if DevatisParentAccount.DevatisIdentificationNumber is not empty move DevatisParentAccount.DevatisIdentificationNumber to target     `#/data/controlFileHeader`  fileReceiverNumber DevatisParentAccount.DevatisIdentificationType +":"+ .DevatisParentAccount.UsrNumber   InvoiceProduct - - -     Id - - -     CreatedOn - - -     CreatedById - - -     ModifiedOn - - -     ModifiedById - - -     Name - - -     Notes - - -     ProductId - - -     CustomProduct - - -     DeliveryDate - - -     Quantity `#/data/messageBody/canonicalInvoiceItemDetails/itemQuantity`  quantityValue  Store literal Value where quantityType = "ITEM"     UnitId - - -     PrimaryPrice - - -     Price `#/data/messageBody/canonicalInvoiceItemDetails/invoicePricing`  pricingAmount Store literal value if present. Where pricingType=NET     `#/data/messageBody/canonicalInvoiceItemDetails/invoicePricing`  pricingAmount Store literal value if present. Where pricingType=UNIT     PrimaryAmount - - -     Amount - - -     PrimaryDiscountAmount - - -     DiscountAmount - - -     DiscountPercent - - -     TaxId - - -     PrimaryTaxAmount - - -     TaxAmount - - -     PrimaryTotalAmount - - -     TotalAmount - - -     DiscountTax - - -     InvoiceId - - -     ProcessListeners - - -     SupplyPaymentProductId - - -     BaseQuantity - - -     PriceListId - - -     DevatisLot - - -     DevatisExpirationDate - - -     DevatisShipped - - -     DevatisOrdered - - -     DevatisBackOrder - - -     DevatisPricebookId - - -     UsrPackagingTypeId - - -     Product - - -       Id - - -       CreatedOn - - -       CreatedById - - -       ModifiedOn - - -       ModifiedById - - -       Name `#data|messageBody|canonicalInvoiceItemDetails|productItemInformation`  productDescription Store literal value if present.       Code `#/data/messageBody/canonicalInvoiceItemDetails/productCodesIdentifiers`  productCodeValue  Store the value without Hyphen where productCodeType = "US\_NDC542"       UnitId - - -       CurrencyId - - -       Price - - -       TaxId - - -       URL - - -       TypeId - - -       Active - - -       ProcessListeners - - -       OwnerId - - -       Description - - -       ProductSourceId - - -       Notes - - -       PictureId - - -       IsArchive - - -       KeenDeveloperId - - -       ShortDescription - - -       Benefits - - -       CategoryId - - -       TradeMarkId - - -       GeneralConditions - - -       DevatisPackage - - -       DevatisFormId - - -       DevatisGTIN2 - - -       DevatisGTIN1 - - -       DevatisMinimumOrderQuantity - - -       DevatisSAP - - -       DevatisUPC - - -       DevatisProductFamilyId - - -     Unit - - -       Id - - -       CreatedOn - - -       CreatedById - - -       ModifiedOn - - -       ModifiedById - - -       Name - - -       Description - - -       ShortName `#/data/messageBody/canonicalInvoiceItemDetails/itemQuantity`  unitOfMeasure Store literal value where quantityType = ITEM       ProcessListeners - - -    

 

## SAP HANA ERP

The following are the SAP HANA ERP attributes that are mapped with the Canonical attributes and their output path.

- **Transform Name**:
    - STD\_LA\_MPL\_Sap\_Hana\_Invoice\_IB\_V1
 
[![Closed](/sites/default/files/tech_comms/mpl/Skins/Default/Stylesheets/Images/transparent.gif)Guidelines](#)         Input Element Output Path Output Element Mapping Rules     BillingDocument `#/data/messageBody/canonicalInvoiceHeader/invoiceTransactionReferenceIdentifierList`  b2bTransactionIdentifierValue Store literal value … If source b2bTransactionIdentifierType = "INVOICE".   BillingDocumentCategory `#/data/messageBody/canonicalInvoiceHeader`  billingCategory Store literal value if present.    BillingDocumentType `#/data/messageBody/canonicalInvoiceHeader/invoiceOrganization`  organizationValue Store literal value if present. where organizationType= BILLINGTYPE   CreationDate `#/data/messageBody/canonicalInvoiceHeader/invoiceDates`  dateValue "Store literal value. where dateType=DELIVERY Concatenate source CREDAT + CRETIM into target in XML date time format YYYY-MM-DDTHH:MM:SS.nnn"   CreationTime - - -   LastChangeDate - - -   LastChangeDateTime - - -   SalesOrganization  `#/data/messageBody/canonicalInvoiceHeader/remitToBusinessInformation/mpcCompanyLocationIdentifierList`  companyIdentifierValue Store literal value if present. where companyIdentifierType=COMPANYID   `data/controlFileHeader`  fileSenderNumber "fileSenderNumber": "COMPANYID:" + .SalesOrganization,   ` #/data/messageBody/canonicalInvoiceHeader/invoiceOrganization`  organizationValue Store literal value if present. where OrganiazationType=SALESORG (008)   DistributionChannel `#/data/messageBody/canonicalInvoiceHeader/invoiceOrganization`  organizationValue Store literal value if present. where OrganiazationType=DISTRIBUTIONCHANNEL (007)   Division `#/data/messageBody/canonicalInvoiceHeader/invoiceOrganization`  organizationValue Store literal value if present. where OrganiazationType=DIVISION (006)   BillingDocumentDate `#/data/messageBody/canonicalInvoiceHeader/invoiceDates`  dateValue Convert from source IDoc to canonical target value using values in enum mapping worksheet. Where dateType=DOCUMENT   TotalNetAmount:  `#/data/messageBody/canonicalInvoiceItemDetails/invoicePricing`  pricingAmount Store literal value if present. where pricingType=NET   TransactionCurrency `#/data/messageBody/canonicalInvoiceHeader/invoiceCurrency`  currencyCode Store literal value if present.   CustomerPaymentTerms:  `#/data/messageBody/canonicalInvoiceHeader/termsOfPayment`  invoiceTermsOfPaymentKey Store literal value if present.   CompanyCode:  `#/data/messageBody/canonicalInvoiceHeader/remitToBusinessInformation/mpcCompanyLocationIdentifierList`  companyIdentifierValue Store literal value if present. where companyIdentifierType=COMPANYID   FiscalYear - - -   SoldToParty `#/data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/mpcCompanyLocationIdentifierList`  companyIdentifierValue Store literal value if present. where companyIdentifierType=COMPANYID   `data/controlFileHeader`  fileReceiverNumber "fileReceiverNumber": "COMPANYID:" + .SoldToParty   Bill to Party `#/data/messageBody/canonicalInvoiceHeader/billToBusinessInformation/mpcCompanyLocationIdentifierList`  companyIdentifierValue Store literal value if present. where companyIdentifierType=COMPANYID   Ship to Party `#/data/messageBody/canonicalInvoiceHeader/shipToLocationInformation/mpcCompanyLocationIdentifierList`  alternateCompanyLocationIdentifierValue Store literal value if present. where companyIdentifierType=COMPANYID   Payer `#/data/messageBody/canonicalInvoiceHeader/invoicePayerBusinessInformation/mpcCompanyLocationIdentifierList`  businessName Store literal value if present. where companyIdentifierType=COMPANYID   Items:  `#/data/messageBody/canonicalInvoiceHeader/customerBusinessInformation/mpcCompanyLocationIdentifierList`  companyIdentifierValue Store literal value if present. where companyIdentifierType=COMPANYID     BillingDocumentItem: `#/data/messageBody/canonicalInvoiceItemDetails`  lineItemNumber Store literal value.      SalesDocumentItemCategory `#/data/messageBody/canonicalInvoiceItemDetails`  itemCategory Store literal value.     Material `#/data/messageBody/canonicalInvoiceItemDetails/productCodesIdentifiers`  productCodeValue "Store ltieral value. Where productCodeType= ""VENDOR"" "     Batch `#/data/messageBody/canonicalInvoiceItemDetails/TransactionReferenceIdentifierList`  b2bTransactionIdentifierValue Store literal value if present.     Plant - - -     StorageLocation - - -     BillingQuantity  `#/data/messageBody/canonicalInvoiceItemDetails/itemQuantity`  quantityValue Store literal value with quantityType = "ORDER"     `#/data/messageBody/canonicalInvoiceItemDetails/itemQuantity`  quantityValue Store literal value with quantityType = "ORDER"     BillingQuantityUnit `#/data/messageBody/canonicalInvoiceItemDetails/itemQuantity`  unitOfMeasure Convert from SAP to canonical value based on enum mapping worksheet if source present.     ItemGrossWeight:  `#/data/messageBody/canonicalInvoiceItemDetails/itemWeight`  weightValue "If source present and source greater than 0: If source contains leading spaces, trim leading spaces and store literal value. Else store literal value.

where weightType=GROSSWEIGHT"

      ItemNetWeight: `#/data/messageBody/canonicalInvoiceItemDetails/itemWeight`  weightValue "If source present and source greater than 0: If source contains leading spaces, trim leading spaces and store literal value. Else store literal value.

weightType=NEIGHTWEIGHT"

     

 

 ![](/sites/default/files/tech_comms/mpl/Content/Resources/Images/global_images/note_tip_24x24.png) Review TraceLink's [API: Terms of Use](https://www.tracelink.com/legal-and-trust/api-terms-of-use)



 

 

 

 

#### Table of contents

 

 

 

 

 

 



 

##### Related Content

 

 [ ![Related content](https://www.tracelink.com/sites/default/files/2024-09/cloud.svg) ](/resources/tracelink-university/forecast-plan-idoc) 

#####  Forecast plan (IDoc) 

 Forecasting APIs allow companies to exchange data about anticipated product demand and supply availability with upstream supply chain Partners without giving these Partners access to their serialization system of record. 

 

 [View More](/resources/tracelink-university/forecast-plan-idoc) 

 

 [ ![Related content](https://www.tracelink.com/sites/default/files/2024-09/cloud.svg) ](/resources/tracelink-university/forecast-plan-x12) 

#####  Forecast plan (X12) 

 Forecasting APIs allow companies to exchange data about anticipated product demand and supply availability with upstream supply chain Partners without giving these Partners access to their serialization system of record. 

 

 [View More](/resources/tracelink-university/forecast-plan-x12) 

 

 [ ![Related content](https://www.tracelink.com/sites/default/files/2024-09/cloud.svg) ](/resources/tracelink-university/forecast-plan-response-idoc) 

#####  Forecast plan response (IDoc) 

 Forecasting APIs allow companies to exchange data about anticipated product demand and supply availability with downstream supply chain Partners without giving these Partners access to their serialization system of record. 

 

 [View More](/resources/tracelink-university/forecast-plan-response-idoc)