Every ingredient needs valid paperwork. Veritura is how you check it.
Section 503A lets a pharmacy compound with a bulk drug substance only when three things hold.
- A route
- A USP or NF monograph, a component of an FDA-approved drug, or FDA's 503A bulks list
- Its maker
- An establishment registered with FDA
- Its paperwork
- A valid certificate of analysis
United States Code21 U.S.C. §353a(b)(1)(A)(iii)
… accompanied by valid certificates of analysis for each bulk drug substance …
The statute requires the certificate, and the pharmacy answers for it.
Veritura checks each one, line by line, the day it arrives.
A certificate can name only the seller, print a limit looser than the dose allows, carry a molecular weight that does not belong to its own formula, or be one report filed for two lots, and still look clean on the page.
This method is how Veritura reads one: the same steps, in the same order, every time, each tied to a published standard and each saying what it found and where.
Five ways in. One read.
Every channel lands on the same read. What changes is only how the file arrives and what the record says about where it came from.
| Channel | How it works |
|---|---|
| Email-in address | Every workspace has its own address. A certificate sent to it files under that workspace, whoever sent it; mail to an unknown address is ignored. |
| The supplier's door | One standing link per supplier. The supplier sends documents with no account, no login and no cost, and gets back facts (received, read, which asked items it satisfies), never a grade. |
| Upload | A file, a photo, or a whole set dropped at once, each read and filed on its own line. |
| Fetched by lot number | A certificate fetched by lot number from a supplier's public document library, where the supplier publishes one, or from a link the supplier sent. The record says it was fetched, and a client cannot claim that for a file it uploaded. |
| API | A document posted to the check endpoint, on the Operations plan, with signed webhooks. |
- The bytes decide the format. A file is identified by its contents, never by its name or the type the browser claims. PDF, PNG, JPEG, WebP and plain text are read.
- Some files are refused, with the reason. Word and Excel files, SVG, HTML, empty files and anything over 8 MB are refused, and the refusal says why in words.
- Nothing is filed twice. The same file read twice is recognised.
- The original is kept as received, with its SHA-256 fingerprint, in object storage. Paid plans keep every original; a free workspace keeps its first three.
Every value cited to its line. Not stated is never guessed.
Every value the review relies on is cited to the page and line it was printed on, with that line quoted word for word.
A page number is stated only when it is known, never estimated; a plain text file has no pages, so it is cited by line alone.
The text as read opens beside the review, numbered exactly as the citations count it, so anyone can check the reading against the document.
What is read: the substance and lot, the issuing laboratory and report ID, the dates of manufacture, test, retest or expiry, each result with the limit printed beside it, who made the substance and who sold it, who signed for the quality unit, who the certificate is addressed to, the formula and molecular weight, and the method.
- Not stated is never guessed
- A field the certificate does not state is shown as not stated, and an absence is said in words: "No line carries a report or certificate number. 12 lines read."
- Unreadable is never clean
- A document that cannot be read is reported as "Not verified. The document could not be read, so no check ran."
- The same bytes give the same reading
- The read is cached on the file's fingerprint, so the same bytes give the same reading.
- Scans and photos take more
- They go through a vision reader page by page, keeping page markers, where an AI model is configured, and a scan needs a focused second read before the product relies on it.
- The Second Reader is locked to the page
- The Second Reader is a second read by an AI model. Where it is switched on, it re-reads each check; its correction lands only if the line it quotes is found in the document, and a field it contests holds the lot for a person.

