Peppol importeren via ‘Import – Financiële transacties’ in Exact Online

Een belangrijke leverancier stuurt ons facturen in XML Peppol formaat. Maar het Exact Online (Project/ manufacturing) abonnement wat wij hebben kan dit niet inlezen. Ik heb er over gebeld.

Kunnen we die XML bestanden van die facturen niet omzetten naar XML bestanden die we kunnen importeren via ‘Import – Financiële transacties’?

Na navraag: wat voor soort PEPPOL factuur betreft het? Voor goederen levering of alleen kosten?

Zou je eventueel (een deel van) de inhoud kunnen toevoegen?

<?xml version="1.0" encoding="utf-8"?>
<Invoice xmlns="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2" xmlns:qdt="urn:oasis:names:specification:ubl:schema:xsd:QualifiedDatatypes-2" xmlns:ccts="urn:oasis:names:specification:ubl:schema:xsd:CoreComponentParameters-2" xmlns:stat="urn:oasis:names:specification:ubl:schema:xsd:DocumentStatusCode-1.0" xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2" xmlns:udt="urn:un:unece:uncefact:data:draft:UnqualifiedDataTypesSchemaModule:2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <cbc:UBLVersionID>2.0</cbc:UBLVersionID>
  <cbc:CustomizationID />
  <cbc:ID>50000000</cbc:ID>
  <cbc:IssueDate>2020-01-03</cbc:IssueDate>
  <cbc:Note>Verkoopfactuur: 50000000 - week 1 - 193014</cbc:Note>
  <cbc:TaxPointDate>2020-01-03</cbc:TaxPointDate>
  <cbc:AccountingCostCode></cbc:AccountingCostCode>
  <cbc:AccountingCost></cbc:AccountingCost>
  <cac:OrderReference>
    <cbc:ID>week 1 - 193014</cbc:ID>
    <cbc:SalesOrderID>50100000</cbc:SalesOrderID>
  </cac:OrderReference>
  <cac:AccountingSupplierParty>
    <cac:Party>
      <cac:PartyName>
        <cbc:Name>VDH Solar Groothandel</cbc:Name>
      </cac:PartyName>
      <cac:PostalAddress>
        <cbc:StreetName>Majoraan 9-A</cbc:StreetName>
        <cbc:CityName>Didam</cbc:CityName>
        <cbc:PostalZone>6942 SB</cbc:PostalZone>
        <cac:Country>
          <cbc:IdentificationCode>NL</cbc:IdentificationCode>
        </cac:Country>
      </cac:PostalAddress>
      <cac:PartyTaxScheme>
        <cbc:CompanyID></cbc:CompanyID>
      </cac:PartyTaxScheme>
      <cac:PartyLegalEntity>
        <cbc:CompanyID></cbc:CompanyID>
      </cac:PartyLegalEntity>
    </cac:Party>
  </cac:AccountingSupplierParty>
  <cac:AccountingCustomerParty>
    <cac:Party>
      <cac:PartyName>
        <cbc:Name>BonGoSolar</cbc:Name>
      </cac:PartyName>
      <cac:PostalAddress>
        <cbc:StreetName>Tweelingenlaan 15</cbc:StreetName>
        <cbc:CityName>APELDOORN</cbc:CityName>
        <cbc:PostalZone>7324 AP</cbc:PostalZone>
        <cac:Country>
          <cbc:IdentificationCode>NL</cbc:IdentificationCode>
        </cac:Country>
      </cac:PostalAddress>
      <cac:PartyTaxScheme>
        <cbc:CompanyID></cbc:CompanyID>
        <cac:TaxScheme />
      </cac:PartyTaxScheme>
    </cac:Party>
  </cac:AccountingCustomerParty>
  <cac:PaymentMeans>
    <cbc:PaymentMeansCode>ZZZ</cbc:PaymentMeansCode>
    <cbc:PaymentDueDate>2020-01-17</cbc:PaymentDueDate>
    <cac:PayeeFinancialAccount>
      <cbc:ID>NL66RABO0337044961</cbc:ID>
    </cac:PayeeFinancialAccount>
  </cac:PaymentMeans>
  <cac:PaymentTerms>
    <cbc:Amount currencyID="EUR">1968.17</cbc:Amount>
  </cac:PaymentTerms>
  <cac:TaxTotal>
    <cbc:TaxAmount currencyID="EUR">341.58</cbc:TaxAmount>
  </cac:TaxTotal>
  <cac:LegalMonetaryTotal>
    <cbc:TaxExclusiveAmount currencyID="EUR">1626.59</cbc:TaxExclusiveAmount>
    <cbc:PayableAmount currencyID="EUR">1968.17</cbc:PayableAmount>
  </cac:LegalMonetaryTotal>
  <cac:InvoiceLine>
    <cbc:ID>1</cbc:ID>
    <cbc:InvoicedQuantity>14</cbc:InvoicedQuantity>
    <cbc:LineExtensionAmount currencyID="EUR">1626.59</cbc:LineExtensionAmount>
    <cac:OrderLineReference>
      <cbc:LineID>1</cbc:LineID>
      <cac:OrderReference>
        <cbc:ID>week 1 - 193014</cbc:ID>
      </cac:OrderReference>
    </cac:OrderLineReference>
    <cac:TaxTotal>
      <cbc:TaxAmount currencyID="EUR">341.58</cbc:TaxAmount>
      <cac:TaxSubtotal>
        <cbc:TaxableAmount currencyID="EUR">1626.59</cbc:TaxableAmount>
        <cbc:TaxAmount currencyID="EUR">341.58</cbc:TaxAmount>
        <cac:TaxCategory>
          <cbc:ID>Excluding</cbc:ID>
          <cbc:Percent>21</cbc:Percent>
          <cac:TaxScheme />
        </cac:TaxCategory>
      </cac:TaxSubtotal>
    </cac:TaxTotal>
    <cac:Item>
      <cbc:Description>AEG AS-M606B 310 Mono Full Black 5 busbars</cbc:Description>
      <cac:SellersItemIdentification>
        <cbc:ID>AEG_AS-M606B_310FB_5BB_H</cbc:ID>
      </cac:SellersItemIdentification>
    </cac:Item>
    <cac:Price>
      <cbc:PriceAmount currencyID="EUR">116.18</cbc:PriceAmount>
      <cbc:BaseQuantity>1</cbc:BaseQuantity>
    </cac:Price>
  </cac:InvoiceLine>
