B1Chat help and setup guide

This guide explains how administrators configure B1Chat and how users get access to the chat app. You do not need to understand B1Chat's internal user records, JSON mappings, or SAP payloads to complete the normal setup.

Simple rule: use Clients for mobile/chat access, and use Users only when someone also needs to sign in to the B1Chat web portal.

Manual part

Part 1 — General administration

Company connection, synchronization, identities, mobile activation, portal users and access testing.

General setup (Administrator)

  1. Open General Settings and configure the SAP Business One Service Layer connection.
  2. Use General synchronization in General Settings for Items & barcodes (Full/Delta), synchronized stock, and the SAP supplier/BP master used by Document Extraction.
  3. Run a Full sync once so B1Chat can load the SAP catalog and lookup information. Use Delta sync afterwards for normal updates.
  4. Open the settings page for each module you want to use and enable it: Orders, Transfers, Document Intelligence, and Document Extraction.
  5. Register the customers, warehouses and mobile numbers that are allowed to use B1Chat from Clients.

Product catalog filter (Tenant Administrator)

Open Product catalog to optionally restrict which SAP Items are synchronized for this tenant. The additional filter is validated with a restricted grammar; raw SQL and unrestricted OData are rejected.

Supported built-in fields: ItemCode, ItemName, ForeignName, ItemsGroupCode, Manufacturer, SupplierCatalogNo, BarCode, User_Text, Valid and Frozen. A U_... field is accepted only when it is already selected under Chat & AI Settings → Product Search UDFs.

Supported operators: eq, ne, gt, ge, lt, le, with and, or, parentheses and not (...). Strings use single quotes; an apostrophe inside a value is doubled. ItemsGroupCode and Manufacturer require integers. Valid/Frozen accept only exact 'tYES' or 'tNO'.

Examples: ItemsGroupCode eq 100; Manufacturer eq 5 and Valid eq 'tYES'; (ItemsGroupCode eq 100 or ItemsGroupCode eq 200) and Frozen ne 'tYES'; ItemName eq 'O''Brien'.

Error guidance: a B1Chat grammar error identifies the rejected field/operator/value and its position. A SAP validation error is reported separately and, when SAP returns a safe structured message, B1Chat shows that message together with the SAP HTTP status. Authentication, endpoint, rate-limit and SAP 5xx failures are described separately so they are not confused with filter syntax.

Raw SQL, raw $filter=, functions such as contains, in, property paths and module-owned SalesItem/InventoryItem/PurchaseItem predicates are intentionally rejected. After the first Full sync on this baseline, test an inventory-only item in Transfer chat and a sales-only/non-inventory item in Sales Orders chat when your SAP test data contains such examples.

Contextual help beside settings

Portal configuration pages show a small i icon beside each setting label. Click it to get help for that exact field without leaving the page.

Customer-specific chat intelligence (Tenant Administrator)

Open Chat & AI Settings to teach B1Chat how this customer's business works. These settings belong only to the current customer.

Automotive starter: the one-click starter adds brand → SAP Item Group for this customer and a VIN-first spare-parts clarification rule. Review it before saving and attach the customer's VIN/parts tools if required.

Authenticated external tools require HTTPS. The generic connector supports GET/POST APIs with Bearer token, API-key header or Basic authentication. Browser-only portals that have no callable HTTP/API contract require a dedicated provider adapter rather than exposing website credentials to the AI.

AI provider/model agreement: tenant administrators cannot select the cloud provider or paid AI models. Platform Admin assigns those inside the selected customer on the Customers page. The tenant can still maintain its own business rules and its own provider API credentials where applicable.

Language: B1Chat uses automatic language detection. There is no Greek/English/customer language mode. Voice transcription keeps the detected spoken language, mixed-language messages are allowed, and tenant vocabulary/rule aliases can be entered in any language.

Modules and licensing

A module must be enabled for the tenant and also authorized for the individual mobile/user. B1Chat only shows and accepts actions that the current user is authorized to use.

Mobile permissions and chat features (Administrator)

When you add or edit a mobile from Clients, select which capabilities that person may use:

These permissions are enforced by the server as well as by the user interface. Hiding a button is not the security control.

Activate the B1Chat mobile app

  1. First register the person's mobile under the appropriate customer and/or warehouse in Clients.
  2. Use the QR action to display an activation QR code, then let the user scan it from the B1Chat mobile app.
  3. Alternatively use the SMS action to send the activation information to the registered mobile number.
  4. After activation, the mobile app loads the permissions assigned to that mobile and only exposes the authorized B1Chat modules/features.

