Enterprise Resource Planning Blogs by SAP
Get insights and updates about cloud ERP and RISE with SAP, SAP S/4HANA and SAP S/4HANA Cloud, and more enterprise management capabilities with SAP blog posts.
cancel
Showing results for 
Search instead for 
Did you mean: 
stefan_resag
Product and Topic Expert
Product and Topic Expert
25,750
In this blog post, I will have a closer look at the ‘Intelligent Invoice Scanning’ feature, introduced in SAP Business ByDesign with release 2008. There are two key differentiators compared to the existing scanning solution:

  1. It is now sufficient to only upload PDF documents; a TXT document is not needed anymore.

  2. Scanning of the PDF is done using SAP’s Document Information Extraction Service (DOX), including an integrated OCR service as well as a machine-learning based model.


Supported languages are English, German, French, and Spanish. Please be aware, that the DOX service is currently not available in a Chinese data center, and therefore cannot be used in ByD tenants hosted in China.

In addition, I am pleased to mention that usage of the new scanning service is included in the normal SAP Business ByDesign licenses, no additional costs will be incurred!

This graphic shows the end-2-end process flow. It starts with uploading the PDF documents from your local file share using a new work center view 'Invoice Scanning'. A mass upload of PDFs can also be done using SAP’s Collaboration Window, This can be downloaded from the Self-Service section in an SAP Business ByDesign system (Work Center 'Home').


Once uploaded, the PDFs are automatically sent to SAP’s Document Information Extraction Service,  and invoice header and item information is sent back to SAP Business ByDesign. Since supplier master data can be uploaded to DOX, the supplier ID can directly be mapped to the scanned supplier information, like name, address, or other contact information.

The scanned information is first stored in a staging object, where the results can be reviewed, corrected, and once fine, the supplier invoice can be created.

Let’s have a look at the steps in more detail.

To activate the solution in your tenant, you must set the ‘Do you want to enter supplier invoices via PDF scanning?’ question in scope. If you want to automate the creation of the invoice in addition, you must also select ‘Do you want automatic creation of invoices from scanned documents?’. This means, that automatically a supplier invoice is created from the staging object.


No further setup needs to be done to establish the connection of the SAP Business ByDesign tenant to the DOX service.

Next, the new view 'Invoice Scanning' of the 'Supplier Invoicing' work center needs to be assigned to the relevant users.

I recommend to upload the supplier master data to DOX before the first invoices are scanned. This can be done in the ‘Invoice Scanning’ view in the work center ‘Supplier Invoicing’. Currently, whenever new scanning-relevant supplier master data have been created or changed, this upload should be repeated.


The action ‘Synchronize Master Data’ launches a screen, where the synchronization can be started.


Now, the system is prepared to start the scanning process.

This can be done by the ‘Upload’ action in the ‘Invoice Scanning’ view. A screen is launched, where the company can be specified for which you want to upload the PDFs. Then, the corresponding PDF documents can be selected from a file share, and via ‘Start Process’ are handed over to DOX.



As mentioned above, a mass upload of PDF documents can best be done using SAP’s Collaboration Window. Please do the following configuration settings under Menu – Settings – Invoice Scanning:


 

Please flag both options and specify the 'Observed' folder, from where to upload the PDFs. Next, you need to copy your invoice PDF into the observed folder, from where they get automatically uploaded, if the Collaboration Window is open.


The company information is retrieved from the user logged in to the Collaboration Window.

Independent of the way you use for uploading the PDFs, they then show up in the ‘Invoice Scanning’ view:


The status indicates, if scanning has been completed. You might need to refresh the list after a while. Once scanning is complete, you can take a look at the scanned values using the the action ‘Review’, that opens the staging object:


The scanned values are visible in the read-only fields on the left side of the UI. In case some values have not been scanned correctly, or have not been recognized at all, the reviewed values section allows you to manually override them. In my example, the supplier was not recognized. Once you are fine with the result, the invoice can directly be created from this UI, or from the ‘Invoice Scanning’ work list.

The invoice, that got created, can of course be reviewed once more in the ‘New Scanned Invoice’ UI, where also additional data like accounting assignment can be added.


With that, the invoice scanning and creation process is complete. Please also check out the video

YouTube link.

Blogs on newly added features:

2102

