Units, donors and requests — visible the moment they matter
Blood inventory by group and component, donor records, and requests from hospitals and patients who need units now.
What changes on day one
- Answer “do you have O-negative?” in seconds
- Keep donors reachable and eligible
- Take requests from hospitals and patients directly
- Track units to expiry, not past it
Everything below is a starting point, not a specification. Every model, field and form on this page is yours to change in Studio — without a developer, a release or a migration.
Inside Blood Bank ERP
The surfaces this ERP ships with. Read them as a well-informed first draft — the shape is right for most, and where it is wrong for you, you change it rather than file a ticket.
Inventory
Units by group, component and expiry — the fields a blood service actually needs.
Donors
Donor records with eligibility windows and contact history.
Donations
Log donations against the donor and into inventory in one step.
Requests
Requests from hospitals and patients in a queue with your own approval flow.
Availability search
Patients search availability near them from CareSewa One.
Expiry tracking
Surface units nearing expiry before they are wasted.
It arrives with these models. All of them are editable.
Subscribing provisions Blood Bank ERP and seeds 4 default models against your account. Not one of them is fixed: rename them, add fields, remove fields, or delete the model outright. They exist to save you an afternoon, not to define your organisation.
Unit
ModelDefinition · seeded
Donor
ModelDefinition · seeded
Donation
ModelDefinition · seeded
Request
ModelDefinition · seeded
And whatever else your organisation tracks
Records for every one of these live in a generic store, tagged with your tenant. That is why adding a field is instant and why removing one never destroys what was already recorded — the schema is data, and clinical data is soft-deleted by default.
Change any of this yourself
Every field on every blood bank form is a record in a ModelDefinition, not a line in a codebase. That is not an implementation detail — it is the reason you can add the field you need on a Tuesday afternoon and have your staff using it before the shift ends.
No release. No migration window. No change request, no six-week quote, no field living in a spreadsheet because the vendor said no. You open Studio, you add it, and the form re-renders for everyone on their next request.
18 field types
Text, number, currency, date, select, relation, file, JSON and more.
Relations, not exports
Link a model to a model and the join is real, not a nightly CSV.
Auto-CRUD REST
Every model you define gets an API with the same envelope and auth.
Instant everywhere
The table, the form and the API all change on save. No deploy.
What Blood Bank ERP plugs into
This is not a standalone product with an integrations page. The other portals are on the same engine, the same account and the same patient — so “integration” is mostly a word for something that already happened.
All ten sit on one patient, one staff directory and one audit trail.
Connect another and there is nothing to migrate, nothing to sync, and nobody retyping a name from one screen into another.
“Do you have O-negative?” — answered before anyone calls
Families ring round blood banks at the worst hour of their life. Availability search means the answer is on a screen, and what they see is a count — never a donor.
They search availability near them
Unit counts by group, from your live inventory. Nothing about your donors is exposed.
They raise a request
Requests from patients and hospitals land in one queue with the approval flow you defined.
You issue against the unit
Issuing writes against the unit record, so inventory and the audit trail never drift from the shelf.
And the part that is genuinely uncomfortable to say out loud
The patient can revoke you. Their account is platform-level and they own it, so the moment they revoke, your view of them is empty — not archived, not pending a support ticket, empty. We think that is the right trade: providers who are chosen get people who arrive with their whole history, instead of a clipboard and a memory test.
How CareSewa One worksPeople get exactly what you grant. Nothing more.
Staff are created once on your account, then granted specific portals and specific create, read, update and delete rights per model. A blood bank receptionist and a blood bank manager are the same directory entry with different grants — not two systems with two passwords.
Entitlements ride in the JWT and are enforced server-side. A portal you do not hold returns 403 no matter what the browser renders, and a revoked grant stops working on the next request rather than the next login.
- Grants are per portal and per model, not per role-shaped guess
- Create, read, update and delete are separate rights
- Enforced on the server on every request — hiding a menu is not security
- Revocation takes effect immediately, not at the end of a session
Priya Menon
Staff · created once, granted per portal
Portal grants
Blood Bank ERP
bloodbank.caresewa.com
Laboratory ERP
lab.caresewa.com
Pharmacy ERP
pharmacy.caresewa.com
These grants are claims in the token and are re-checked server-side on every request. The UI reflects them; it does not enforce them.
The rules are in the engine, not in a policy document
Blood Bank ERP does not implement its own idea of security. It inherits the platform's — which means these constraints hold on every request, in every portal, without anyone remembering to apply them.
Tenant isolation is structural
Every model definition and every record carries your tenant id, and every query filters by it. There is no code path that reads across tenants without an explicit super-admin assertion.
Every mutation is audit-logged
Who did what, when, and from where — appended on write, readable by your admins, and editable by nobody. Including us.
Clinical records are soft-deleted
Removing a field stops collection and display; it does not destroy what was already recorded. Medical data is not hard-deleted by default, and that default is deliberate.
Consent gates the patient, not a setting
A patient is visible to a provider because they connected and shared. No admin toggle, no bulk import and no support request produces access that the patient did not grant.
What people ask about Blood Bank ERP
If yours is not here, ask us directly — a real person answers.
Patients see availability, not donor data. What is exposed is the unit count by group — never the people behind it.
Connect Blood Bank ERP on its own, or alongside the other nine
Each portal is entitled and billed separately, so you pay for what you connect and nothing else. CareSewa is priced per market rather than from one figure in one currency.
Nine more, on the same account
Add any of these later without touching what you already run. One login, one patient, one audit trail.
See Blood Bank ERP shaped around your workflows
Not a generic demo tenant — blood banks, hospital blood services, donor networks have their own protocols, and the point of this platform is that it takes them.
Multi-country by design · tenant-isolated · every change audit-logged