A normal mobile-chat user does not need a web-portal username or password. The registered mobile is their app identity.

Clients versus Users

Clients = mobile/chat access. Use Clients to connect a mobile number to an SAP customer or warehouse, authorize modules, allow Image/Speech chat, and activate the B1Chat mobile app by QR or SMS.

Users = web-portal access. Use Users only for staff or other people who need to log in to the B1Chat web portal with an email and password.

If the same person needs both mobile chat and portal access, enter the same mobile number when creating portal access. B1Chat reuses the same internal identity automatically; administrators do not need to merge duplicate users manually.

Internally B1Chat keeps identity, customer/warehouse assignments, credentials and permissions separate. This gives one person a consistent identity without making administrators manage those technical records.

Portal access (Administrator)

Open Users when somebody needs access to the B1Chat web portal.

  1. Enter display name, email, mobile number and a temporary password.
  2. Select User or Administrator.
  3. For a standard portal user, select the modules they are allowed to access.
  4. Create the portal access and give the credentials to the user securely.

Portal credentials are separate from mobile activation. For a portal user with a mobile number and at least one licensed module, use the paper-plane action in the Portal access list to send a 24-hour B1Chat mobile activation by SMS. An Extraction-only user receives only the document camera/file submission workflow. Adding portal access is optional for normal B1Chat mobile users.

Testing access

Use Chat from the portal to test the modules allowed for the signed-in portal user. For mobile users, activate the app by QR/SMS and confirm that only the expected module buttons and media capabilities are available.

If a module is missing, check both levels: the module must be enabled in tenant settings and the user's mobile/portal identity must have permission for it.

Chat attachments are one at a time: when a user selects a photo or document, or finishes a voice recording, B1Chat sends it immediately. There is no separate attachment queue in the chat composer and no need to press Send again.

MAUI Document Extraction: tapping Document Extraction offers Take photo or Choose existing document. The selected/captured PDF or image is submitted immediately.

Product selection: a single exact product match uses the same quantity row as a multi-product result, so the shopper enters quantity and accepts it directly in the list. Cart/basket totals update immediately after the add action; opening the Cart is not required to refresh the count.

Product lists: after entering a quantity and tapping the accept/check button, B1Chat updates the result/cart at the bottom but keeps the current list position so the user can continue selecting more products without being moved to the newest message.

Manual part

Part 2 — Sales Orders

Customer registration, catalogue/chat discovery, cart and ordering access.

Sales Orders clients and mobile access (Administrator)

  1. Open Sales Orders > Clients.
  2. Type all or part of the customer's CardCode, name, telephone or cellular number. You can also click the find button in the customer field.
  3. B1Chat searches SAP Business Partners using CardCode, CardName, Tel1, Tel2 and Cellular. If more than one customer matches, use the paginated customer-selection window and its filter to select the correct customer.
  4. Register the customer, then choose Edit to manage the mobile numbers allowed to use B1Chat for that customer.

The Clients screen is intentionally based on SAP customers and mobile numbers. You do not need to create a username just to use the mobile chatting app.

Customer Product Access: after registering a customer, open Edit and use the Product access section to optionally restrict that CardCode to part of the already-synchronized Sales Orders catalogue. A blank filter inherits all tenant-allowed Sales Order products. Examples: ItemsGroupName eq 'Wines' or ItemsGroupName eq 'Wines' or ItemsGroupName eq 'Cleaning'.

Use Validate & Preview before saving to see the match count and sample products. You can also test a specific ItemCode. Customer Product Access does not change SAP synchronization and cannot add products that the tenant Product Catalog did not synchronize.

Mobile/user Product Access: while adding or editing a mobile under the customer, you can optionally enter an Additional product filter. Leave it blank to inherit the CardCode filter. The mobile filter is stored on that customer/mobile relationship, so the same phone may have a different additional restriction under another CardCode.

The mobile filter uses the same restricted fields/operators as Customer Product Access and is validated by the server. Effective access is always the intersection of the tenant/module catalogue, the CardCode filter and the optional mobile/user filter. A phone/user rule can reduce its customer access but can never expand it.

Central enforcement: B1Chat applies the same server-side Product Access decision to exact ItemCode/barcode lookup, text/fuzzy/semantic/vector/image discovery, catalogue suggestions, browsing, price/stock, server-issued product actions, cart mutations/refresh, SAP order preview and final order submission. Thin clients are never the security boundary.

