Skip to content
WebViewGold Vibe Coding to App Store
English
Get WebViewGold

ChatGPT & Codex + document scanner

A native document scanner for your ChatGPT & Codex app

If your ChatGPT & Codex app has a file upload, it can have a real document scanner. WebViewGold adds a Scan document entry to the native upload dialog: Apple VisionKit on iPhone and Google ML Kit on Android find the page edges, crop and enhance each page, and hand the result to your existing file input like any other upload.

From $109 one-time per platform, or let our team do it all from $698.

  • Approval guarantee – or money back within 14 days
  • No coding needed
  • One-time payment, free updates
  • 24/7 human support
  • Made in Germany since 2014 · ISO 27001

What users scan in vibe-coded apps

Receipts for expense tracking

The user scans a crumpled receipt, the scanner flattens and crops it, and your backend stores the file and extracts amount, date and merchant with OCR or an AI model.

Contracts and signed forms

Multi-page scans of leases, consent forms or onboarding paperwork go straight into the client record instead of arriving by email as blurry photos.

Field work and deliveries

Delivery notes, inspection sheets, handwritten work orders: crews scan on site and the office sees a clean, readable document a minute later.

No new UI to build

The scanner hooks into every standard <input type="file">. If ChatGPT & Codex already has an upload button, the scan entry appears there as soon as the setting is on.

Prompt for ChatGPT & Codex

Paste this into ChatGPT & Codex to implement the web-app side. Review the result, publish, then test inside the WebViewGold app.

Prompt for ChatGPT or Codex
Prompt for Codex: Make expense receipts work with the native document scanner of the WebViewGold app wrapper and open a pull request. 1) Use a standard input type="file" with accept="image/*,application/pdf" on the receipt form. 2) Upload to a server route that checks the session, accepts up to 20 MB, validates the real MIME type and stores the file in private object storage. 3) After storage, call the OpenAI API from the server with the file and request structured JSON with amount, currency, date and merchant; save it as a draft for the user to confirm. 4) Keep the OpenAI key server-side only. 5) Show upload progress and a status badge. 6) When navigator.userAgent includes my custom WebViewGold token, show the hint "Choose Scan document for a clean copy". 7) Add tests with a PDF fixture and document the upload rules in AGENTS.md.

I am very happy I bought this app! Extremely easy and great documentation. Was in contact with the customer service, they replied very quickly and very friendly. They solved my question within a day. 10/10 would recommend.

Nelis Geiger · CodeCanyon

Switch it on and make your uploads scan-friendly

Half an hour, including a test on two phones.

  1. Enable the setting

    iOS: var kVisionKitEnable = true in Config.swift. Android: ENABLE_ML_KIT_DOCUMENT_SCANNER = true in Config.java. Set either one to false to hide the entry again.

  2. Accept PDFs as well as images

    Android returns a PDF of up to 5 pages per scan, and the upload dialog adapts its entries to the input's accept attribute. Use something like accept="image/*,application/pdf" and make sure your upload code and storage accept application/pdf.

  3. Allow realistic file sizes

    A multi-page scan is larger than a profile photo. Check the size limits of your upload route and storage bucket, and show progress while the file travels over mobile data.

  4. Write an honest camera purpose string

    The scanner uses the camera, so the camera usage description should mention documents, for example "to scan receipts and attach them to your expense reports".

  5. Test on real devices

    iOS needs iOS 18.4 or later and a device that supports the VisionKit document camera; elsewhere the entry hides itself. Android needs Google Play Services. Simulators and emulators are not a realistic test.

iOS and Android at a glance

iOSAndroid
ScannerApple VisionKit document cameraGoogle ML Kit Document Scanner
SettingkVisionKitEnable in Config.swiftENABLE_ML_KIT_DOCUMENT_SCANNER in Config.java
Entry in the upload dialogScan Document, next to Camera and Photo LibraryScan document, next to the photo, video and gallery entries the accept attribute allows
What your input receivesThe finished scan, like any uploaded fileA PDF, up to 5 pages per scan
RequirementsiOS 18.4 or later on a supported deviceGoogle Play Services
Built inEdge detection, cropping, enhancement, additional pagesEdge detection, cropping, enhancement, additional pages, gallery import

