Skip to content

Document types

Every document in Moonjar is classified as one of 15 types. The type decides which structured fields Moonjar tries to extract — vendor and total for a receipt, departure city and booking reference for a travel document. If nothing fits, the document is filed as Miscellaneous and gets a generic field extraction.

When you capture something, Moonjar reads the content and picks the type that best fits. You don’t have to tell it what kind of document it is. You can edit the type on the document detail page if it gets it wrong.

Cafe receipts, grocery receipts, anything you bought.

Fields: vendor, total, date, payment_method, items.

Plumber, accountant, dentist — anything you paid someone to do.

Fields: provider, service, total, date.

Policies, certificates, renewals.

Fields: provider, policy_number, coverage_type, premium, expiry_date, insured_items.

Registration, service records, finance.

Fields: vehicle, registration, vin, date, type.

Flight bookings, hotel confirmations, cruise tickets, e-tickets.

Fields: carrier, booking_reference, departure, arrival, date, passenger_names.

Reports, prescriptions, claims.

Fields: provider, patient, date, type, amount.

Certificates, licences, IDs, passports, memberships.

Fields: document_type, issued_by, date, reference_number.

Electricity, gas, water, internet, phone.

Fields: provider, account_number, period, amount, type.

Fees, reports, certificates, enrolments.

Fields: institution, student, date, type, amount.

Product warranties and manuals.

Fields: product, brand, model_number, purchase_date, warranty_period.

Refunds and returns.

Fields: store, original_amount, refund_amount, date, items.

Contracts, agreements, court orders, leases, trusts, wills.

Fields: type, parties, date, reference_number, jurisdiction.

Bank statements, tax returns, transfers, approvals.

Fields: institution, account_number, type, amount, date.

Leases, inspections, permits, titles, notices.

Fields: address, type, parties, date, reference_number.

The catch-all. Anything that doesn’t fit one of the above. Generic field extraction — names, dates, amounts, reference numbers, companies involved.

Classified types power structured search“receipts from last March over $50” works because vendor, total, and date are real fields the database can filter on, not just words inside the source text. The same fields are visible to the chat assistant when it answers questions about your library.

  • The classifier picks one type per document. A document that’s both a receipt and a warranty card gets one type and one set of fields.
  • Field extraction depends on what’s actually in the source. A faded receipt with no readable total leaves total blank.
  • If an extracted field is wrong or missing, you can fix it by hand on the document detail screen.