Policy changes while shopping: if a product in an existing cart becomes disallowed, B1Chat removes that line and asks the shopper to review the cart again. Historical SAP orders remain visible as business history, but a now-disallowed item is not offered for re-ordering. Product Access remains enforced server-side for customer and mobile restrictions; shopper responses never expose the stored filter expression.

Cart identity: add-to-cart, Cart, Checkout and final SAP submission all resolve Product Access from the same validated chat session. Device activation mobiles are matched safely whether an existing assignment is stored in local 8-digit form or the activation carries the international form. Opaque Web/MAUI session IDs are never treated as phone numbers.

Test chat: a Tenant Administrator uses the configured Sales Orders Test CardCode when no single registered-client assignment is attached to the portal login. Products added from the Test chat result list must remain in the same cart and be visible to Checkout; changing Product Access after the add may legitimately remove them on the next cart/checkout validation.

Check product stock in chat

Users can ask stock questions naturally, for example “do you have stock for chivas”, “is chivas available”, or “do you have 5 pcs chivas 70cl”.

Manual part

Part 3 — Warehouse Transfers

Warehouse registration, transfer-user access and transfer permissions.

Warehouse Transfer clients and mobile access (Administrator)

  1. Open Transfers > Clients.
  2. Select the SAP warehouse and register it.
  3. Choose Edit beside the registered warehouse and add the mobile number(s) allowed to work with that warehouse.
  4. Set the required module and media permissions for each mobile.

The same mobile can be assigned to both a customer and a warehouse. Its existing permissions are reused so adding another assignment does not silently remove access already granted elsewhere.

Manual part

Part 4 — Document Intelligence

Document-pack templates, providers, validation rules and user access.

Document Intelligence setup and use

  1. Open Document Intelligence Settings and set the minimum confidence, retention period and any tenant validation instructions.
  2. Open Document Packs to maintain providers and pack templates.
  3. Use Teach from reference files when you have representative PDFs/images and want B1Chat to propose the expected documents, rules or required photos. Review the proposal before publishing it.
  4. In each pack template, define expected documents, validation rules, required photos, validity dates and pack-level instructions. Publish only after testing representative submissions.
  5. Grant the Document Intelligence permission to the required mobile/portal identities. The server enforces this permission as well as the UI.
  6. Users submit the requested documents/photos from chat; B1Chat validates the pack against the published template and returns review/decision information without exposing the underlying JSON mappings.

Document Intelligence validates a set of documents against a pack template. Document Extraction is a separate module that reads supplier documents and builds SAP purchasing documents.

Manual part

Part 5 — Document Extraction

Supplier synchronization, Supplier Layouts, queue processing, review and SAP posting.

Document Extraction settings (Administrator)

  1. Open Document Extraction - Settings and enable Document Extraction.
  2. Choose what a reviewed supplier document should become in SAP: A/P Invoice, Goods Receipt PO, Purchase Order, or Goods Return Request.
  3. Choose whether SAP documents should initially be saved as drafts.
  4. For A/P Invoice or Goods Receipt PO, enable Match lines to open Purchase Orders (FIFO) if you want B1Chat to base extracted lines on open purchase-order lines.
  5. Optionally enable Auto send to SAP when fully matched. Leave it off while testing new Supplier Layouts. When enabled, B1Chat posts only after all mandatory SAP item/G/L lines resolve and the normal send validation succeeds; documents that are not fully ready stay in Review.
  6. Save the settings and use Queue to upload supplier documents.

Purchase Order / Goods Return Request targets: B1Chat disables its open-Purchase-Order FIFO base matching for these standalone targets. If an extracted supplier document is a Credit Note or explicit Return document (for example Credit Return, Goods Return or Purchase Return) while the configured target is Purchase Order, Review automatically switches the SAP target to Goods Return Request. Credit Invoice remains an invoice. Other unsupported credit/return target combinations remain blocked rather than posting the wrong SAP document.

Credit Invoice wording: supplier headings such as Credit Invoice or Credit Sales Invoice remain invoices. Only explicit Credit Note/Credit Memo classification enters the credit workflow; a matched Supplier Layout and its Document type heading are preferred over loose keyword guessing.

