SiteCash Help Open SiteCash →

Help › Mobile app

Mobile app overview

SiteCash has an app for Android and iPhone, built with Expo (React Native). Site staff record expenses with bill photos — even offline — and approvers decide from their phone. This page explains how the pieces fit and which guide to follow.

Who uses this: SiteCash operator / developer
Not for builder companies Customers only install the app from the store and log in with their usual SiteCash email and password.

Which guide do I need?

How it fits together

The app lives in the mobile/ folder of the SiteCash code. It has no database of its own: it signs in to the SiteCash server and uses the same data and rules as the website.

PartWhere it runsSet up in
SiteCash server (website + app API /api/mobile/v1)Your PC while developing; your live server (https) for store appsDev setup §3, Release §1
App builds (Android .apk/.aab, iPhone .ipa)Expo Application Services (EAS) in the cloud — no Mac or Android Studio neededDev setup §7–8, Release §4
Push notificationsServer → Expo push service → Google (Firebase) / AppleDev setup §9, Release §3
Store listingsGoogle Play Console, App Store ConnectRelease §7–8

Already set up: Expo project @dbarmai/sitecash, Firebase project sitecash-pettycash (mobile/google-services.json), app id com.sitecash.app.

The SiteCash app home screen for a site user, with a sent-back entry and the site's cash balance
Home (site user)
New expense form in the app with category, cost code, paid to, particulars and a bill photo
New expense with bill photo
Approvals list in the app with tick boxes and an Approve ticked button
Approvals (accountant)
Home screen while offline, showing 2 entries waiting to upload with Upload now
Offline: entries wait on the phone

Build types

Set up in mobile/eas.json. Build with eas build -p android|ios|all --profile <type> in the mobile/ folder.

TypeWhat you getServer it usesUse it for
developmentYour app with developer tools; loads the code from your PCYour PC (mobile/.env.local)Daily development, testing notifications
previewAndroid APK installed from a link; iPhone build for registered phonesLive https server (Expo "preview" setting)Team testing before a store release
productionPlay Store bundle (.aab), App Store build (.ipa); build numbers go up by themselvesLive https server (Expo "production" setting)Publishing

Test checklist before a release

Go through this on at least one Android phone and one iPhone with a preview or TestFlight build, logged in to the live server with the demo company:

  1. Log in as a site user: Home shows only their sites and the "Sent back to you" list.
  2. Add an expense with a camera photo (Take photo): the voucher number appears and the photo opens.
  3. Turn on flight mode, add another expense: "Saved on this phone". Turn it off: it uploads once and appears in the cash book.
  4. Request cash; as an accountant on another phone, the notification arrives and opens the request; approve it.
  5. As the site user: the "approved" notification arrives; Record cash received; the request shows Cash received.
  6. As the accountant, send an entry back; the site user is notified, corrects it, and it waits for approval again.
  7. More → Help, Privacy policy and Delete my account open the web pages; Log out works.