Skip to content

Bill.paid

Emitted each time a Bill is paid.

Bill.pay emits Bill.paid when it completes on a Bill.

PropertyValue
Emitted byBill.pay
NounBill
MovesBill approved to paid
WakesNone.

Payload

Each delivery is an Event record. data holds what Bill.pay returns, and previous holds the state it left.

FieldTypeRequiredDescription
namestringrequiredBill.paid.
atdatetimerequiredWhen it happened.
seqintegerIts position in the namespace, one more than the Event before; any seq is a cursor into the history.
datajsonrequiredThe Thing as the Action left it.
data.transactionTransactionrequiredThe payment Transaction.
data.billBillrequiredThe Bill, now paid.
data.bill.organizationOrganizationrequiredThe Organization the Startup owes.
data.bill.amountmoneyrequiredWhat the Bill asks for, in its currency.
data.bill.dueOndaterequiredThe date payment is due; an approved Bill is paid on it.
data.bill.accountstringThe chart-of-accounts code it is coded to, such as expense.hosting.
data.bill.statusstringrequiredWhere the Bill stands; only an approved Bill is paid.
data.bill.fileFileThe File the Bill arrived as: an email attachment or an upload.
data.previous.statusstringrequiredThe status before this Event: approved.

Example

JSON
{
  "$id": "https://api.sb/routewise.dev/events/event_1",
  "$type": "Event",
  "name": "Bill.paid",
  "at": "2026-10-22T12:00:00Z",
  "data": {
    "transaction": {
      "$id": "https://api.sb/routewise.dev/transactions/transaction_1",
      "$type": "Transaction",
      "kind": "charge",
      "amount": {
        "amount": 25,
        "currency": "USD"
      }
    },
    "bill": {
      "$id": "https://api.sb/routewise.dev/bills/bill_1",
      "$type": "Bill",
      "organization": "organization_1",
      "amount": {
        "amount": 25,
        "currency": "USD"
      },
      "dueOn": "2026-10-22",
      "account": "expense.hosting",
      "status": "paid",
      "file": "file_1"
    },
    "previous": {
      "status": "approved"
    }
  },
  "seq": 1
}