Parallel processing: B1Chat already serves different chat sessions concurrently. Document Extraction uses a bounded background worker pool (default 2 workers) so more than one queued supplier document can progress at once. The platform setting Processing:DocumentExtractionWorkers can be increased only after measuring cloud-provider rate limits, SAP Service Layer capacity and end-to-end queue throughput.

Cloud extraction: B1Chat uses the OpenAI or Claude provider/model assigned to that customer by Platform Admin for AI work. Published tenant Supplier Layouts are resolved first, then published Platform Predefined Layouts, before generic cloud extraction is used. There is no Local/Cloud routing choice in the tenant portal.

AI cost visibility: successful cloud-AI calls record the provider, model and provider-reported input/output token usage in the billing ledger. B1Chat snapshots the configured/list token rates at the time of the call and shows an estimated AI cost in Platform Billing. This is an operational estimate, not the provider's invoice; custom or unknown models remain visible with their tokens and are marked unpriced until a rate is configured.

Customer module pricing: Select a customer in Platform Customers and set the four EUR rates in Customer settings: Orders Chatting (per created sales order), Transfers Chatting (per created transfer request), Document Extraction (per processed page) and Document Intelligence (per processed page). Extraction and Intelligence are charged when processing completes, regardless of whether the result is later sent to SAP. Blank means not priced and 0 means explicitly free. Each business usage event snapshots its customer rate and page quantity, so later pricing changes do not rewrite historical billing totals. Platform Billing is the read-only usage/revenue/cost audit.

Create a Supplier Layout visually (Administrator)

Use Document Extraction - Supplier layouts. The layout designer is visual; normal users never need to edit fingerprints or field-mapping JSON.

  1. Select the Supplier and the document type, such as Invoice or Credit Note.
  2. Give the layout a clear name.
  3. Upload a representative supplier PDF or image as the reference document.
  4. Select the required field from Field.
  5. For a value printed on the supplier document, keep Read from document and drag a rectangle directly over the matching field or column. To correct it later, click the rectangle, drag it to move it, or drag one of its edge/corner handles to resize it.
  6. For a constant value that is not printed on the document, choose Use fixed value, enter the value and add it. This is useful for defaults such as SAP warehouse, VAT/Tax code, Project code, Cost Center / Distribution Rule 1-5, G/L Account, and SAP document type.
  7. Repeat this for the header, line columns and totals. The document canvas scrolls while the mapping layer continues over the full page, so totals at the bottom can be selected normally.
  8. Save draft while testing or adjusting rectangles, then Publish the layout when it is ready. Live queued extraction uses published layouts; a draft is not selected automatically.

Supplier Layout designer behavior

Draw rectangles directly on a supplier PDF/image and assign each area. Existing rectangles can be selected, moved and resized. Any supported field can be read from the document or assigned a fixed value.

The document you design against is retained in the database with the layout and reused when you edit it later.

Platform templates contain supplier recognition, rectangles, mappings, fixed values and instructions but no SAP CardCode. Choose your SAP supplier/BP and import a customer-owned Draft copy.

Ask AI: you can run AI before or after manual mapping. Ask AI opens an optional multiline guidance box where you can give numbered hints about difficult fields, repeated line sections, unusual columns or printed labels. Existing mappings are kept where possible and AI fills missing or uncertain fields and line areas. The guidance applies to that analysis session; put permanent supplier rules in Special instructions. Review the result before saving.

Split line tables: documents with repeated or separated line sections (for example KEO-style upper/lower line blocks) should use multiple Line Areas. All detected areas still belong to one SAP document.

Item vs service documents: use SAP document layout in the Supplier Layout designer. Choose Item for normal item documents or Service for SAP service documents. For Single G/L Account, set the G/L Account and Tax Code directly and choose the SAP line amount (net before VAT) source; prefer the mapped Subtotal/net amount. The mapped Document total is confirmation only and is never used as the SAP line amount by itself. Multiple G/L Accounts additionally supports exception rules and consolidates rows with the same G/L Account + Tax Code.

Use rectangles to teach B1Chat where information appears. The line-table rectangle is also used for a focused server-side crop during recovery, so the vision model sees the configured table at higher relevance instead of relying only on whole-page guessing. Use fixed values only for real supplier/layout defaults that should always be sent the same way. Use Special instructions only for exceptional rules that cannot be represented clearly by rectangles or defaults.

Editing later: new/updated layouts keep their tenant-scoped reference PDF/image so clicking Edit reopens the same document automatically. Layouts created before this feature did not retain the reference file; select that PDF/image once and save the draft to attach it for future edits.