Up to twenty named checks, four groups. Each names its standard.
The verdict is assembled from 20 named checks in four groups. Which apply depends on the document: on 26 published bulk-substance certificates, 11 to 13 applied, 12 on the median one.
Each check names the standard it rests on and ends in one of five states: passed, failed, needs your call, could not run, or does not apply to this document.
| Check | Rests on |
|---|---|
| The certificate itself · 8 | |
| Names the substance, its grade and the lot | 21 U.S.C. 353a(b)(1)(A)(iii); ICH Q7 11.41. A dietary supplement, food or technical grade, or "research use only" or "not for human use", holds the lot until a pharmacist records a signed reason; a statement that the results do not support release holds it too (FDA alert on dietary supplement grade glutathione, August 27, 2026) |
| Signed for the quality unit by a named person | ICH Q7 11.43 |
| Issued by a named laboratory, with a report ID and every page | 21 U.S.C. 353a(b)(1)(A)(iii); ICH Q7 11.44. A certificate that numbers its pages to more than the file holds, or says its results are a transcription of the producer's certificate, needs your call (WHO TRS 1010 Annex 4) |
| Addressed to this pharmacy | A report issued for another pharmacy's order is not evidence for yours |
| Dated, and inside its retest or expiry date | ICH Q7 11.41 and its glossary |
| Every result inside the certificate's own limit | ICH Q7 11.42. An assay, water, impurity or other numerical test printed only as a word needs your call. For a 503B outsourcing facility, also the universal tests FDA's draft 503B guidance describes, in English (January 2020) |
| Its own figures agree with each other | Arithmetic: formula against molecular weight, assay as is plus water |
| A distributor's reissue references the original | ICH Q7 11.44 and 17.63 |
| The substance · 4 | |
| May be compounded under 503A | 21 U.S.C. 353a(b)(1)(A)(i); FDA's 503A lists |
| States the USP or NF monograph it meets, where one exists | 21 U.S.C. 353a(b)(1)(A)(i)(I) |
| The original manufacturer is named, with its address | 21 U.S.C. 353a(b)(1)(A)(ii); ICH Q7 11.43 |
| The manufacturer is registered with FDA to manufacture | 21 U.S.C. 353a(b)(1)(A)(ii); FDA establishment registry. For a Category 1 substance, the seller that is not the maker is searched too: FDA's interim policies (January 2025) ask that every subsequent manufacturer be registered |
| Published limits · 4 | |
| Residual solvents, and diethylene and ethylene glycol | ICH Q3C(R9); USP <467>. For the high-risk components FDA names (glycerin, propylene glycol, sorbitol solution and the others in its guidance), a DEG and an EG result each at or under 0.10%: FDA guidance, May 2023, Revision 1 |
| Elemental impurities | ICH Q3D(R2); USP <232> |
| Microbial counts | USP <1111> Table 2 for a substance, Table 1 for a preparation by its dosage form; USP <61> |
| Bacterial endotoxins, computed from the dose | USP <85>: K / M |
| Outside sources · 4 | |
| No recent FDA enforcement record matches the supplier | openFDA drug, device and food enforcement; records dated within the last 24 months, older ones listed with their dates. FDA warning letters and import alerts are searched as their own lookups, below |
| Identity agrees with FDA's substance registry | FDA GSRS: name, UNII, CAS, formula, molecular weight |
| The laboratory confirms it issued the report | The issuing laboratory's own recorded reply |
| Agrees with every earlier certificate for this lot | Every document on record for the same lot number, compared on the values both print, the expiry and manufacture dates among them; on a repacker's certificate, also the original manufacturer's certificate for the batch it names (ICH Q7 11.44); an independent laboratory's report on the same lot, against the limits the certificate states; and the pharmacy's certificates for other lots, so a result repeated from another lot is named (ICH Q7 11.41, 11.42) |
Beside the twenty, the release rules for the kind of substance ask that its evidence be on file: identity and assay for a bulk substance, with an endotoxin result for a sterile use; assay for a preparation, with sterility and endotoxin for a sterile route. They are shown as the release rules and are not counted among the twenty.
Anything short of a pass says what failed, why, what would pass and how to get there, with the button to do it. A check that could not run is named with what it needs and never counted as a pass.
Veritura holds no USP-NF licence and never checks a certificate against a monograph's acceptance criteria: the monograph check asks only whether the certificate states the monograph it meets.
What changed in v1.1 (October 19, 2026). The certificate is now asked for its grade and its use statements, for every page it numbers, and, on a repacker's certificate, for agreement with the original manufacturer's certificate; dates are read in every form a certificate prints them, and a date that can be read two ways is never called in date; diethylene and ethylene glycol are checked in the high-risk components FDA names; the seller of a Category 1 substance is searched in FDA's establishment registry. The count stays twenty: each new question sits in the check whose standard it rests on. Reviews read under v1.0 keep their stamp.

