Skip to content

Approve an expense

Review a member-submitted expense. Approving it creates a credit on the member’s balance; rejecting it drops the expense without a credit.

  • You must be an admin (treasurer counts as admin).
  • Expenses that have not yet been reviewed appear in the pending queue.
  • You must be online. Both the Approve and Reject buttons write to the financial ledger and disable when the device is offline.
  1. Open the syndicate.
  2. Go to Pending Expenses. Route: /syndicates/:syndicateId/expenses/pending.
  3. For each expense, review the Amount, Description, Category, Date, and submitting member.
  4. Tap View Receipt to inspect the attached photo.
  1. Tap Approve on the expense card.
  2. You see Expense approved. An Expense Credit transaction is written to the submitting member’s balance for the full amount.
  1. Tap Reject on the expense card. A Reject Expense dialog appears.
  2. Enter a reason in the Reason field. The Reject button can always be tapped, but it does nothing until the Reason field has text.
  3. Tap Reject to confirm. You see Expense rejected. No credit is created; the expense is removed from the pending queue. Tapping Cancel closes the dialog and leaves the expense pending.

The Approve and Reject buttons watch connectivity. When the device is offline, both buttons disable; tapping one shows Approval needs a connection: try again when you’re online in a snackbar. They re-enable automatically when the connection returns.

Approval writes an Expense Credit transaction directly to the ledger, and rejection writes a status change that other admins immediately see. Both are deliberate online-only operations: queueing them offline would risk an admin tapping Approve on a stale view of the queue and creating a credit twice.

  • “Failed to approve” / “Failed to reject”: connectivity dropped during the call. The expense stays pending; retry once the connection is back.
  • The Approve and Reject buttons are disabled. The device is offline. See Offline behaviour above.
  • “Could not load receipt image”: the receipt may have failed to upload. Ask the submitter to reattach and resubmit.