IDR cez API: konverzia PDF na XML

Automatické rozpoznávanie a konverzia PDF faktúr na e-faktúry cez recognize hooky.

Intelligent Document Recognizer (IDR) automaticky konvertuje PDF faktúry na štruktúrované e-faktúry. Cez PSB API ovládate IDR pomocou recognize hookov, prostredníctvom ktorých konfigurujete proces rozpoznávania: úroveň kvality, prioritu, extrakčné funkcie a údaje o stranách. Tento článok popisuje, ako IDR cez API nasadíte.

Ako IDR cez API funguje?

IDR funguje ako hook v hook systéme PSB. Zaregistrujete recognize hook, ktorý reaguje na topik (napr. InvoiceReceived). Keď príde PDF dokument cez tento topik, PSB ho automaticky prepošle na IDR na rozpoznanie. Po spracovaní IDR publikuje výsledok na callback topik.

Hook action pre IDR má nasledujúci formát:

recognize://idr?quality={quality}&priority={priority}&features={features}&data={base64-data}
Parametre
quality

Úroveň kvality určuje, ako prísne IDR hodnotí výsledok rozpoznania:

HodnotaPopisdefaultŠtandardná úroveň kvality (odporúčané pre väčšinu scenárov)hqVysoká spoľahlivosť: akceptujú sa iba výsledky s vysokou mierou dôverylqNižšia kvalita povolená: viac výsledkov, ale s nižšou mierou dôvery
priority

Priorita určuje poradie spracovania vo fronte IDR:

HodnotaPopishighPrednosť vo frontemediumŠtandardná prioritalowSpracovanie na pozadí, keď je kapacita dostupná
features

Features aktivujú ďalšie extrakčné možnosti. Viaceré features môžete kombinovať (oddelené čiarkou):

FeaturePopisibanExtrakcia IBAN z PDFg-accountRozpoznanie rozdelenia G-účtuorder-referenceExtrakcia referencie objednávkyproject-referenceExtrakcia referencie projektucontract-referenceExtrakcia referencie zmluvy

Príklad: features=iban,g-account,order-reference

data (údaje o strane)

Pole data obsahuje base64 zakódovaný JSON s údajmi o prijímajúcej organizácii. IDR tieto informácie používa na obohatenie a validáciu výsledku rozpoznania. JSON obsahuje názvy, identifikátory, e-mailovú adresu a adresy organizácie.

Príklad JSON pred base64 kódovaním:

{
  "names": ["Bedrijfsnaam B.V."],
  "identifiers": [
    { "type": "KVK", "value": "12345678" }
  ],
  "email": "facturen@bedrijf.nl",
  "addresses": [
    {
      "street": "Voorbeeldstraat 1",
      "postcode": "1234 AB",
      "city": "Utrecht",
      "country": "NL"
    }
  ]
}
Registrácia recognize hooku

Kompletný recognize hook vyzerá takto:

{
  "action": "recognize://idr?quality=default&priority=medium&features=iban,order-reference&data={base64-encoded-party-details}",
  "topics": ["InvoiceReceived"]
}

Tento hook zaregistrujte cez Hook endpoint:

POST /api/v1/hook

Alebo zahrňte hook priamo do Enrollment požiadavky.

Callback topiky

Po spracovaní IDR publikuje výsledok na jeden z nasledujúcich topikov:

TopikPopisPurchaseInvoiceRecognizedPDF bola úspešne rozpoznaná a konvertovaná na e-faktúruPurchaseInvoiceRecognizedPendingRozpoznanie čaká na kontrolu kvality (manuálne posúdenie)PurchaseInvoiceRecognizedRejectedRozpoznanie bolo zamietnuté po kontrole kvalityPurchaseInvoiceRecognizedErrorPri rozpoznávaní došlo k chybe

Na tieto topiky nastavte webhook alebo mail hook na prijímanie výsledkov. Napríklad:

{
  "action": "https://api.bedrijf.nl/idr/callback",
  "topics": ["PurchaseInvoiceRecognized", "PurchaseInvoiceRecognizedError"]
}
Limit veľkosti súboru a podporované formáty

Maximálna veľkosť súboru pre IDR uploady je 15 MB. Súbory väčšie ako 15 MB vrátia chybový kód HTTP 413 (Content Too Large).

IDR podporuje nasledovné typy súborov:

FormátPoznámkyPDFPrimárny formát, ako skenované, tak natívne digitálneJPEG / PNGFotografie faktúr (fotky, skeny)TIFFViacstranové skeny

Iné typy súborov (Word, Excel, HTML) nie sú podporované a vedú k chybe IDR422 Invalid PDF Content. PDF súbory chránené heslom alebo DRM generujú podobnú chybovú správu.

Postup spracovania

Kompletný IDR proces cez API prebieha v štyroch krokoch:

  1. PDF dokument príde cez PSB (upload alebo príjem cez Peppol/SFTP/e-mail)
  2. Recognize hook odošle dokument na IDR s nakonfigurovanými parametrami
  3. IDR spracuje dokument a publikuje výsledok na príslušnom callback topiku
  4. Rozpoznaný dokument prijmete cez Váš webhook alebo ho stiahnete cez PurchaseInvoice endpointy

Chcete vedieť viac o hook architektúre PSB? Prečítajte si článok o nastavení a zabezpečení webhookov.

Otvoriť API referenciu