Computed, not copied. The limit your dose allows.
A certificate prints its own limits, and some of them are looser than the published standard allows for the way the pharmacy will use the substance.
When the pharmacy records its route and dose, Veritura computes the limit that applies, holds the certificate to that number instead of the one the supplier printed, and shows the arithmetic.
Bacterial endotoxins, USP <85>
- The limit
- K over M
- K
- The threshold pyrogenic dose: 5 EU per kg per hourFor parenteral routes other than intrathecal; 0.2 for intrathecal use, and for epidural use because of the risk of inadvertent intrathecal administration, as FDA states in its endotoxin questions and answers
- M
- The maximum dose in any one hour, per kg of body weightWith no patient weight supplied, the 70 kg adult convention is used, and the record says so
- Recorded
- A maximum of 2 mg in one hour, intramuscular, 70 kg adult
- M2 mg / 70 kg0.028571 mg/kg/hr
- K / M5 EU/kg/hr / 0.028571 mg/kg/hr175 EU/mg
Endotoxin limit for this dose175 EU/mg
Against that limit
| The certificate | The check |
|---|---|
| Prints NMT 400 EU/mg | Not verified It states a limit looser than USP <85> allows for this dose, and the check fails with this arithmetic on the page. |
| No route or dose recorded | Could not run The check says it could not run and names what it needs. |
The other published limits
- Residual solvents, ICH Q3C
- A 63-solvent table, 5 in Class 1, 31 in Class 2 and 27 in Class 3, each with its permitted daily exposure
- Elemental impurities, ICH Q3D
- Cadmium, lead, arsenic and mercury, read against the concentration for the route
- With the dose recorded
- Veritura computes this substance's share of each permitted daily exposure. A methanol or lead result can sit inside the supplier's own limit and still exceed ICH's; the review shows both numbers.
- Microbial counts, USP <1111>
- For a substance, total aerobic count against a maximum of 2,000 cfu/g, and total yeasts and molds against 200 cfu/g; for a preparation, the criterion for its dosage form, and none when the dosage form is not established
- Beyond-use dates, USP <795> and <797>
- A preparation's beyond-use date is checked against USP's ceiling for its category, storage and sterility testing, and against every ingredient's own expiry

Six FDA records on every read. Every lookup keeps its receipt.
Six FDA records are checked on every read, with public lookups on in production. Each answers a different question, and each result is kept with its receipt.
| Source | What it decides |
|---|---|
| FDA establishment registry | The named manufacturer, searched live. Registered to manufacture passes, with its FEI. Registered only to relabel or repack fails, because FDA's original manufacturer is "not a subsequent packer, repacker, labeler, or distributor". Not found and expired are named. |
| FDA substance registry, GSRS | The name, UNII, CAS number, formula and molecular weight on the certificate, compared with FDA's record. A conflict fails the verdict with both figures named, for example "certificate 3751.2, registry 4100". |
| openFDA enforcement | The supplier, maker and laboratory matched against drug, device and food enforcement records. "Clear" is shown only when the sources answered; a source that did not answer fails closed. |
| FDA warning letters | The same parties matched against FDA's published warning letters. |
| FDA import alerts | The supplier, maker and laboratory searched in FDA's import alert database. |
| FDA's 503B outsourcing list | Checked against a daily capture of FDA's list of registered outsourcing facilities, with the capture's date kept. |
FDA's 503A lists sit beside these: the bulks list at 21 CFR 216.23(a), the substances FDA declined at 216.23(b), and Category 1 and Category 2 (a Category 1 substance falls under FDA's January 2025 interim policy and is the pharmacy's call; a Category 2 substance does not, and holds the lot), each name as FDA printed it on May 14, 2026, with that date on the page.
The codified lists at 21 CFR 216.23 and 216.24 are re-read from the eCFR every 24 hours with the date the source gives, and "not in the capture" is never shown as "not on FDA's list".
- Every lookup keeps its receipt: the source address, the query, the time, the result and its limitation. Zero is never shown as checked.
- No match is never a clearance. It is a fact about the sources that answered.
- The record keeps watching. After the read, lots and suppliers on file are re-matched against openFDA enforcement records on an hourly cycle. A hit holds the lot and marks every Passport (the proof issued for each dispensed order) minted from it.

