Catch edited payslips and bank statements in your tenant screening flow
Atomara is a REST API that checks whether a PDF payslip, bank statement or employment letter was edited after it was issued, and returns a verdict, a 0–100 score and the signals behind them.
Your applicants upload income documents. Send each PDF to one endpoint and show your landlords or leasing team a clear answer before anyone signs.
Get an API key Talk to us about volume
Register with a work email and your first key adds 100 trial checks.
What applicants send you
Payslips
The most common proof of income, and the easiest to retype.
- Salary figures changed in an editor and re-saved
- A payslip built in Word or Canva from a template
- Fonts or text blocks that do not match the rest of the page
Bank statements
Used to confirm that income arrives and the rent is affordable.
- Balances or salary credits edited after export
- Rows added or removed so the totals no longer reconcile
- A statement regenerated by a tool that is not the bank's
Employment letters
Confirm a job and a salary — and are easy to fabricate.
- A letterhead pasted onto a typed letter
- Dates and figures changed after the letter was signed
- A file whose metadata names consumer design software
How to add it to your screening flow
- Create a key. Register, open Developers and issue an API key. A work email gets trial checks on its first key.
- Send each PDF. POST the file with your applicant id as external_id. Most answers come back in the same response; a slow one returns 202 processing and you fetch it with GET /documents/{id}.
- Show the answer. Store the verdict and score next to the application, and route anything flagged to a person before approval.
curl -X POST https://atomara.io/api/v1/documents \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Idempotency-Key: applicant-4821-payslip" \
-F "file=@statement.pdf" \
-F "external_id=applicant-4821"
{
"id": "doc_3f9a1c8e6d2b4f7a9c311e5b0a77d4c2",
"object": "document",
"status": "completed",
"external_id": "applicant-4821",
"verdict": "tampered",
"score": 3,
"tamper_score": 0.87,
"integrity_score": 0.05,
"confidence": 0.82,
"summary": "The file was re-saved by an editor after issue.",
"signals": [
{
"id": "editor_producer_blacklist",
"module": "M4",
"kind": "tamper",
"severity": "high",
"evidence": "Producer: Adobe Acrobat Pro DC",
"scored": true
},
{
"id": "invariant_balance",
"module": "M8",
"kind": "tamper",
"severity": "medium",
"page": 2,
"evidence": "Closing balance: expected 4310.50, found 6310.50",
"scored": true
}
],
"engine": {
"version": "1.0.0",
"rules_revision": "2026-07-07"
},
"report_url": "https://atomara.io/account/uploads/3f9a1c8e6d2b4f7a9c311e5b0a77d4c2"
}
What you show your landlords
A verdict
tampered, suspicious, inconclusive, authentic (a digitally signed file, or one matching a reference template of its issuer) or unsupported — one field you can branch on.
A 0–100 score
One number to sort a review queue by — the same one Atomara's own report shows. A scan or a photo usually carries no score.
The signals
Each finding with its evidence, such as the editor named in the file or a closing balance that does not reconcile, so a reviewer sees why and not just what.
What it does not do
- It reads the PDF itself: its structure, metadata, fonts and arithmetic. It does not contact the bank or employer that issued it.
- Send documents as PDF — a JPEG or PNG is refused. A scan or a photo saved as a PDF is checked as an image and usually comes back without a score, because a picture of a page cannot show which file it was taken from. Route it to a person, or ask for the original PDF.
- An unsigned file is called authentic only when its structure matches, in every detail, a reference template learned from genuine documents of its issuer, and nothing points to editing; the response then says whether the amounts were verified too. Otherwise the best answer for an unsigned file is inconclusive with no signs of editing found.
- There are no bank-specific templates. The same checks run on a statement from any bank.
Pricing
From $0.10 per document at volume, with no minimum and no setup fee. One document is one check, whatever its page count. Paid plans start at $5 a month. See all plans →
Your users' documents
- Files and reports are deleted 30 days after upload, automatically; only the verdict and the score are kept.
- DELETE /documents/{id} removes the file and its report immediately.
- Documents are not shared with third parties and are not used to train models.
- No person is in the loop: the verdict comes from the engine, not from a reviewer.
Questions platform teams ask
Can it integrate with our property management software?
Through your own backend: it is a plain REST API, so anything that can send an HTTP request with a file can call it. There is no packaged plug-in for a property management system.
What about photos and scans of payslips?
Send them as PDF — a JPEG or PNG is refused. A scan or photo saved as a PDF is checked as an image and usually comes back without a score, because a picture of a page cannot show which file it was taken from. Most screening teams ask applicants for the original PDF from their bank or payroll portal.
How fast is it?
Most documents are answered within the same request. A slow one returns 202 processing, and you fetch the result with GET /documents/{id}.
Is there a free trial?
Every account gets 3 full checks once the email is confirmed. Register with a work email and your first API key adds trial checks, so you can run real applications through it.
Does it confirm the document with the bank or the employer?
No. It checks the file itself — its structure, metadata, fonts and arithmetic — and tells you whether it shows signs of editing.
How long do you keep applicants' documents?
30 days, after which the file and its report are deleted automatically, keeping only the verdict and the score. You can delete any document immediately with DELETE /documents/{id}.
Talk to us about volume
Tell us what you receive and how much of it. We answer within one working day and can add trial credits for a real test.