2105

 
71 Comments
David_Thorne
Explorer
0 Kudos
Many thanks, as always, for the prompt reply and information.

 

Dave
JohnMeadows
Product and Topic Expert
Product and Topic Expert
David_Thorne
Explorer
0 Kudos
Thanks John, something that is commonly asked for!

Dave

 
senthil23
Participant
0 Kudos
Hi stefan.resag

Thank you so much for the blog!!!.

Just have a question?

Will it support ODATA API to upload the invoices from external system?,  I could see the option is available but when I try to consume the ODATA no entries are in the system.


Have raised the incident with SAP two weeks before, but no response yet.

Thanks,

Senthil
stefan_resag
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hello Senthil,

yes ODATA is provided in standard and should work. We use the data ourselves to do the upload of PDFs for scanning via bot. Here you can find the ODATA service:

Work center 'Application and User Management' - 'Input and output management' - ODATA services:


Best regards,

Stefan
JonasBert
Participant
Dear stefan.resag

We are currently investigating this option.
However when we try to upload an invoice via Odata, the invoice scanning remains in the status 'Scanning in Process'.

We are using a technical user which is assigned to the invoice scanning workcenter.
When we upload using user credentials, the scanning works fine.

Can you please advice on how to proceed?

Kind regards,
Jonas
senthil23
Participant
0 Kudos
Hi stefan.resag ,

 

I agree with jonasbert , the OData is not working as expected, Can you share the sample payload for scanning via bot.

 

I've tried the below approach ended in error, also raised incident long back - 701747/2021


 

create staging scan invoice



process file


 


scanned invoice not processed or error


Best Regards,

Senthil
stefan_resag
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hi Senthil,

this is the reply I got from dev. (...) they think you missed to send the document in the payload during the instance creation and trying to update it during processing of invoice which is incorrect. (...). I also got a postman collection which I added below. This worked on our side.

Best regards,