An upload handler that is ready for scans

Works for photos, scans and PDFs, in the browser and in the app. Point /api/documents at your upload route; for your ChatGPT & Codex app that lives in: Your own API or serverless functions.

javascript
// <input type="file" id="doc" accept="image/*,application/pdf">
document.getElementById("doc").addEventListener("change", async function (e) {
  var file = e.target.files && e.target.files[0];
  if (!file) return;
  var isPdf = file.type === "application/pdf" || /\.pdf$/i.test(file.name);
  if (file.size > 20 * 1024 * 1024) { showError("That scan is too large. Try fewer pages."); return; }

  var form = new FormData();
  form.append("file", file, file.name || (isPdf ? "scan.pdf" : "scan.jpg"));
  showStatus("Uploading " + (isPdf ? "document" : "photo") + "…");

  var res = await fetch("/api/documents", { method: "POST", body: form });
  showStatus(res.ok ? "Saved. We are reading it now." : "Upload failed. Please try again.");
});

Review and privacy checklist

  • Guideline 4.2: a camera scanner with edge detection is something a website cannot offer on iPhone. Mention it in the review notes and show it in a screenshot.
  • App Privacy and Data safety: if scans are uploaded and stored, declare them (for example "Other User Content" on Apple, "Files and docs" on Google Play) together with the purpose you use them for.
  • Scans of IDs, bank statements or medical forms are sensitive: keep storage private, serve files through short-lived links and let users delete their documents (the account deletion guide).
  • Give the reviewer a demo account that reaches an upload screen; otherwise they never see the scanner.

Frequently asked questions

Do I have to change my web app for the document scanner?

Usually not. Every standard file input gets the scan entry once the setting is on. Check that the input accepts PDF as well as images, because Android returns a PDF, and that your upload limit allows multi-page files.

Which file format do I receive?

On Android a PDF with up to 5 pages per scan. On iOS the VisionKit scan arrives through the same file input; accept both images and PDFs and test the result on a device before you build anything that depends on the format.

Does the scanner read the text (OCR)?

The scanner captures, crops and enhances the pages. Reading the text is up to your backend: send the uploaded file to an OCR or AI extraction service on the server and store the result next to the document.

Why is Scan Document missing on some iPhones?

The iOS entry needs iOS 18.4 or later and a device that supports the VisionKit document camera. On other devices it is hidden automatically and users still see Camera and Photo Library.

Does scanning cost anything per page?

No. VisionKit is part of iOS and the ML Kit Document Scanner runs through Google Play Services, so there are no per-scan fees. Costs only appear if you send the files to a paid OCR or AI service.

Three ways to get your app into the stores

Same result, different amount of work on your side. All three come with the approval guarantee and 24/7 human support.

Do it yourself

$109 per platform, one-time

The WebViewGold license: a finished Xcode or Android Studio project. Paste your URL, set name and icon, switch on features, build and submit. Free updates forever.

See plans on the main page

Cloud Builder

$349 per license, one-time add-on

No Mac, no Xcode, no Android Studio: configure in the browser, we build both apps in the cloud and hand them to App Store Connect and the Play Console.

How the Cloud Builder works Try the free demo

Full Service

$698 per platform $798

Send us your URL and icon. Our team configures, builds and delivers your app within 72 hours, white-label, with source projects. Both platforms for $1,158.

Full Service details Powered by WeSetupYourWebViewApp

Winter Sale prices valid until December 31, 2026.

Ready to ship your ChatGPT & Codex app?

App Store & Google Play approval guarantee – or your money back within 14 days

Rather hand it over? Full Service: we configure, build and deliver within 72 hours, from $698 per platform. Questions? Chat with us 24/7.

Refunds are granted under the conditions listed in our FAQ: a non-content rejection by Apple and/or Google, claimed within 14 days after purchase.