What to mark on a supplier document

Mark the areas that make the supplier document unambiguous and that B1Chat needs to extract correctly. Typical examples are:

For repeating lines, draw the rectangle over the printed column heading or a representative first-row value/column area and assign what that column means. The saved technical mapping is generated by B1Chat.

Line recovery: when a mapped line table is tall, B1Chat automatically processes it in smaller overlapping visual segments. This improves cloud vision reliability and prevents one very large table request from deciding the whole result. If a provider returns damaged outer JSON but a valid lines[] array, B1Chat salvages that array without inventing values.

How to verify the layout was used: open the extracted document in Review. The summary shows Layout: name vN when a published supplier layout was selected, or Generic extraction when no layout matched. After publishing or revising a layout, use Re-extract so the source is processed with the current published version.

Maintain configured Supplier Layouts

The Configured layouts table in Supplier layouts shows the layouts available for extraction.

If a layout is no longer required, use its Delete action. B1Chat removes it when safe. If historical extraction/audit records already reference the layout, B1Chat archives it instead so historical evidence is not broken.

Upload, review and send an extracted supplier document

  1. Open Document Extraction - Queue.
  2. Select a supplier PDF/image and click Queue document. The upload is queued immediately so you can submit another document without waiting for extraction to finish.
  3. Watch the queue status. Open the result when it is ready for review.
  4. When you Remove an extraction from the queue, B1Chat also attempts to delete that run's stored source/rendered folders immediately to reclaim disk space. The structured SQL/SAP audit remains; if Windows temporarily locks a file, retention cleanup can retry later.
  5. Use View source document whenever you need to compare the extracted values with the original attachment.
  6. Verify the supplier, document number/date, target SAP document, currency and every mapped/fixed layout field shown in Review. Review is the editable source of truth used to build the SAP payload.
  7. For Supplier Layouts, Review is strict: only fields selected or fixed in that layout are shown/used. Unmapped AI fields are ignored. The header Reference (NumAtCard) maps to SAP NumAtCard; Line Net amount is not a selectable layout field because Line Total amount is the supported row amount.
  8. When a matched Supplier Layout needs better scan handling, correct the Review and choose Learn from this document. B1Chat saves the review feedback, adds the exact source PDF/image as another sample of a draft layout version, and opens that sample in the Supplier Layout designer. Adjust only the rectangles that were wrong, then Save as Draft and publish after checking the samples.
  9. Use Refresh SAP matches after correcting SAP product/barcode master data or a reviewed line. B1Chat first completes a product delta sync (including the local matching index), then reruns only deterministic SAP matching; it does not rerun OCR/AI extraction.
  10. If an extracted line remains unresolved, use the Find magnifier beside the mandatory SAP ItemCode field. Search the synchronized SAP catalogue by ItemCode, description, barcode, or manufacturer catalogue number, then select the correct item without rerunning extraction.
  11. Save the review, then use Send to SAP when the document is correct. Administrators can optionally enable Auto send to SAP when fully matched; in that mode a newly queued document is posted automatically only when every required line is resolved and normal SAP-send validation passes. Otherwise it stays in Review.

The original supplier file remains associated with the extraction so reviewers can inspect the source while approving the SAP document. Discount %, fixed defaults and other mapped values shown in Review are posted from the saved Review when they contain a value.

Document total posting: when extraction or a Supplier Layout provides a reviewed Document total, B1Chat sends that value to SAP as DocTotal. B1Chat does not derive or send a header DiscountPercent from Subtotal, Discount or VAT totals; line discounts remain on their individual SAP rows and SAP Business One performs the document-level calculation from the requested DocTotal.

Mapped numeric accuracy: for published Supplier Layouts, missing mapped numeric totals are re-read from their exact configured rectangle using a focused local-first vision crop. B1Chat also cross-checks mapped line Quantity, Unit price, Discount % and line amount arithmetically and corrects only a single unambiguous inconsistent numeric cell (for example a scanned 14 misread as 1 or 27% misread as 25%). It does not invent values when more than one correction is possible.

Preprinted unused rows: when a Supplier Layout maps Quantity from the document, B1Chat treats blank/zero-quantity template rows as unused and does not show or post them. If a positive mapped Line Total exists while Quantity is unreadable, the row is kept for Review rather than silently discarded.

