---
title: ITransactionSet
summary: API reference for ITransactionSet.
status: draft
owner: SAIF Doc Gen
last_reviewed: 2026-09-15
library: SAIF.Framework.Common.Files
reference_type: package
---

# ITransactionSet

`ITransactionSet` is the contract implemented by `TransactionSet`; it extends `ISegmentGroup` with the ST/SE header/trailer and nested `HierarchialTransactions` surface specific to a transaction set envelope.

## Purpose
- Declares the typed `Header`/`Trailer` (ST/SE) accessors, raw `HeaderSegment`/`TrailerSegment`, member `Segments`, and `HierarchialTransactions` that any transaction-set implementation must provide.

## Context
- Namespace: `SAIF.Common.Files.Edi`
- Assembly/package: `SAIF.Framework.Common.Files`
- Extends: `ISegmentGroup`

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| Header | `StSegment Header { get; }` | The strongly-typed ST (transaction set header) segment for this transaction set. |
| Trailer | `SeSegment Trailer { get; }` | The strongly-typed SE (transaction set trailer) segment for this transaction set. |
| HeaderSegment | `IEdiSegment HeaderSegment { get; }` | The raw ST segment that opens this transaction set. |
| TrailerSegment | `IEdiSegment TrailerSegment { get; }` | The raw SE segment that closes this transaction set. |
| HierarchialTransactions | `IHierarchialTransactionContainer HierarchialTransactions { get; }` | The BHT-rooted hierarchical transactions nested within this transaction set ([BR-035](../../business-rules.md#br-035-hierarchical-levels-nested-inside-hierarchical-transaction)). |
| Segments | `IEnumerable<IEdiSegment> Segments { get; }` | This transaction set's member segments with the ST/SE control segments excluded ([BR-033](../../business-rules.md#br-033-control-segments-excluded-from-member-segments-collections)). |

## Inherited public members

Members in this section are inherited from `ISegmentGroup` in `SAIF.Framework.Common.Files`. They are available on this type through inheritance.

| Member | Signature | Purpose | Origin |
| --- | --- | --- | --- |
| Index | `int Index { get; set; }` | The sequential ordinal assigned to this transaction set among its siblings. | `SAIF.Framework.Common.Files` — `ISegmentGroup` |
| Key | `string Key { get; set; }` | The ST02 transaction set control number value that uniquely identifies this transaction set ([BR-034](../../business-rules.md#br-034-group-keys-derived-from-control-number-elements)). | `SAIF.Framework.Common.Files` — `ISegmentGroup` |
| SegmentGroupId | `string SegmentGroupId { get; set; }` | The segment tag (`"ST"`) that this group was delimited by during parsing. | `SAIF.Framework.Common.Files` — `ISegmentGroup` |
| Level | `int Level { get; set; }` | The nesting depth of this group. | `SAIF.Framework.Common.Files` — `ISegmentGroup` |

## Sources
- Common\SAIF.Common.Files\Edi\ITransactionSet.cs
