{"ref":"content:ac-sap-document-ai","page":"/content/ac-sap-document-ai","json":"/content/ac-sap-document-ai.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"ac-sap-document-ai","title":"SAP Document AI","url":"https://architecture.learning.sap.com/docs/ref-arch/766aa3","content_type":"reference-architecture","explains":["artifact:btp-document-ai",{"ref":"capability:document-extraction","applies_to":{"ecosystems":["btp","cap"]}}],"summary":"SAP's reference architecture for [SAP Document AI](artifact:btp-document-ai), first as SAP composes the service on BTP for [document extraction](capability:document-extraction): OCR, pretrained models, customer-defined schemas and LLM calls through [SAP AI Core](artifact:btp-ai-core) and its Prompt Registry in one pipeline, with tenant-isolated persistence in [SAP HANA Cloud](artifact:btp-hana-cloud), [PostgreSQL](external:postgresql) and an object store. Its scenario pages then lay out a solution in three layers: intake through Outlook and SharePoint inbound channels, the workspace UI, the Joule Work mobile app or the upload API; classification and extraction with a confidence score per field, automatic confirmation above a threshold and review of the rest in the workspace; and posting through outbound channels, directly to a REST API, through an [SAP Integration Suite](artifact:btp-integration-suite) flow, or through a [CAP](artifact:sap-cds) service that maps the fields and calls SAP S/4HANA over OData. Enrichment beyond the service's own master data lookup is left to a CAP application or an Integration Suite flow triggered from an outbound channel, and direct API posting leaves error handling, retries and monitoring to the application.","short":"SAP Document AI composed on BTP for document extraction","authors":["actor:sap-architecture-center"],"published":"2026-06-03","sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/readme.md","title":"RA0030 readme.md in SAP/architecture-center","checked":"2026-09-15","quote":"It combines OCR, pretrained and customer-trained extraction models, and LLM-based reasoning into a managed service on SAP Business Technology Platform (SAP BTP)."},{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/readme.md","title":"RA0030 readme.md in SAP/architecture-center","checked":"2026-09-15","quote":"For extraction steps that benefit from generative AI, the pipeline calls into **SAP AI Core** and the **Generative AI Hub**, using LLMs together with the **Prompt Registry** and pretrained models."},{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/readme.md","title":"RA0030 readme.md in SAP/architecture-center","checked":"2026-09-15","quote":"tenant isolation is enforced at the persistence layer"},{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/0-end-to-end/readme.md","title":"RA0030 0-end-to-end/readme.md in SAP/architecture-center","checked":"2026-09-15","quote":"An end-to-end document processing solution with SAP Document AI follows a three-layer architecture pattern separating document intake, extraction and enrichment, and posting"},{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/2-enrichment/readme.md","title":"RA0030 2-enrichment/readme.md in SAP/architecture-center","checked":"2026-09-15","quote":"Documents with all fields above the configured threshold (typically 90% for critical fields) proceed automatically. Documents with low-confidence will await for human validation."},{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/2-enrichment/readme.md","title":"RA0030 2-enrichment/readme.md in SAP/architecture-center","checked":"2026-09-15","quote":"For custom enrichment and validations, use [outbound channels](https://help.sap.com/docs/document-ai/sap-document-ai/outbound-channels) to trigger a CAP application on Cloud Foundry or an Integration Suite flow."},{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/3-posting/readme.md","title":"RA0030 3-posting/readme.md in SAP/architecture-center","checked":"2026-09-15","quote":"This pattern minimizes infrastructure costs but requires application-level error handling, retry logic, and monitoring."},{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/3-posting/readme.md","title":"RA0030 3-posting/readme.md in SAP/architecture-center","checked":"2026-09-15","quote":"A CAP service receives extraction notifications from Document AI, performs field mapping and posts to SAP S/4HANA Cloud (via OData APIs)"}],"drafted_with_ai":true,"provenance":{"discovered_via":[{"source":"source:curator"}],"first_seen":"2026-09-15"},"published_on":"source:architecture-center","parts":[{"actor":"End user","key":"user","role":"uploads documents and reviews the ones below the confidence threshold","sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/0-end-to-end/readme.md","title":"RA0030 0-end-to-end/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"For manual uploads, SAP Document AI covers desktop and mobile scenarios with the Document AI workspace UI and Joule Work mobile app."},{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/2-enrichment/readme.md","title":"RA0030 2-enrichment/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"Low confidence documents and documents that need additional approvals are managed within Document AI workspace. Users review the document and the extractions side by side."}]},{"actor":"API client","key":"client","role":"uploads documents through the API","sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/1-ingestion/readme.md","title":"RA0030 1-ingestion/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"For document sources that are not supported out of the box, or to support complex routing and transformation scenarios, the API can be used to upload documents:"}]},{"ref":"artifact:btp-document-ai","key":"docai","role":"classification, extraction and workspace","area":"btp","paths":["direct-api","integration-flow","cap-application","process-automation"],"sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/0-end-to-end/readme.md","title":"RA0030 0-end-to-end/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"The architecture centers around **SAP Document AI** as the core extraction engine and user interface, with optional enrichment and integration services on **SAP BTP**:"}]},{"ref":"artifact:btp-cloud-identity-services","key":"cids","role":"authentication","area":"btp","sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/readme.md","title":"RA0030 readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"Authentication is delegated to **SAP Cloud Identity Services** (Identity Authentication, Identity Directory, Identity Provisioning) using SAML 2.0 / OIDC, with optional federation to a customer or third-party Identity Provider."}]},{"ref":"artifact:btp-identity-provisioning","key":"ips","role":"user and role synchronisation","area":"btp","sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/readme.md","title":"RA0030 readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"Identity Provisioning (IPS) keeps user and role assignments in sync with the customer's identity source, so access decisions made in Document AI's Authorization Management reflect the customer's central identity governance."}]},{"ref":"artifact:btp-integration-suite","key":"flow","role":"enrichment and posting flow","area":"btp","paths":["integration-flow"],"sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/3-posting/readme.md","title":"RA0030 3-posting/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"An integration flow (iFlow) receives the Document AI extraction payload, converts to target system protocols (IDoc, SOAP, REST), applies error handling and retry logic, and posts to cloud or on-premise target systems."}]},{"ref":"artifact:sap-cds","key":"cap","role":"enrichment and posting service","area":"btp","paths":["cap-application"],"sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/3-posting/readme.md","title":"RA0030 3-posting/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"A CAP service receives extraction notifications from Document AI, performs field mapping and posts to SAP S/4HANA Cloud (via OData APIs), on-premise S/4HANA (via Cloud Connector and OData/RFC), Business ByDesign..."}]},{"ref":"artifact:btp-build-process-automation","key":"bpa","role":"posting with a conditional workflow","area":"btp","paths":["process-automation"],"sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/3-posting/readme.md","title":"RA0030 3-posting/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"Build Process Automation evaluates enriched delivery note data to determine posting path."},{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/0-end-to-end/readme.md","title":"RA0030 0-end-to-end/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"**Hybrid integration**: Support for multiple integration technologies (CAP, Integration Suite, Build Process Automation) accommodates varying complexity and governance requirements."}]},{"ref":"artifact:btp-connectivity","key":"connectivity","role":"outbound integration","area":"btp","sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/readme.md","title":"RA0030 readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"Outbound integration to customer systems uses the **SAP Connectivity service** and **SAP Destination service**."}]},{"ref":"artifact:btp-destination","key":"destination","role":"outbound integration","area":"btp","sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/readme.md","title":"RA0030 readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"Outbound integration to customer systems uses the **SAP Connectivity service** and **SAP Destination service**."}]},{"ref":"artifact:sap-cloud-connector","key":"scc","role":"reach into on-premise systems","sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/readme.md","title":"RA0030 readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"**Enterprise integration**: integrates into SAP and non-SAP landscapes through the Destination service and Connectivity service, with SAP Cloud Connector providing secure reach into on-premise systems such as SAP ECC and SAP S/4HANA."}]}],"paths":[{"key":"direct-api","name":"Document AI posts to the target system's REST API directly","sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/3-posting/readme.md","title":"RA0030 3-posting/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"For point-to-point scenarios with no middleware requirements, SAP Document AI can post directly to target system REST APIs."}]},{"key":"integration-flow","name":"Through an Integration Suite flow","sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/3-posting/readme.md","title":"RA0030 3-posting/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"An integration flow (iFlow) receives the Document AI extraction payload, converts to target system protocols (IDoc, SOAP, REST), applies error handling and retry logic, and posts to cloud or on-premise target systems."}]},{"key":"cap-application","name":"Through a CAP application on Cloud Foundry","sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/3-posting/readme.md","title":"RA0030 3-posting/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"A CAP service receives extraction notifications from Document AI, performs field mapping and posts to SAP S/4HANA Cloud (via OData APIs), on-premise S/4HANA (via Cloud Connector and OData/RFC), Business ByDesign..."}]},{"key":"process-automation","name":"Through SAP Build Process Automation","sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/3-posting/readme.md","title":"RA0030 3-posting/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"Build Process Automation evaluates enriched delivery note data to determine posting path."}]}],"areas":[{"key":"btp","kind":"sap-cloud","label":"SAP BTP","sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/0-end-to-end/readme.md","title":"RA0030 0-end-to-end/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"The architecture centers around **SAP Document AI** as the core extraction engine and user interface, with optional enrichment and integration services on **SAP BTP**:"}]}],"edges":[{"from":"user","to":"docai","kind":"data","for":"uploads documents in the workspace UI and confirms or corrects the extractions of the ones that need review","sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/0-end-to-end/readme.md","title":"RA0030 0-end-to-end/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"For manual uploads, SAP Document AI covers desktop and mobile scenarios with the Document AI workspace UI and Joule Work mobile app."},{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/2-enrichment/readme.md","title":"RA0030 2-enrichment/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"Low confidence documents and documents that need additional approvals are managed within Document AI workspace. Users review the document and the extractions side by side."}]},{"from":"client","to":"docai","kind":"data","for":"uploads documents through the upload API","sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/1-ingestion/readme.md","title":"RA0030 1-ingestion/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"For document sources that are not supported out of the box, or to support complex routing and transformation scenarios, the API can be used to upload documents:"},{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/1-ingestion/readme.md","title":"RA0030 1-ingestion/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"**[API-Based Integration](https://api.sap.com/api/document_information_extraction_api_v2/path/FileService_uploadFile)**"}],"interface":"api-v2"},{"from":"docai","to":"cap","kind":"data","for":"notifies the CAP application through an outbound channel, with the extraction results","sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/2-enrichment/readme.md","title":"RA0030 2-enrichment/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"For custom enrichment and validations, use [outbound channels](https://help.sap.com/docs/document-ai/sap-document-ai/outbound-channels) to trigger a CAP application on Cloud Foundry or an Integration Suite flow."},{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/3-posting/readme.md","title":"RA0030 3-posting/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"A CAP service receives extraction notifications from Document AI, performs field mapping and posts to SAP S/4HANA Cloud (via OData APIs), on-premise S/4HANA (via Cloud Connector and OData/RFC), Business ByDesign..."}]},{"from":"cap","to":"scc","kind":"data","for":"posts to an on-premise S/4HANA through the Cloud Connector","sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/3-posting/readme.md","title":"RA0030 3-posting/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"A CAP service receives extraction notifications from Document AI, performs field mapping and posts to SAP S/4HANA Cloud (via OData APIs), on-premise S/4HANA (via Cloud Connector and OData/RFC), Business ByDesign..."}]},{"from":"flow","to":"scc","kind":"data","for":"sends an IDoc to an on-premise S/4HANA through the Cloud Connector","sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/3-posting/readme.md","title":"RA0030 3-posting/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"Integration Suite flow transforms enriched customer PO data into ORDERS05 IDoc format and sends to on-premise S/4HANA via Cloud Connector."}]}],"history":[{"date":"2026-09-27","field":"parts, areas, edges","from":"thirteen parts, SAP's composition of the service among them, no areas, no edges","to":"the customer's solution: eleven parts with two actors, one area, five edges the sub-pages state","reason":"The main readme is how SAP composes Document AI on BTP; the sub-pages are how a customer builds a solution with it, and a reader building on the service needs the second picture with the service as one box (docs/concepts/reference-architectures.md §9.1). SAP AI Core, SAP HANA Cloud, PostgreSQL and the Cloud Foundry runtime leave the parts, and what the readme says the service itself talks to, those three among them, is on the artifact's own connections. The summary keeps SAP's composition in its first half on purpose, so three of its links name no part. On the checker's reading of the first draft: SAP BTP is a zone of SAP's cloud, since no page names a subaccount, and the notification to the CAP application is stated on the design, because the artifact's connections name entries and a customer's own application is none."},{"date":"2026-09-27","field":"roles","from":"no roles stated","to":"ingestion typed by the sending use case, the service fixed, posting typed by the receiving use case, each with the parts the source draws in it","reason":"The design leaves two places open, the sender and the receiver, and names its own fillers for each on its ways (docs/concepts/design-roles-and-interfaces.md, P4); typed by the use cases the atlas assessed, the record reads its candidates and their states from the graph, and the figure stays as the source draws it."},{"date":"2026-09-27","field":"edges[client to docai].interface","from":"the API, unnamed","to":"the OData V4 API, api-v2","reason":"The ingestion page links the upload operation of document_information_extraction_api_v2 as the API-based integration, and the service now names that surface (docs/concepts/design-roles-and-interfaces.md §3.2, P7), so the arrow says which API it lands on and wears its protocol."},{"date":"2026-10-17","field":"explains","from":null,"to":"applies_to on capability:document-extraction","reason":"Door scope derived from the artifacts this piece also explains, so a door page lists it only where it holds (docs/concepts/content-on-doors.md)."}],"roles":[{"key":"send","name":"Document ingestion","usecase":"usecase:send-a-document-to-document-ai","parts":["cap","flow"],"sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/1-ingestion/readme.md","title":"RA0030 1-ingestion/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"The ingestion layer serves as the entry point, responsible for document capture, optional pre-processing, and submission to the AI extraction service."},{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/1-ingestion/readme.md","title":"RA0030 1-ingestion/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"For document sources that are not supported out of the box, or to support complex routing and transformation scenarios, the API can be used to upload documents:"}]},{"key":"process","part":"docai"},{"key":"retrieve","name":"Document posting and system integration","usecase":"usecase:receive-document-ai-results-in-an-application","parts":["cap","flow","bpa"],"sources":[{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/3-posting/readme.md","title":"RA0030 3-posting/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"The final stage of intelligent document processing transforms validated, enriched data into business documents in enterprise systems. Selecting the appropriate integration pattern depends on complexity requirements, governance policies, and operational constraints."},{"url":"https://raw.githubusercontent.com/SAP/architecture-center/main/docs/ref-arch/RA0030/3-posting/readme.md","title":"RA0030 3-posting/readme.md in SAP/architecture-center","checked":"2026-09-27","quote":"[Outbound channels](https://help.sap.com/docs/document-ai/sap-document-ai/outbound-channels?locale=en-US&version=LATEST) in SAP Document AI can notify external systems when documents are on a specific step, and can include the extraction results:"}]}]},"readings":{"liveness":[{"label":"Checked against the source","tier":"unknown","evidence":"nobody has checked it"},{"label":"Source reachable","tier":"good","evidence":"up as of 2026-10-26"},{"label":"Source updated","tier":"good","evidence":"2026-06-03 by the publisher"}],"compatibility":[{"label":"Version","tier":"unknown","evidence":"no version declared"},{"label":"Moved since?","tier":"good","evidence":"no recorded change after 2026-06-03"},{"label":"Findings","tier":"good","evidence":"none flagged"}],"reach":[{"value":null,"unit":"views"},{"value":null,"unit":"comments"},{"value":null,"unit":"likes"}]},"signals":{"crawled_at":"2026-10-26","reachable":true,"source_updated":"2026-06-03"},"series":null,"edges":{"authors":[{"ref":"actor:sap-architecture-center","name":"SAP Architecture Center","json":"/actors/sap-architecture-center.json"}]}}