Stefan
{
"info": {
"_postman_id": "2704eafb-a559-4040-bac1-10f7455a9d32",
"name": "Invoice scanning Stagging object",
"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
},
"item": [
{
"name": "Get Xcrf token",
"event": [
{
"listen": "test",
"script": {
"exec": [
"pm.collectionVariables.set('xcrf_token',pm.response.headers.get('x-csrf-token'));"
],
"type": "text/javascript"
}
}
],
"request": {
"auth": {
"type": "basic",
"basic": [
{
"key": "username",
"value": "Your Username here",
"type": "string"
},
{
"key": "password",
"value": "Your Password Here",
"type": "string"
}
]
},
"method": "GET",
"header": [
{
"key": "x-csrf-token",
"value": "fetch",
"type": "text"
}
],
"url": {
"raw": "https://{{tenant}}.dev.sapbydesign.com/sap/byd/odata/v1/scannedinvoicestagingodata/$metadata",
"protocol": "https",
"host": [
"{{tenant}}",
"dev",
"sapbydesign",
"com"
],
"path": [
"sap",
"byd",
"odata",
"v1",
"scannedinvoicestagingodata",
"$metadata"
]
}
},
"response": []
},
{
"name": "Create Root and Attachement folder instance",
"event": [
{
"listen": "prerequest",
"script": {
"exec": [
""
],
"type": "text/javascript"
}
},
{
"listen": "test",
"script": {
"exec": [
""
],
"type": "text/javascript"
}
}
],
"request": {
"method": "POST",
"header": [
{
"key": "x-csrf-token",
"value": "{{xcrf_token}}",
"type": "text"
},
{
"key": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\r\n \"CompanyID\": \"MC10000\",\r\n \"FileName\": \"{{filename}}\",\r\n \"TypeCode\": \"01\",\r\n \"ScannedInvoiceStagingObjectAttachmentFolder\": [\r\n {\r\n \"Name\": \"{{filename}}\",\r\n \"TypeCode\": \"10002\",\r\n \"Binary\": \"{{BinaryFileData}}\"\r\n }\r\n ]\r\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "https://{{tenant}}.dev.sapbydesign.com/sap/byd/odata/v1/scannedinvoicestagingodata/ScannedInvoiceStagingObjectCollection",
"protocol": "https",
"host": [
"{{tenant}}",
"dev",
"sapbydesign",
"com"
],
"path": [
"sap",
"byd",
"odata",
"v1",
"scannedinvoicestagingodata",
"ScannedInvoiceStagingObjectCollection"
]
}
},
"response": []
},
{
"name": "Create Root/Attachment for XML file upload",
"request": {
"method": "POST",
"header": [
{
"key": "x-csrf-token",
"value": "{{xcrf_token}}",
"type": "text"
},
{
"key": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\r\n \"FileName\":\"{{filename}}\",\r\n \"TypeCode\":\"02\",\r\n \"CountryCode\": \"DE\",\r\n \"TransformationID\":\"ZXSIVDETESTSIV\",\r\n \"TransformationDate\":\"/Date(1516492800000)/\",\r\n \"ScannedInvoiceStagingObjectAttachmentFolder\":[{\r\n \"Name\":\"{{filename}}\",\r\n \"TypeCode\":\"10001\",\r\n \"Binary\": \"{{BinaryFileData}}\"\r\n }]\r\n}"
},
"url": {
"raw": "https://{{tenant}}.dev.sapbydesign.com/sap/byd/odata/cust/v1/scannedinvoicestagingobjectodata/ScannedInvoiceStagingObjectCollection",
"protocol": "https",
"host": [
"{{tenant}}",
"dev",
"sapbydesign",
"com"
],
"path": [
"sap",
"byd",
"odata",
"cust",
"v1",
"scannedinvoicestagingobjectodata",
"ScannedInvoiceStagingObjectCollection"
]
}
},
"response": []
},
{
"name": "Start Processing",
"request": {
"method": "POST",
"header": [
{
"key": "x-csrf-token",
"value": "{{xcrf_token}}",
"type": "text"
},
{
"key": "",
"value": "",
"type": "text",
"disabled": true
}
],
"url": {
"raw": "https://{{tenant}}.dev.sapbydesign.com/sap/byd/odata/v1/scannedinvoicestagingodata/process?ObjectID='{{ObjectID}}'",
"protocol": "https",
"host": [
"{{tenant}}",
"dev",
"sapbydesign",
"com"
],
"path": [
"sap",
"byd",
"odata",
"v1",
"scannedinvoicestagingodata",
"process"
],
"query": [
{
"key": "ObjectID",
"value": "'{{ObjectID}}'"
}
]
}
},
"response": []
},
{
"name": "Start File upload Processing",
"request": {
"method": "POST",
"header": [
{
"key": "x-csrf-token",
"type": "text",
"value": "{{xcrf_token}}"
},
{
"key": "",
"type": "text",
"value": "",
"disabled": true
}
],
"url": {
"raw": "https://{{tenant}}.dev.sapbydesign.com/sap/byd/odata/cust/v1/scannedinvoicestagingobjectodata/processFile?ObjectID='{{ObjectID}}'",
"protocol": "https",
"host": [
"{{tenant}}",
"dev",
"sapbydesign",
"com"
],
"path": [
"sap",
"byd",
"odata",
"cust",
"v1",
"scannedinvoicestagingobjectodata",
"processFile"
],
"query": [
{
"key": "ObjectID",
"value": "'{{ObjectID}}'"
}
]
}
},
"response": []
},
{
"name": "Get Root using Staging Object ID",
"request": {
"method": "GET",
"header": [
{
"key": "x-csrf-token",
"value": "{{xcrf_token}}",
"type": "text"
}
],
"url": {
"raw": "https://{{tenant}}.dev.sapbydesign.com/sap/byd/odata/v1/scannedinvoicestagingodata/ScannedInvoiceStagingObjectCollection('{{ObjectID}}')?$format=json",
"protocol": "https",
"host": [
"{{tenant}}",
"dev",
"sapbydesign",
"com"
],
"path": [
"sap",
"byd",
"odata",
"v1",
"scannedinvoicestagingodata",
"ScannedInvoiceStagingObjectCollection('{{ObjectID}}')"
],
"query": [
{
"key": "$format",
"value": "json"
}
]
}
},
"response": []
},
{
"name": "Get Items using Staging Object ID",
"request": {
"method": "GET",
"header": [
{
"key": "x-csrf-token",
"value": "{{xcrf_token}}",
"type": "text"
}
],
"url": {
"raw": "https://{{tenant}}.dev.sapbydesign.com/sap/byd/odata/v1/scannedinvoicestagingodata/ScannedInvoiceStagingObjectCollection('{{ObjectID}}')/ScannedInvoiceStagingObjectItem?$format=json",
"protocol": "https",
"host": [
"{{tenant}}",
"dev",
"sapbydesign",
"com"
],
"path": [
"sap",
"byd",
"odata",
"v1",
"scannedinvoicestagingodata",
"ScannedInvoiceStagingObjectCollection('{{ObjectID}}')",
"ScannedInvoiceStagingObjectItem"
],
"query": [
{
"key": "$format",
"value": "json"
}
]
}
},
"response": []
},
{
"name": "Update Root using Customer reviewed value",
"request": {
"method": "PUT",
"header": [
{
"key": "x-csrf-token",
"value": "{{xcrf_token}}",
"type": "text"
},
{
"key": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\r\n \"ObjectID\": \"00163EACAEF41EEB918A3CA185606714\",\r\n \"CompanyID\": \"MC10000\",\r\n \"CompanyIDUsr\": \"\",\r\n \"CurrencyUsr\": \"USD\",\r\n \"CurrencyUsrText\": \"US Dollar\",\r\n \"ExternalDocumentID\": \"GD16105006\",\r\n \"ExternalDocumentIDUsr\": \"GD16105007\",\r\n \"FileName\": \"TestInvoice.pdf\",\r\n \"InvoiceDate\": \"2018-01-21\",\r\n \"InvoiceDateUsr\": \"/Date(1516492800000)/\",\r\n \"CreatedInvoiceID\": \"\",\r\n \"PrimaryTax\": \"3.0\",\r\n \"PurchaseOrderID\": \"7202\",\r\n \"PurchaseOrderIDUsr\": \"\",\r\n \"RetrainingStatus\": \"1\",\r\n \"RetrainingStatusText\": \"Not Started\",\r\n \"LifeCycleStatusCode\": \"3\",\r\n \"LifeCycleStatusCodeText\": \"Scanning Completed\",\r\n \"SupplierID\": \"\",\r\n \"SupplierIDUsr\": \"MC2000\",\r\n \"TotalGross\": \"53.0\",\r\n \"TransformationDate\": null,\r\n \"TransformationID\": \"\",\r\n \"TransformationIDText\": \"\",\r\n \"TypeCode\": \"01\",\r\n \"TypeCodeText\": \"Staged Scanned Invoice\",\r\n \"ID\": \"1212\",\r\n \"PrimaryTaxUsr\": \"3.000000\",\r\n \"PrimaryTaxUsrCurrCode\": \"INR\",\r\n \"PrimaryTaxUsrCurrCodeText\": \"\",\r\n \"SubTotalUsr\": \"50.000000\",\r\n \"SubTotalUsrCurrCode\": \"USD\",\r\n \"SubTotalUsrCurrCodeText\": \"US Dollar\",\r\n \"CreationDateTime\": \"/Date(1608640410718)/\",\r\n \"TotalGrossUsr\": \"53.000000\",\r\n \"TotalGrossUsrCurrCode\": \"USD\",\r\n \"TotalGrossUsrCurrCodeText\": \"US Dollar\"\r\n}"
},
"url": {
"raw": "https://{{tenant}}.dev.sapbydesign.com/sap/byd/odata/v1/scannedinvoicestagingodata/ScannedInvoiceStagingObjectCollection('{{ObjectID}}')",
"protocol": "https",
"host": [
"{{tenant}}",
"dev",
"sapbydesign",
"com"
],
"path": [
"sap",
"byd",
"odata",
"v1",
"scannedinvoicestagingodata",
"ScannedInvoiceStagingObjectCollection('{{ObjectID}}')"
]
}
},
"response": []
},
{
"name": "Update Item using customer reviewed data",
"request": {
"method": "PUT",
"header": [
{
"key": "x-csrf-token",
"value": "{{xcrf_token}}",
"type": "text"
},
{
"key": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\r\n \"ObjectID\": \"00163EAD42F71EEB9188C6BAA340C7EC\",\r\n \"ParentObjectID\": \"00163EAD43141EDB9188B5E51953FADD\",\r\n \"Description\": \"Test Description\",\r\n \"DescriptionUsr\": \"\",\r\n \"languageCode\": \"\",\r\n \"languageCodeText\": \"\",\r\n \"ProductId\": \"\",\r\n \"ProductIdUsr\": \"\",\r\n \"Quantity\": \"7.0\",\r\n \"QuantityUom\": \"\",\r\n \"QuantityUomText\": \"\",\r\n \"QuantityUsr\": \"6.00000000000000\",\r\n \"unitCode\": \"\",\r\n \"unitCodeText\": \"\",\r\n \"TotalGross\": \"50.0\",\r\n \"TotalGrossUsr\": \"50.000000\",\r\n \"currencyCode\": \"USD\",\r\n \"currencyCodeText\": \"US Dollar\"\r\n}"
},
"url": {
"raw": "https://{{tenant}}.dev.sapbydesign.com/sap/byd/odata/v1/scannedinvoicestagingodata/ScannedInvoiceStagingObjectItemCollection('{{ItemObjectID}}')",
"protocol": "https",
"host": [
"{{tenant}}",
"dev",
"sapbydesign",
"com"
],
"path": [
"sap",
"byd",
"odata",
"v1",
"scannedinvoicestagingodata",
"ScannedInvoiceStagingObjectItemCollection('{{ItemObjectID}}')"
]
}
},
"response": []
}
],
"event": [
{
"listen": "prerequest",
"script": {
"type": "text/javascript",
"exec": [
""
]
}
},
{
"listen": "test",
"script": {
"type": "text/javascript",
"exec": [
""
]
}
}
],
"variable": [
{
"key": "xcrf_token",
"value": ""
},
{
"key": "filename",
"value": "TestInvoice.pdf"
},
{
"key": "BinaryFileData",
"value": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHVibDpJbnZvaWNlIHhtbG5zOnVibD0idXJuOm9hc2lzOm5hbWVzOnNwZWNpZmljYXRpb246dWJsOnNjaGVtYTp4c2Q6SW52b2ljZS0yIgogICAgICAgICAgICAgeG1sbnM6Y2FjPSJ1cm46b2FzaXM6bmFtZXM6c3BlY2lmaWNhdGlvbjp1Ymw6c2NoZW1hOnhzZDpDb21tb25BZ2dyZWdhdGVDb21wb25lbnRzLTIiCiAgICAgICAgICAgICB4bWxuczpjYmM9InVybjpvYXNpczpuYW1lczpzcGVjaWZpY2F0aW9uOnVibDpzY2hlbWE6eHNkOkNvbW1vbkJhc2ljQ29tcG9uZW50cy0yIgogICAgICAgICAgICAgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIKICAgICAgICAgICAgIHhzaTpzY2hlbWFMb2NhdGlvbj0idXJuOm9hc2lzOm5hbWVzOnNwZWNpZmljYXRpb246dWJsOnNjaGVtYTp4c2Q6SW52b2ljZS0yIGh0dHA6Ly9kb2NzLm9hc2lzLW9wZW4ub3JnL3VibC9vcy1VQkwtMi4xL3hzZC9tYWluZG9jL1VCTC1JbnZvaWNlLTIuMS54c2QiPgogICAgPGNiYzpJRD4wMDE2M0U5NDJBMkIxRURBODA4REZGOEREQjU0OEE4QjwvY2JjOklEPgogICAgPGNiYzpJc3N1ZURhdGU+MjAxOS0xMi0xMzwvY2JjOklzc3VlRGF0ZT4KICAgIDxjYmM6SW52b2ljZVR5cGVDb2RlPjAwNDwvY2JjOkludm9pY2VUeXBlQ29kZT4KICAgIDxjYmM6Tm90ZT5JbnZvaWNlIGRlc2NyaXB0aW9uPC9jYmM6Tm90ZT4KICAgIDxjYmM6R3Jvc3NJbmRpY2F0b3I+ZmFsc2U8L2NiYzpHcm9zc0luZGljYXRvcj4KICAgIDxjYmM6R3Jvc3NBbW91bnQgY3VycmVuY3lDb2RlPSJVU0QiPjEwNi4yNTwvY2JjOkdyb3NzQW1vdW50PgogICAgPGNiYzpCdXllclJlZmVyZW5jZT5JTlZfRVhUX0NJVl8wMDAxPC9jYmM6QnV5ZXJSZWZlcmVuY2U+CiAgICA8Y2FjOkFjY291bnRpbmdTdXBwbGllclBhcnR5PgogICAgICAgIDxjYWM6UGFydHk+CiAgICAgICAgICAgIDxjYWM6UGFydHlJZGVudGlmaWVyPgogICAgICAgICAgICAgICAgPGNiYzpjb250ZW50Pk1DMjAwMDwvY2JjOmNvbnRlbnQ+CiAgICAgICAgICAgICAgICA8Y2JjOmNvZGU+MTQ3PC9jYmM6Y29kZT4KICAgICAgICAgICAgPC9jYWM6UGFydHlJZGVudGlmaWVyPgogICAgICAgIDwvY2FjOlBhcnR5PgogICAgPC9jYWM6QWNjb3VudGluZ1N1cHBsaWVyUGFydHk+CiAgICA8Y2FjOkFjY291bnRpbmdDdXN0b21lclBhcnR5PgogICAgICAgIDxjYWM6UGFydHk+CiAgICAgICAgICAgIDxjYWM6UGFydHlJZGVudGlmaWVyPgogICAgICAgICAgICAgICAgPGNiYzpjb250ZW50Pk1DMTAwMDA8L2NiYzpjb250ZW50PgogICAgICAgICAgICAgICAgPGNiYzpjb2RlPjE0NzwvY2JjOmNvZGU+CiAgICAgICAgICAgIDwvY2FjOlBhcnR5SWRlbnRpZmllcj4KICAgICAgICA8L2NhYzpQYXJ0eT4KICAgIDwvY2FjOkFjY291bnRpbmdDdXN0b21lclBhcnR5PgogICAgPGNhYzpQYXltZW50VGVybXM+Cgk8Y2JjOmNvZGU+MDAwNzwvY2JjOmNvZGU+CiAgICAgICAgPGNiYzpEYXRlPjIwMTktMTItMTM8L2NiYzpEYXRlPgogICAgPC9jYWM6UGF5bWVudFRlcm1zPgogICAgPGNhYzpUYXhUb3RhbD4KICAgICAgICA8Y2JjOlRheEFtb3VudCBjdXJyZW5jeUlEPSJVU0QiPjYuMjU8L2NiYzpUYXhBbW91bnQ+CiAgICA8L2NhYzpUYXhUb3RhbD4KICAgIDxjYWM6SW52b2ljZUxpbmU+CiAgICAgICAgPGNiYzpJRD4xPC9jYmM6SUQ+CgkJPGNiYzpUeXBlQ29kZT4wMDI8L2NiYzpUeXBlQ29kZT4KICAgICAgICA8Y2JjOkludm9pY2VkUXVhbnRpdHkgdW5pdENvZGU9IkVBIj4xMC4wPC9jYmM6SW52b2ljZWRRdWFudGl0eT4KICAgICAgICA8Y2FjOkl0ZW0+CiAgICAgICAgICAgIDxjYWM6UHJvZHVjdD4KCQkJCTxjYmM6Q2FzaERpc2NvdW50RGVkdWN0aWJsZUluZGljYXRvcj50cnVlPC9jYmM6Q2FzaERpc2NvdW50RGVkdWN0aWJsZUluZGljYXRvcj4KICAgICAgICAgICAgICAgIDxjYmM6SUQ+TUNGLTAwMDE8L2NiYzpJRD4KICAgICAgICAgICAgICAgIDxjYmM6VHlwZUNvZGU+MTwvY2JjOlR5cGVDb2RlPgogICAgICAgICAgICA8L2NhYzpQcm9kdWN0PgogICAgICAgIDwvY2FjOkl0ZW0+CiAgICAgICAgPGNhYzpQcmljZT4KICAgICAgICAgICAgPGNiYzpQcmljZUFtb3VudCBjdXJyZW5jeUlEPSJVU0QiPjEwMC4wMDwvY2JjOlByaWNlQW1vdW50PgogICAgICAgIDwvY2FjOlByaWNlPgogICAgPC9jYWM6SW52b2ljZUxpbmU+CjwvdWJsOkludm9pY2U+"
},
{
"key": "tenant",
"value": "acl-cust120"
},
{
"key": "ObjectID",
"value": ""
},
{
"key": "ItemObjectID",
"value": ""
}
]
}
0 Kudos
Hi stefan.resag ,

 

Wonderful blog, thank you so much for this blog.

Our company was looking for a solution like this, can you please tell me whether uploading invoice image/ invoice pdf from external system via your api-services is available or not?

If so, then can you please redirect me to a documentation link ? I am searching for "Invoice Parsing in SAP" and among other words, but I am not being very successful in that.

Thank you.

 
stefan_resag
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hello Sanjeeb,

we have an ODATA service 'scannedinvoicestagingodata' available in standard, which you can use to upload PDF documents for scanning. Once uploaded, the process follows the same pattern as if you would have uploaded the PDFs manually.

Best regards,

Stefan
SimonaM
Product and Topic Expert
Product and Topic Expert
Hi, one idea is to adapt the Invoice Upload template bot we released recently, which is design to picking the PDF from a folder and uploading it to IIS and customize it to pick the PDF from your other tool instead of a folder. That will minimize your implementation work. Note: IIS in ByDesing is only build to scan PDF invoices (no image format is allowed).
David4
Explorer
0 Kudos
Is there a report of the changes that a user makes from the data identified in the scan to what is then posted?
stefan_resag
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hi David,

there is no such report. What would be the use case? And as always, feel free to create an improvement request.

Best regards,

Stefan
simon_all4cloud
Explorer
0 Kudos

Hi @stefan_resag 
thanks for your insights.

I have the same question as Jonas above:
However when we try to upload an invoice via Odata, the invoice scanning remains in the status 'Scanning in Process'.
We are using a technical user which is assigned to the invoice scanning workcenter.
When we upload using user credentials, the scanning works fine.
Can you please advice on how to proceed?

Thanks!
BR
Simon

stefan_resag
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Simon,

may I ask you to report an incident, with a clear cut reproducible example in test-tenant. We will then analyse and respond.

Thanks a lot,

Stefan

simon_all4cloud
Explorer
0 Kudos

Hi Stefan,
thanks for your e-mail. I've created incident 980881/2024

BR
Simon

Kathy9
Explorer
0 Kudos

Hi Stefan 

Many thanks for this very helpful update. 

May I ask for supplier invoices, can SAP only scan the non-items information ( like invoice date, invoice number, subtotal amount, tax amount and total invoice value etc), and skip the step of scanning the Items section. 

Because our supplier invoices generally have over 100 line items of same nature and we only need one line (being the total amount to be entered into General Ledger account).  

For example, our transport supplier invoices have over 100 deliveries on the invoices for the past week, yet Accounts payable officer only needs to enter the total charge of the 100 deliveries under Outbound Freight General ledger when processing the invoice.

Currently, if we use SAP's intelligent scanning feature, we had to remove all the 100 deliveries item lines auto-scanned and then create an invoice.  

Is there a way to avoid the need of deleting all the invoiced items please? Many thanks. 

Best regards

Kathy 

 

 

stefan_resag
Product and Topic Expert
Product and Topic Expert

Hi Kathy,

our solution will always scan header and item data and currently we do not have any configuration to let the system only scan header fields. Therefore you either can manually delete the items in the review step. Mass selection and deletion of items is supported there. In addition the underlying staging object in the review screen is OData-enabled, so you might try to delete the items that way.

Best regards,

Stefan

Kathy9
Explorer
0 Kudos

Thanks very much Stefan for your kind reply. 

Could you please advise where could we choose mass selection and deletion ?

Currently, we have to Ctrl + click on the unwanted item lines one by one to highlight and remove all at once. 

Is there a way to save us from clicking over 100 times for one invoice please?  

Many thanks for your help. 

Kathy9_1-1738629320933.png

 

 

 

stefan_resag
Product and Topic Expert
Product and Topic Expert

Hi Kathy,

the screen is correct. Please use the Shift key instead, that should do the job. For me it worked. I selected the first line, scrolled down, selected the last line using Shift. Then all the lines in between got selected.

Best regards,

Stefan

Kathy9
Explorer
0 Kudos

Hi Stefan 

Thank you so much, I just tried your way and it worked perfectly. This will save me a lot of time. 

I really appreciate your generous help! Have a great one!

Best regards

Kathy