Magidoc

FinanceBillableAgreement
Object

Fields

#

proposalId

ID !
Non-null

title

Non-null

accountId

revision

Non-null

The revision of this proposal the client currently has agreed.

acceptedAt

currency

Non-null

The currency the agreed revision is denominated in.

agreedTotal

Non-null

The agreed revision's own total, as the client accepted it.

ruledLineCount

Non-null

Agreed lines a billing rule prices — the ones a generated draft would ask for. A rule stated for the proposal as a whole prices every line, so this is the line count when one is set.

retainerLineCount

Non-null

Distinct retainer billing subjects. An explicit line rule counts once for its line; one proposal-level default counts once across every accepted line it governs.

retainerLines

Non-null

The distinct retainer billing subjects materialization will create.

unruledLineCount

Non-null

Agreed lines no rule prices. These are exactly the rows a generated draft reports back as unbilled, so the picker says up front what the first invoice would otherwise say later.

blockedReason

Why a setup naming this agreement could not bill it, verbatim in the generator's own words. Null when nothing stands in the way.

The offer and the refusal are read from one place on purpose: a picker cannot be correct ahead of the generator, or behind it. Conditions knowable at authoring time are stated here; delivery attribution is not, because it is a fact about a period rather than about the agreement, and no answer given here would still be true when the schedule runs.

retainerBlockedReason

Why accepted retainer terms cannot be materialized as retainer agreements. Separate from blockedReason because a retainer-only proposal is invalid for a generic schedule but is the intended source for the Retainers journey.

Usages

#

References

#

  • Field getFinanceBillableAgreements from Query