</Invoice>

This text will be blurred

Dank voor duidelijkheid. Ja, dit formaat kan met een query op xmltable omgezet worden en dan is het handigste inlezen met UploadXMLTopics. Ik begrijp niet dat Exact Online het niet zelf kan inlezen, maar zal wel.

Met xmltable worden de elementen omgezet naar een relationeel model, daarna met xmlformat, listagg en xmlelement functies de gewenste Exact Online XML vormen.

Een vergelijkbaar voorbeeld is Upload Journal Entries to Exact Online.

Dank je wel. Hier zou ik nog wat hulp bij nodig hebben, maar… mijn collega wil ook graag de document bij de boeking uploaden, begrijp ik nu. Daar heb ik niet zo snel een oplossing voor, behalve de standaard funtie van Exact.

HG Lennart

Klopt, dat is bewerkelijker. Het kan gemaakt worden en behelst dan na het laden van de transacties Invantive SQL zoals:

set use-http-memory-cache-read@eol false

set use-http-memory-cache-write@eol false

insert into exactonlinerest..documents@eol
( account
, category
, documentdate
, salesinvoicenumber
, subject
, type
)
select sie.invoiceto
,      dcy.id 
,      trunc(sysdate)
,      sie.invoicenumber
,      sie.document_subject
,      ${DCT_TYPE_REGISTER_INVOICE} type
from   sieselection@inmemorystorage sie
join   DocumentCategories@eol dcy 
on     dcy.description = 'Customers'

insert into exactonlinerest..documentattachmentfiles@eol
( document
, attachment
, filename
)
select dct.id
,      rfe.file_contents
,      xet.filename
from   sieselection@inmemorystorage sie
join   exactonlinerest..documents@eol dct
on     dct.subject = sie.document_subject
and    dct.documentdate = trunc(sysdate)
join   xmlexport@inmemorystorage xet
on     xet.invoice_number = sie.invoicenumber
join   read_file(xet.filenamepath)@os rfe