Handwritten decimals: handwritten accounting numbers are interpreted differently from printed locale conventions. A single comma or dot in a handwritten numeric value is treated as the decimal separator (for example handwritten 1,250 or 1.250 means 1.250), because thousands grouping is unusual in handwriting. The original separator is still preserved in extraction evidence/diagnostics.

Support diagnostics: open a Queue item and use Export diagnostics to download a JSON file containing the exact saved Supplier Layout identification/mapping/instructions, structured extraction, Review values, validation and SAP payload/result metadata for that run. The original PDF/image is not embedded; send it separately when escalating recognition issues.

Manual part

Part 6 — Monitor

B1Chat Monitor runs as an automatic Windows service plus a small system-tray application. It watches scan folders and submits new documents to B1Chat without requiring users to open the Portal.

Install and configure B1Chat Monitor

Use the Monitor on the Windows PC/server that owns the scanner drop folders. The service continues working when no user has the tray window open.

Download B1Chat Monitor

Checking the latest installer…

  1. Download and run B1ChatMonitorSetup.msi as a Windows administrator. It installs under C:\Program Files\VisionSoft\B1Chat\Monitor and creates the automatic B1Chat Monitor Windows service.
  2. Open Users in the B1Chat Portal and choose Send Monitor activation for the required user. The user must have Document Extraction and/or Document Intelligence/B1Assistant permission.
  3. Open B1Chat Monitor → Settings, paste the complete B1M1... activation code from the email and choose Activate. Machine-wide activation requests require normal Windows UAC approval.
  4. Configure separate watched folders for Document Extraction and Document Assistant. For scanners, prefer a local NTFS folder on the Agent PC and share that folder to the scanner. If the source is remote, use a UNC path such as \\server\share\Scans; do not use a mapped drive such as Z:\Scans.
  5. Drop PDF/JPEG/PNG/GIF/WebP files into the appropriate watched folder. The Agent waits until the scanner/copy has finished writing the file, sends it to B1Chat, and moves it to that folder's Completed subfolder only after B1Chat accepts it.
  6. Use Pause Processing / Start Processing when intake must be temporarily stopped. This machine-wide change requests normal Windows UAC approval. The Windows service remains running so activation, status, logs and retries remain available.

Network folders: the Windows service runs as NT AUTHORITY\NetworkService. For a remote domain share, grant the Agent computer account (for example DOMAIN\PCNAME$) the required share and NTFS Modify rights. Local custom folders are prepared automatically when an administrator saves them.

Reliability: FileSystemWatcher is supplemented by file-stability checks and a periodic reconciliation scan. If B1Chat accepted a file but Windows could not move it to Completed, the Agent records that acceptance locally and retries only the move instead of intentionally uploading the unchanged file again.

Logs: the Monitoring / Log tab follows the current daily service log and automatically scrolls to the newest entry. Closing the window hides it to the tray; Exit Tray Icon exits only the UI and does not stop the Windows service.

Manual part

Part 7 — Outlook integrations

Choose the Outlook client your user actually uses. Classic Outlook installs the Windows add-in; New Outlook and Outlook on the web use the Microsoft 365 web add-in.

Install B1Chat for Outlook

Windows monitor

Classic Outlook

For the traditional Windows Classic Outlook application. Download the single B1Chat installer, close Outlook, run the installer, then reopen Outlook.

Download B1Chat for Classic Outlook

Checking the latest installer…

  1. Close Classic Outlook completely.
  2. Download and run B1ChatOutlookSetup.exe. Windows administrator permission is required because B1Chat installs under C:\Program Files\VisionSoft\B1ChatOutlook.
  3. Reopen Classic Outlook. B1Chat should appear in the Outlook ribbon.
  4. Your B1Chat administrator sends Outlook activation from Users. Open that email in Classic Outlook and approve the B1Chat server when prompted.

Do not use this EXE for New Outlook. New Outlook does not load VSTO/COM add-ins.

Microsoft 365

New Outlook / Outlook on the web

No EXE is installed. A Microsoft 365 administrator deploys the B1Chat Office add-in once to the required users or groups.

View 4-Step Installation

Loading the B1Chat manifest URL…

Checking the Microsoft 365 deployment URL…

Fallback: download XML manifest

If your Microsoft 365 tenant only offers file upload, download the XML and upload it instead.

