---
title: IBillSaveService
summary: API reference for IBillSaveService.
status: draft
owner: SAIF Doc Gen
last_reviewed: 2026-09-24
library: SAIF.SAIFCode.Core
reference_type: package
---

# IBillSaveService

`IBillSaveService` declares a service contract in the Legal / Bills area, implemented outside this library (most likely in SAIF.Services, per the declare-here, enforce-elsewhere pattern documented for this library)*.

## Purpose
- Declares the operations that a SAIF.Services implementation must provide for the Legal / Bills area*.

## Context
- Namespace: `SAIF.Core.Contracts.Legal.Bills`
- Kind: Interface
- Assembly/package: `SAIF.Core` (NuGet package `SAIF.SAIFCode.Core`)

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| `AdjustBill` | `long AdjustBill(LegalBill bill, IMessageContainer messageContainer, string newStatus)` | Handles adjust bill, given `bill`, `messageContainer`, `newStatus`*. |
| `ApproveWithChanges` | `long ApproveWithChanges(LegalBill bill, IMessageContainer messageContainer)` | Approves with changes, given `bill`, `messageContainer`*. |
| `DisapproveBill` | `long DisapproveBill(LegalBill bill, IMessageContainer messageContainer)` | Handles disapprove bill, given `bill`, `messageContainer`*. |
| `SubmitBill` | `long SubmitBill(LegalBill bill, IMessageContainer messageContainer)` | Submits bill, given `bill`, `messageContainer`*. |

> **Note:** Statements marked with `*` were inferred from code structure, naming
> conventions, or contextual evidence where direct confirmation was not available
> in source artifacts. Statements marked with `**` could not be confirmed; treat
> as unknown until verified.

## Sources
- Core/SAIF.Core/Contracts/Legal/Bills/IBillSaveService.cs
