XSLT file for conversion from XML to CSV
For the ERP agnostic plugin, Kofax AP Agility provides the XSLT file used to convert the exported invoice from XML to CSV format.
For each ERP connection, Kofax AP Agility Administrator configures the XSLT file to transform the XML file of the exported invoice with the help of the ERP Connections form. Kofax AP Agility users can provide their own XSLT script for the conversion.
The XSLT sample script shows how to export invoices to CSV format:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<xsl:text>AmtMiscellaneous,BusinessUnitID,Currency,DiscountDueDate,DueDate,EmployeeName,Freight,InvoiceDate,InvoiceNumber,InvoiceType,LineItems,NetAmount0,NetAmount1,OrganizationName,PoNumber,TaxAmount1,TaxRate1,InvoiceAmount,VendorName1,EcmDocumentId,DocumentLink,ErpPoType,ScanDate,SubTotal,Urn,IpaInvalidReasonCode,IpaInvalidReasonRule,IpaBusinessUnitName,IpaOrganizationName,IpaOrganizationId,IpaVendorIndexId</xsl:text>
<xsl:text> </xsl:text>
<xsl:value-of select="Invoice/AmtMiscellaneous"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/BusinessUnitID"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/Currency"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/DiscountDueDate"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/DueDate"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/EmployeeNamev"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/Freight"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/InvoiceDate"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/InvoiceNumber"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/InvoiceType"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/LineItems"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/NetAmount0"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/NetAmount1"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/OrganizationName"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/PoNumber"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/TaxAmount1"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/TaxRate1"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/InvoiceAmount"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/VendorName1"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/EcmDocumentId"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/DocumentLink"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/ErpPoType"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/ScanDate"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/SubTotal"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/Urn"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/IpaInvalidReasonCode"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/IpaInvalidReasonRule"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/IpaBusinessUnitName"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/IpaOrganizationName"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/IpaOrganizationId"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Invoice/IpaVendorIndexId"/>
<xsl:text> </xsl:text>
<xsl:text>LineNumber,LineType,OriginalLineNumber,Quantity,Total,UnitPrice,ChargeCode,ChargeCodeId,CompanyCode,ErpPoType,MaterialGroup,Plant,PoLineNumber,Puom,QtyPuom,TaxableAmount,TaxCode,Activity,BusinessArea,CostCenter,DbCrIndicator,InternalOrder, Network,ProfitCenter,SalesOrder,SalesOrderItem,TaxJurCode,WbsElem,GlAccount,ConditionCount,ConditionStepNo,ConditionType,FreightVendor,GrDocItem,GrDocNo,GrDocYear,SheetItem,SheetNo,IpaBusinessUnit,IpaLineType</xsl:text>
<xsl:text> </xsl:text>
<xsl:for-each select="Invoice/LineItem">
<xsl:value-of select="LineNumber"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="LineType"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="OriginalLineNumber"/>
<xsl:value-of select="Quantity"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Total"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="UnitPrice"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="ChargeCode"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="ChargeCodeId"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="CompanyCode"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="ErpPoType"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="MaterialGroup"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Plant"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="PoLineNumber"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Puom"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="QtyPuom"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="TaxableAmount"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="TaxCode"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Activity"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="BusinessArea"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="CostCenter"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="DbCrIndicator"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="InternalOrder"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="Network"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="ProfitCenter"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="SalesOrder"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="SalesOrderItem"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="TaxJurCode"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="WbsElem"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="GlAccount"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="ConditionCount"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="ConditionStepNo"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="ConditionType"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="FreightVendor"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="GrDocItem"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="GrDocNo"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="GrDocYear"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="SheetItem"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="SheetNo"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="IpaBusinessUnit"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="IpaLineType"/>
<xsl:text> </xsl:text>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>