Download B1ChatOutlookWeb.xml
  1. Click Copy Manifest URL.
  2. Microsoft 365 Admin Center → Settings → Integrated apps → Deploy Add-in → Custom add-in.
  3. Choose the manifest URL option and paste the copied URL. Assign users/groups and deploy.
  4. Send Outlook Web activation to each B1Chat user from Users.

Detailed setup — Outlook on the web / New Outlook (Microsoft 365 administrator)

B1ChatOutlookWeb is an Office.js Outlook add-in hosted by the B1Chat HTTPS portal. Users do not install an EXE. The normal deployment uses one permanent B1Chat manifest URL, so there is no XML file to manage between B1Chat releases.

  1. Copy the B1Chat manifest URL. In Help → Outlook click Copy Manifest URL. The URL is generated from the HTTPS Portal Public URL configured in Platform Settings and normally ends with /outlook-web/manifest.xml.
  2. Deploy the custom add-in. Sign in to Microsoft 365 Admin Center and open Show all → Settings → Integrated apps → Add-ins → Deploy Add-in. Choose a custom add-in, select the option to provide a manifest URL, and paste the copied B1Chat URL. If your tenant only offers XML upload, use the Fallback: download XML manifest link in Help.
  3. Assign and deploy. Select the required users/groups (recommended for the first rollout) or Everyone when appropriate, then deploy. Reload/restart Outlook after Microsoft 365 has propagated the add-in.
  4. Activate the B1Chat user. In B1Chat Portal → Users, send Outlook Web activation. The user opens that email in New Outlook/Outlook on the web, opens B1Chat, and selects Activate from this email.

Quick verification: the public URLs /outlook-web/taskpane.html and /outlook-web/manifest.xml must load over HTTPS. The manifest URL stays stable across B1Chat updates as long as the public B1Chat URL does not change.

Microsoft 365 requirement: centralized deployment requires supported Microsoft 365/Exchange Online users and active mailboxes. B1Chat requests only ReadItem permission because the add-in reads the selected message/attachments and does not modify or send mailbox items.

Activate B1ChatOutlookWeb for a user (B1Chat administrator + user)

  1. In B1Chat Portal open Users.
  2. Make sure the user is active, linked to a B1Chat user, and has Document Intelligence/B1Assistant and/or Document Extraction permission.
  3. On that user row choose Send Outlook Web activation. B1Chat sends a one-time activation email through the Platform Microsoft Graph mailer. The activation expires after 24 hours.
  4. The user opens that activation email in Outlook on the web or New Outlook.
  5. The user opens the B1Chat add-in while the activation email is selected.
  6. Select Activate from this email. The add-in reads the one-time activation link locally, exchanges it for an OutlookWeb-only credential, and verifies the licensed B1Chat modules.
  7. After activation, open any email containing supported PDF/image attachments. Select the required attachments and choose Send to B1Chat Extraction or Send to B1Assistant.

Detailed setup — Classic Outlook for Windows

  1. Use Download B1Chat for Classic Outlook. The Portal always serves the latest installer copied by Publish-Outlook.bat.
  2. Close Classic Outlook completely, including any remaining OUTLOOK.EXE process, then run B1ChatOutlookSetup.exe.
  3. The installer deploys B1Chat under C:\Program Files\VisionSoft\B1ChatOutlook and installs the Microsoft .NET Framework/VSTO prerequisites only when the PC needs them.
  4. Open Classic Outlook and confirm the B1Chat ribbon is visible.
  5. In B1Chat Portal open Users and choose Send Outlook Activation for the user.
  6. The user opens the activation email in Classic Outlook and approves the B1Chat HTTPS server. B1Chat then enables only the document actions licensed for that user.

If the user is running the Microsoft New Outlook, do not install the EXE. Use the Microsoft 365 web add-in instructions above.

Manual part

Part 7 — Technical integrations

Direct API usage and integration notes.

API access for custom integrations (Technical/integration use)

This section is only for developers integrating another site/app directly with B1Chat. Normal mobile and portal users do not need an API key.

Every API request needs the tenant API key in an X-Api-Key header. sessionId is a unique value generated by the calling application to keep conversations separate.

const form = new FormData();
form.append('sessionId', mySessionId);
form.append('text', 'do you have green tea?');

const res = await fetch('https://your-b1chat-server/api/chat/message', {
  method: 'POST',
  headers: { 'X-Api-Key': 'b1c_your_key_here' },
  body: form
});
const reply = await res.json();

Images and voice notes use the same request with an image or audio file field where that tenant/user is authorized for the corresponding media feature.