The file is a witness. Seventeen signals read it.
The document is evidence about itself. Every file goes through a document-integrity pass of 17 signals: 7 read the file itself, and 10 compare it with the workspace's other files. Matches to FDA records are outside-source checks, made beside them. Each fires only where the file allows it.
- Seven findings from the PDF's own bytes
- From a file created after the date it claims to an image-editor producer or an incremental edit stack. A high contradiction holds the lot.
- Thirteen signs of a generated document
- From language-model boilerplate and unfilled placeholders to impossible phone numbers and uniformly round values. A document whose own content credentials (its C2PA manifest) say AI made it holds.
- Eleven structural features
- Compared with the supplier's own earlier documents.
- Reuse across the workspace
- (the same file, report ID or lot where it should not be) and across every Veritura account, where a workspace sees only a count of the others.
Document-integrity findings speak in signals for a person, never in verdicts. A finding never calls a document forged, fake or fraudulent, and the producing tool's name alone is never raised. The full list is on Intelligence.

Four headings. Verified is about the paperwork.
Every review opens with one of four headings. "Verified" is a statement about the paperwork. In the product's own words:
We read documents. We do not test material.
| Heading | When it is used |
|---|---|
| Verified | Every check that could run passed. |
| Verified where checked | Nothing failed. What could not run is named, and not counted as passed. |
| Your call | Nothing failed, and some checks need the pharmacist's own decision, such as a Category 1 substance or a laboratory not yet asked. |
| Not verified | "N of M checks not met", each one named. Also used when a document could not be read. |
Under the heading, four lanes report on every document, each saying ran, not applicable or could not verify: reconciled against the issuing laboratory, checked against the standard, checked against the file itself, and checked against every other document seen.
No lane goes quiet. Below them sits the lot's chain of nine links (manufacturer, supplier, certificate, received, lot decision, preparation, Passport, shipment, patient), each verified, open or your call, and the one next step.

A person decides. The server holds the line.
Nothing leaves a lot until a named person has reviewed it.
The rule lives on the server, so it holds on every path: the dashboard, the API, order fulfilment, Vera's release plans, automatic release, Seals (the serialized QR on each label) and shipments. The person records what they checked and what they relied on.
The server gives eight reasons nothing leaves a lot:
- A recall signal
- A person's open hold
- No 503A route
- An ingredient lot that is held
- The lot not cleared
- An ingredient lot nobody reviewed
- A purchased lot with no certificate read against it
- No person review
- What holds a lot on the evidence
- No manufacturer named; dates that cannot all be true; a high file-metadata contradiction; a content-credentials AI assertion; a result outside its own limit; a retest date that has passed; the laboratory saying it did not issue the report, or that it differs; a label a person says does not match; a recall signal; a field the Second Reader contests.
- Only the laboratory confirms a report
- The review drafts the request to the issuing laboratory and it opens in the person's own mail. Only a recorded reply sets a document to source-confirmed; "not issued" or "differs" raises a finding and holds the lot.
- The pharmacy decides the 503A calls
- A Category 1 substance is shown with the date of FDA's list, and the pharmacy decides. A Category 2 substance holds the lot in every policy, and no setting can switch that off, because FDA's interim policy does not extend to it. Only a substance with none of the three routes holds on every path.
- Policy is a preset, not a free-form rule
- Strict, Standard or Lenient, eleven named toggles and one completeness threshold. Saving Standard or Lenient lets Passports issue automatically, and only from a lot a person has already reviewed.
Changed only by addition. Every version stamped on the record.
The methodology version is stamped on the record. A material change to the method takes a new version, noted publicly.
A release decision is signed and carries a copy of the policy it was decided under, with that policy's version, so the same evidence replays to the same decision.
Records change only by addition. A signature cannot clear a finding; a newer certificate lets a named person set an older finding aside with a reason, and both stay on file.
Supported observations are never removed for being unfavourable. How each correction is recorded is set out on the Trust Center.
Where the method stops.
- It does not test material
- Veritura reads documents and the public record. It never samples, tests or handles a substance or preparation.
- It does not prove provenance on its own
- A document is confirmed only when the issuing laboratory's own reply is recorded.
- It does not read silence as safety
- No match in a public source is not proof of absence, and no document-integrity signal is not proof a document is genuine.
- It does not apply monograph acceptance criteria
- It checks whether a monograph exists and whether the certificate claims it.
- It makes no determination about the medicine
- And no approval, safety, legal or regulatory call about any supplier or product.
Bring one certificate from your own shelf and watch it read, checked and cited. Book a demo, or open the live demo on a sample workspace where every firm and lot is fictional.