BIQE AI HTR SaaS — Handleiding
De handleiding is op dit moment alleen in het Engels beschikbaar. Een Nederlandse vertaling wordt later toegevoegd.
1Welcome to BIQE
BIQE AI HTR SaaS is a cloud-based correction service for handwritten text recognition (HTR). It transforms raw transcriptions of historical manuscripts into fluent, contextually accurate text — ready for cataloguing, indexing, or publication.
BIQE is delivered as a pay-as-you-go service, with no upfront investment. You start with a free pilot of 100 pages on your own material. After that, you pay per page processed.
Who BIQE is for
BIQE is purpose-built for organizations with handwritten archives to digitize. Our typical customers include:
Archives
Municipal, provincial and regional archives with registers, minutes and administrative documents from the 17th century onwards.
Museums and heritage institutions
Collections of personal correspondence, diaries and historical documents that need to be made searchable.
Universities
Research projects that need to systematically transcribe large volumes of manuscripts, without investing in their own infrastructure.
Scanning and service bureaus
Digitisation firms that want to offer their clients a complete workflow — from scan to searchable text — without building in-house LLM expertise.
Hospitals and healthcare
Digitisation of historical medical records and patient archives, with strict requirements for delivery and data processing.
Legal firms
Law firms and notaries with case files from before the digital era, now needing to be better accessible for case research and heritage documentation.
How BIQE works
BIQE is a correction layer, not a complete new pipeline. You run layout analysis and character recognition on your own hardware — software you likely already know. Our service takes over at the point where most models fail: semantic correction based on contextual understanding.
Step 1 — Local
You run layout analysis and HTR on your own GPU. Your scans never leave your premises.
Step 2 — Correction
For each page you send one image plus the raw transcription to our API over encrypted HTTPS. We process it through best-in-class large language models.
Step 3 — Result
Corrected text comes back within seconds. Coordinates are unchanged, so the result drops straight into your ALTO/PDF export pipeline.
What makes BIQE different
Tuned for historical material
Our prompts are specifically developed for 17th–20th century handwriting, primarily Dutch but also English, German, and French. For 19th-century administrative documents we achieve error rates of 2–3% at the line level.
Model-agnostic
Behind the scenes we automatically choose between Gemini, Claude, and other leading LLMs based on the quality tier you select. You don't need to worry about model versions or providers.
No data retention
Scans are processed per page and not stored. Only anonymous statistics (page count, compute time) are kept for billing and quality monitoring.
Predictable costs
Three clear tiers, transparent per-page pricing, no surprises. Monthly limits prevent budget overruns.
Flexible integration
Works as a plug-in with any HTR pipeline that produces PageXML. Your existing processes and output formats (PageXML, ALTO, searchable PDF) remain unchanged.
Multilingual support
Developed and delivered from the Netherlands, with direct support in English and Dutch. Available for clients across Europe and the United States.
2Getting started in 6 steps
From your first contact with BIQE to running production scans in your own pipeline, the process takes you through three short phases. Most customers are operational within a week, with the pilot phase taking just an hour or two of hands-on time.
No commitment along the way
You can stop at any point. Up to step 4 you've made no investment beyond a few minutes of registration. After your pilot runs, you can decide whether the quality fits your collection — there is no contract to sign and no notice period to observe.
Even after going live, our pay-as-you-go model means you're never locked in. Stop submitting scans and billing simply stops at the end of the current month. To remove your account entirely, contact our support team.
Common stumbling points from our support inbox: the activation email lands in spam (mark it as "not junk"); customers who manage multiple BIQE accounts pick the wrong entry in their authenticator app; password-protected ZIPs are rejected (re-create without password); webhook URLs that aren't reachable over HTTPS.
3Activating your account
Step 1: Request a pilot
We like to start every relationship with a free pilot of 100 pages on your own material. Then we can see together whether the quality fits your collection.
Visit biqe.biz and click Request a pilot on the home page, or use the contact form. Tell us a little about your collection — language, century, document type — and we will set up a customer account for your organization.
Step 2: Receive your invitation email
Once your account is set up, you will receive an invitation email from BIQE Notifications <notifications@send.biqe.biz> with a one-time activation link. The link is valid for 24 hours.
Important: if the email does not arrive within a few minutes, check your spam or junk folder. Mail from new sender domains is sometimes filtered initially. Mark our message as "not junk" to ensure future emails (invoices, payment confirmations) reach your inbox.
Step 3: Activate your account
Click the activation link in the email. You will be taken to a page where you set your password.
(insert image: account-activation.png)]
Choose a password of at least 12 characters. We recommend a unique passphrase and storing it in a password manager. Your email address is pre-filled and cannot be changed at this step — to use a different email, ask your administrator for a new invitation.
Click Activate account. You will see a confirmation:
(insert image: account-activated.png)]
Step 4: Set up two-factor authentication
After activation you will be prompted to set up two-factor authentication (2FA). This is mandatory and protects your account and your customer's data.
What you need
- A smartphone with an authenticator app such as Google Authenticator, Microsoft Authenticator, Authy, 1Password, or Bitwarden
- A safe place to store ten one-time recovery codes (printed and stored in a safe, or saved in your password manager)
How to set it up
- Open your authenticator app
- Scan the QR code shown on screen
- Enter the 6-digit code your app displays to confirm
- Save the recovery codes shown on the next page — they are your only way back in if you lose your phone
Tip: if you administer multiple BIQE accounts, give each entry in your authenticator a clear label such as "BIQE — yourname@yourdomain.com". The most common cause of failed two-factor logins is selecting the wrong entry, not a clock issue.
4Signing in
After activation, sign in at ocr-handwriting.online/sign-in. You will need your email address, password, and a fresh code from your authenticator app.
(insert image: sign-in.png)]
Sign-in flow
- Enter your email address
- Enter your password
- Click Sign in
- Enter the 6-digit code from your authenticator app
- You arrive at the customer portal dashboard
If two-factor authentication fails
- Check that you are using the correct entry in your authenticator app — wrong-entry-selected is the most common cause
- Check that your phone's clock is set to automatic time (authenticator codes are time-based)
- If you are out of codes, use a recovery code instead
- If you have lost both your phone and your recovery codes, contact support for an administrator-assisted reset
Forgot your password?
Click Forgot password? on the sign-in page. We send a reset link to your registered email address. Two-factor authentication still applies after a password reset — your authenticator app stays active.
5The customer portal
The customer portal is your home base. From here you submit scans, manage API keys, invite team members, change account settings, and review invoices.
Available languages
The customer portal and our marketing site are available in four languages: English, Nederlands, Deutsch, Français.
(insert image: language-switcher.png)]
Use the language menu in the top-right corner of any page to switch between them. Your choice is remembered for the next visit.
Note: this user guide is currently published in English only. The portal UI itself is fully translated, and our support team responds in English and Dutch.
Main areas
- Dashboard — overview of recent activity and pilot status
- Scans — submit new scans and review past jobs
- API keys — issue and revoke keys for programmatic access
- Team members — invite colleagues and assign roles
- Settings — organization, account, and security
- Billing — pilot credits, payment method, and invoices
6Submitting scans
There are two ways to submit material to BIQE for correction:
- Web upload — upload a ZIP of images through the portal (suitable for occasional use, pilots, and testing)
- API integration — call our REST API from your own pipeline (suitable for production volumes; see chapter 7)
Web upload: starting a new scan
From the portal, go to Scans and click New scan. You will see this form:
(insert image: new-scan-form.png)]
File requirements
- Upload a single ZIP file containing JPG, PNG, or TIFF images
- Maximum upload size: 2,048 MB (2 GB) per submission
- Images may be in the root of the ZIP or in subfolders
- One image per page; multi-page TIFFs are accepted
If you don't have a ZIP utility at hand, most operating systems provide one built in: right-click your folder of images on Windows and choose "Send to > Compressed (zipped) folder", or on macOS choose "Compress".
Choosing a processing tier
Three tiers are available, balancing speed, accuracy, and cost:
| Tier | Best for | Per page |
|---|---|---|
| Cheap | Bulk legacy material, modern printed text, or first-pass scanning where occasional errors are acceptable. | € 0.01 |
| Balanced (recommended) | Most archive material — 18th–20th century handwriting in good condition. The default choice. | € 0.03 |
| Best | Difficult handwriting: faded ink, complex layouts, earlier-period or non-Latin scripts. | € 0.08 |
Higher tiers improve accuracy on difficult handwriting at the cost of processing time. You can mix tiers across submissions — for example, run an inventory pass at cheap and re-process the interesting documents at best.
Choosing a preset
Presets steer the AI toward the kind of material you are processing. The default preset, Generic historical, works well for most European historical documents. Other presets include:
- 19th-century Dutch admin — Dutch administrative documents (registers, minutes, official letters) from roughly 1800–1900
- Generic historical — wide-ranging fallback for European historical material in Latin script
- Historical diary (English) — English-language personal writing, journals, and diaries
- Modern printed — printed text from the 20th century onward
If you're unsure, leave the preset on its default. You can always submit a few sample pages with different presets to compare.
Webhook callback (optional)
If you have a system that should be notified when the scan is complete, fill in a webhook URL. We will POST a JSON payload to that URL when processing finishes. Leave the field empty if you do not need a callback — you can always check status in the portal.
After submission
Click Start processing. You will be taken to a detail page showing the live status of your job: queued, processing, then complete. Once complete, you can download the corrected PageXML.
Most one-page jobs complete in under a minute. Larger batches are processed in parallel and typically finish at a rate of several pages per minute, depending on the chosen tier.
7API integration
For production use, integrate BIQE directly into your existing HTR pipeline. The API is REST-based, returns JSON, and uses an API key for authentication.
Step 1: Get an API key
In the portal, go to API keys and click + New API key:
(insert image: api-keys.png)]
You will be prompted to give the key a label (e.g. "Production server" or "Staging"). The key value is shown once when you create it. Store it in a secret manager such as AWS Secrets Manager, HashiCorp Vault, or GitLab CI variables — we cannot show it to you again.
Treat API keys like passwords. Never commit them to source control. Never share them in email or chat. Rotate them every 90 days as a matter of routine, and immediately if you suspect exposure.
Step 2: Submit a scan
Authenticate by sending the key in the X-API-Key header on every request. Submit pages as a ZIP archive.
curl -X POST https://ocr-handwriting.online/v1/process-scan \
-H "X-API-Key: $BIQE_API_KEY" \
-F "zip=@my-pages.zip" \
-F "tier=balanced" \
-F "preset=generic_historical" \
-F "webhook_url=https://your-system.example/biqe-callback"
The response is 200 OK with a JSON body:
{
"job_id": "ff6f3db8-ab61-47d0-9f69-1987b5b0f2f0",
"state": "queued",
"page_count": 14,
"tier": "balanced",
"preset": "generic_historical",
"submitted_at": "2026-05-02T11:56:05Z"
}
Step 3: Track job status
Either poll for status, or wait for the webhook callback.
curl https://ocr-handwriting.online/v1/jobs/<job_id> \
-H "X-API-Key: $BIQE_API_KEY"
When finished:
{
"job_id": "ff6f3db8-...",
"state": "complete",
"page_count": 14,
"pages_completed": 14,
"completed_at": "2026-05-02T11:57:43Z",
"result_url": ".../result"
}
Job states
| State | Meaning |
|---|---|
queued | Accepted; waiting for a worker. |
processing | Pages being processed. |
complete | All pages succeeded; result_url available for ~7 days. |
failed | Critical errors. Not billed. |
Webhook payload
If you provided a webhook_url, we POST this JSON when the job finishes:
{
"job_id": "ff6f3db8-...",
"state": "complete",
"page_count": 14,
"completed_at": "2026-05-02T11:57:43Z",
"result_url": ".../result"
}
We retry failed deliveries up to five times with exponential back-off (~1, 5, 25, 125, 625 s). Your endpoint should respond with any 2xx status code as quickly as possible.
Step 4: Download the result
curl -O -J -H "X-API-Key: $BIQE_API_KEY" \
https://ocr-handwriting.online/v1/jobs/<job_id>/result
Returns a ZIP archive with one corrected PageXML file per input image, preserving original filenames.
Common error responses
| HTTP | Meaning | What to do |
|---|---|---|
400 | Malformed request — missing field, invalid tier, etc. | Check response body for the specific reason. |
401 | Missing or invalid X-API-Key. | Verify the key value and environment. |
402 | Monthly spending cap reached. | Wait until next cycle, or contact support to raise the cap. |
413 | ZIP exceeds 2 GB. | Split into multiple submissions. |
415 | ZIP contained no JPG/PNG/TIFF, or non-archive uploaded. | Re-create with valid image files. |
429 | Rate limit exceeded. | Back off and retry; check Retry-After header. |
5xx | Server-side issue. | Retry with exponential back-off; contact support if persistent. |
Detailed reference, including all endpoints, parameters, response schemas, and language-specific code samples (Python, Node.js, PHP), is available at biqe.biz/api-docs.
8Managing your team
BIQE supports multiple team members per organization. Each member has their own login, password, and two-factor authentication.
(insert image: team-members.png)]
Inviting a team member
- Go to Team members in the portal
- Click + Invite member
- Enter the colleague's email address
- Choose a role (see below)
- Click Send invitation
Your colleague will receive an invitation email with the same activation flow you went through. The invitation is valid for 24 hours. If it expires, simply send a new one.
Removing a member
On the Team members page, click Remove next to the member you want to remove. Their account is deactivated immediately. Their authored content (submitted scans, API keys they created) remains under your organization.
Roles
| Role | Permissions |
|---|---|
| Owner | Full access. Can submit scans, manage API keys, invite or remove members, change billing, and manage organization settings. There must always be at least one owner. |
| Member | Can submit scans, view past jobs, and use API keys. Cannot change billing or invite others. |
9Account & security
Settings are organized into three tabs: Organization, Account, and Security.
Organization settings
(insert image: settings-org.png)]
- Organization name — the name shown on your invoices
- Organization contact email — used for billing and admin correspondence; not a login address
- Customer ID, Created at, Status — read-only reference fields
Account settings
(insert image: settings-account.png)]
Changing your email
Enter the new address and click Send confirmation email. Click the link in that confirmation email to make the change effective. Until you do, you continue to log in with your old address. This two-step flow prevents typos and unauthorized changes.
Changing your password
Enter your current password, then your new password twice. New passwords must be at least 12 characters.
Security: two-factor authentication
(insert image: settings-security.png)]
On the Security tab you can see the status of your two-factor authentication, how many recovery codes you have left, and when you last used 2FA to sign in.
Regenerating recovery codes
If you have used most of your recovery codes, or if you suspect they have been compromised, click Regenerate recovery codes. You will be issued ten new single-use codes; all previous codes become invalid immediately. You must enter a fresh code from your authenticator app to confirm — recovery codes are not accepted for this action.
Store the new codes somewhere safe (printed and locked in a drawer, in your password manager, or both).
Lost authenticator app
If you lose access to your authenticator app, recovery codes are your primary self-service rescue path. If you have lost both your phone and your recovery codes, contact support — an administrator can reset your 2FA after identity verification.
10Billing & pricing
BIQE is pay-as-you-go: no monthly subscription, no minimum spend, and no upfront commitment. You pay per page processed, billed monthly.
Pilot credits
(insert image: billing-page.png)]
Every new organization receives 100 pilot credits free of charge. These credits are consumed first; only after they are depleted does processing draw on your linked payment method.
Pilot credits do not expire and are scoped to your organization (not per user). They are intended for evaluation: try a sample of your collection, judge the quality, and decide whether to continue.
Adding a payment method
On the Billing page, click Add payment method. You will be redirected to Stripe's secure checkout to enter your payment details:
(insert image: stripe-checkout.png)]
- We accept Visa, Mastercard, American Express, Discover, iDEAL, SEPA debit, and Link
- Card details are handled directly by Stripe and never touch our servers
- Adding a payment method does not charge you anything immediately — billing happens monthly based on usage
- We may briefly authorize a small validation amount which is released automatically
Once your payment method is linked, you receive an email confirmation:
(insert image: payment-confirmed-email.png)]
Pricing tiers
| Tier | Per page | Per 1,000 pages |
|---|---|---|
| Cheap | € 0.01 | € 10 |
| Balanced | € 0.03 | € 30 |
| Best | € 0.08 | € 80 |
Prices exclude VAT. For EU business customers with a valid VAT number, reverse-charge applies. For other regions, local sales tax rules apply where relevant. Stripe Tax computes and adds the right amount automatically.
Monthly cap
By default, every organization has a monthly spending cap of € 1,000. Once you reach the cap, further scans are paused until the next billing cycle, or until you raise the cap. This prevents runaway costs from misconfigured pipelines. To change your cap, contact support.
Invoices
Stripe issues an invoice at the end of every calendar month summarizing the pages you processed at each tier. You receive the invoice by email and the charge appears on your payment method. A confirmation email follows once payment succeeds:
(insert image: invoice-paid-email.png)]
All historical invoices are available in the Stripe customer portal, accessible through a link in any of the email notifications. From there you can download PDF copies for your accounting system.
11Frequently asked questions
Where are my scans stored?
Pages are processed per request and not retained. We keep only anonymous statistics — page count, compute time, error rates — for billing and quality monitoring. The pages themselves are gone from our systems within seconds of processing.
Is BIQE GDPR compliant?
Yes. BIQE is operated from the Netherlands, in accordance with EU GDPR. We can sign a Data Processing Agreement (DPA) for customers who require one — please request it via info@biqe.biz.
Which languages and time periods does BIQE support?
Primarily Dutch, English, German, and French. Best results are obtained on 17th-century to 20th-century material in Latin script. Earlier scripts (medieval, Gothic) and non-Latin scripts (Arabic, Cyrillic, Hebrew) are not yet supported with high accuracy — contact us if you have such material and we can advise.
How accurate is BIQE?
On 19th-century Dutch administrative documents, our balanced tier achieves character-error rates of 2–3% at the line level. Accuracy varies with handwriting quality, ink condition, and document type. We recommend running a pilot of at least 50 representative pages to evaluate fit for your collection.
Can I integrate BIQE with my existing HTR pipeline?
Yes. BIQE works as a plug-in for any pipeline that produces PageXML. Common pairings include Loghi, Transkribus, and eScriptorium. We provide example integration code for these platforms — see the API documentation at biqe.biz/api-docs.
What happens if processing fails?
Failed jobs are not billed. You will see an error message on the job detail page (and in the webhook callback, if you provided one). Retry the job, or contact support if the error persists.
Can I cancel anytime?
Yes. There are no contracts or notice periods. Stop submitting scans and billing simply stops. To remove your account entirely, contact support.
How do I get an invoice with my company's VAT number?
Add your VAT number on the Organization settings page. It will appear on all subsequent invoices. For EU business customers with a valid VAT number, reverse-charge applies automatically.
12Troubleshooting
Invitation email did not arrive
Check your spam or junk folder first. Mail from new sender domains can be filtered initially. Mark the message as "not junk" or "not spam" — that will help future emails (invoices, payment confirmations) reach your inbox. If it's still missing after 30 minutes, ask your administrator to resend the invitation.
"Invalid 2FA code" on sign-in
Most often: wrong entry selected in your authenticator app. If you administer multiple BIQE accounts, give each entry a clear label. Also check that your phone's clock is set to automatic time. As a last resort, use a recovery code.
My ZIP file is rejected
Common causes: file size exceeds 2 GB; no JPG/PNG/TIFF images found; ZIP is password-protected. Re-create the ZIP without a password, and split larger archives into multiple submissions.
A scan is stuck in "processing"
Most jobs complete within a few minutes per page. If a scan is stuck for more than 30 minutes, refresh the detail page. If it still shows processing after that, contact support with the job ID — we will investigate.
My credit card was declined
Stripe will email you with the specific reason. Most often: insufficient funds, an expired card, or your bank flagging the transaction as suspicious. Update or replace your payment method on the Billing page; we will retry the failed invoice automatically.
Webhook callback is not arriving
Verify the webhook URL is publicly reachable over HTTPS. Some common issues: firewall rules block our IPs, the URL requires authentication we don't supply, or the receiving handler returns a non-2xx status code. We retry failed deliveries up to five times with exponential back-off before giving up.
13Support & contact
Direct support
Our team is small and we read everything. You can reach us by:
- Email: info@biqe.biz
- Contact form: biqe.biz/contact
- Postal mail: BIQE, Nijstad 14, 8281 BB Genemuiden, the Netherlands
Direct support is provided in English and Dutch during European business hours (Monday–Friday, 09:00–17:00 Central European Time — CET in winter, CEST in summer). For urgent issues we typically respond within a few hours; routine questions within one business day.
Documentation
- biqe.biz/about — how the technology works under the hood
- biqe.biz/pricing — current per-page rates and tier breakdowns
- biqe.biz/api-docs — full API reference with code samples
Feedback and feature requests
We are still actively shaping the product, and we genuinely value input from real users. If something is awkward, slow, missing, or could be better, write to us at info@biqe.biz with the subject line "Feature request" or "Feedback". We read every message and we will respond.
— End of user guide —
Thank you for choosing BIQE. We look forward to working with you.