BareBones + Google Sheets

Love entering things in a sheet? Keep it. Make the sheet your on-ramp and let a new row flow straight into the ledger — you get the familiar grid and a real, reconciled book behind it.

Apps Script · onFormSubmit
function postRow(e) {
  const [date, amount, category, note] = e.values;
  UrlFetchApp.fetch(
    'https://barebonespm.com/api/v1/ledger', {
    method: 'post',
    contentType: 'application/json',
    headers: { Authorization: 'Bearer ' + KEY },
    payload: JSON.stringify({
      amount: Number(amount),
      type: 'EXPENSE',
      category: category,
      transaction_date: date,
      reason_description: note,
    }),
  });
}

What you'll need

Where each row lands

POST/api/v1/ledger

Authorization: Bearer <your_api_key>

Create a key on your dashboard. Full reference in the API docs.

FieldTypeNotes
amount*numberDollar amount, e.g. 142.50
type*enumINCOME, EXPENSE, or CHARGE
category*enumRENT, UTILITIES, REPAIRS, INSURANCE, TAXES, …
property_idintegerWhich property (optional)
unit_idintegerSpecific unit; omit = property-wide
transaction_datestringYYYY-MM-DD; defaults to today
reason_descriptionstringFree-text note for the line
statusenumPAID or UNPAID (default UNPAID; ignored for INCOME)

* required

Two ways

Pick code or no-code

Apps Script keeps it all inside Google; a Zap or Make scenario keeps it point-and-click.

    1

    Create an API key

    Generate one under API keys. For Apps Script, store it with Script Properties, not inline.

    2

    Lay out your columns

    Date, amount, category, note — one row per transaction. Use the exact category values from the reference above.

    3

    Code path — Apps Script

    Add an Extensions → Apps Script function like the one shown, triggered on form submit or on edit, to POST the new row.

    4

    No-code path — Zapier / Make

    Prefer no code? Use a “New Spreadsheet Row” trigger and a webhook/HTTP action to post to the ledger.

    5

    Add a row, watch it land

    Enter a transaction. Within moments it appears in your BareBones ledger, categorized and counted.

Get your API key and wire it up.

Create a key on your dashboard, point your tool at POST /api/v1/ledger, and your books start keeping themselves.