Skip to content

app.self_billing_agreements

TableRow level security on

The engaged party's consent, per engagement, that the org generates its invoices from approved timesheets (Section 4.4.5 self-billing). Generation also needs the org's own setting and belongs to A15; only the party agrees or revokes, and a revoked agreement stays as evidence.

Primary key: id

Columns of app.self_billing_agreements
ColumnTypeNullableDescription
iduuidNoPrimary key, UUID v7.
org_iduuidNoOwning org, derived from app.engagements on insert; never accepted from the caller and never changed.References app.organizations.id
engagement_iduuidNoEngagement the consent covers.References app.engagements.id
agreed_byuuidYesParty person who agreed, set from the session.References app.people.id
agreed_attimestamp with time zoneNoWhen agreed, set by the database.
revoked_byuuidYesParty person who revoked, set from the session.References app.people.id
revoked_attimestamp with time zoneYesWhen revoked; invoices are no longer generated from then on.
deleted_attimestamp with time zoneYesSoft delete time. A row with deleted_at set is ignored by every access helper.
created_attimestamp with time zoneNoWhen the row was inserted. Set by the database.
created_byuuidYesPerson who inserted the row, or null for a platform process. Set by the database.References app.people.id
updated_attimestamp with time zoneNoWhen the row last changed. Set by the database.
updated_byuuidYesPerson who last changed the row, or null for a platform process. Set by the database.References app.people.id