Definition
The Confirmation messages are used to provide individual trade level confirmations from the sell side to the buy side. In versions of FIX prior to version 4.4, this role was performed by the allocation message. Unlike the allocation message, the confirmation message operates at an allocation account (trade) level rather than block level, allowing for the affirmation or rejection of individual confirmations.
Message structure 4146 distinct fields
Source order, including nested components and groups. Group counts precede the repeated entries. “Required here” is relative to the enclosing component or group, not unconditional in the message. A dash means not marked required; conditional requirements remain in the source notes. This is a reference, not a counterparty-specific validator.
Nested fields load when needed. Open the full static layout (also works without JavaScript).
StandardHeaderComponentRequired
MsgType = AK
StandardHeader definition & usage →
Open this block to load its fields in message context, or follow the definition link.
Unique ID for this message
Mandatory if ConfirmTransType is Replace or Cancel
Only used when this message is used to respond to a confirmation request (to which this ID refers)
New, Cancel or Replace
Denotes whether this message represents a confirmation or a trade status message
Denotes whether or not this message represents copy confirmation (or status message)
Absence of this field indicates message is not a drop copy.
Denotes whether this message represents the legally binding confirmation
Absence of this field indicates message is not a legal confirm.
Used to communicate an "affirmed" Confirmation(35=AK) status message (i.e. when ConfirmType(773) = 1 (Status)) to interested parties that need to or should receive such confirmation status message.
This field must not be used when sending a Confirmation(35=AK) message that needs to be affirmed.
RegulatoryTradeIDGrpRepeating groupCount tag 1907—
RegulatoryTradeIDGrp definition & usage →
Open this block to load its fields in message context, or follow the definition link.
Used to communicate the status of the central clearing workflow.
PartiesRepeating groupCount tag 453—
Required for fixed income
Also to be used in associated with ProcessCode for broker of credit (e.g. for directed brokerage trades)
Also to be used to specify party-specific regulatory details (e.g. full legal name of contracting legal entity, registered address, regulatory status, any registration details)
Open this block to load its fields in message context, or follow the definition link.
OrdAllocGrpRepeating groupCount tag 73—
Indicates number of orders to be combined for allocation. If order(s) were manually delivered set to 1 (one).Required when AllocNoOrdersType = 1
OrdAllocGrp definition & usage →
Open this block to load its fields in message context, or follow the definition link.
ExecAllocGrpRepeating groupCount tag 124—
ExecAllocGrp definition & usage →
Open this block to load its fields in message context, or follow the definition link.
Used to refer to an earlier Allocation Instruction.
Used to refer to an earlier Allocation Instruction via its secondary identifier
Used to refer to an allocation account within an earlier Allocation Instruction.
Must be set if EncodedTradeContinuationText(2371) field is specified and must immediately precede it.
Encoded (non-ASCII characters) representation of the TradeContinuationText(2374) field in the encoded format specified via the MessageEncoding(347) field.
Represents the time this message was generated
TrdRegTimestampsRepeating groupCount tag 768—
Time of last execution being confirmed by this message. Use ExecutionTimestamp(2749) in ExecAllocGrp component when there are multiple trades.
TrdRegTimestamps definition & usage →
Open this block to load its fields in message context, or follow the definition link.
InstrumentComponentRequired
Instrument definition & usage →
Open this block to load its fields in message context, or follow the definition link.
InstrumentExtensionComponent—
InstrumentExtension definition & usage →
Open this block to load its fields in message context, or follow the definition link.
FinancingDetailsComponent—
FinancingDetails definition & usage →
Open this block to load its fields in message context, or follow the definition link.
UndInstrmtGrpRepeating groupCount tag 711—
UndInstrmtGrp definition & usage →
Open this block to load its fields in message context, or follow the definition link.
InstrmtLegGrpRepeating groupCount tag 555—
InstrmtLegGrp definition & usage →
Open this block to load its fields in message context, or follow the definition link.
YieldDataComponent—
If traded on Yield, price must be calculated "to worst" and the <Yield> component block must specify how calculated, redemption date and price (if not par). If traded on Price, the <Yield> component block must specify how calculated - "Worst", and include redemptiondate and price (if not par).
YieldData definition & usage →
Open this block to load its fields in message context, or follow the definition link.
The quantity being confirmed by this message (this is at a trade level, not block or order level)
CpctyConfGrpRepeating groupCount tag 862Required
CpctyConfGrp definition & usage →
Open this block to load its fields in message context, or follow the definition link.
Account number for the trade being confirmed by this message
Gross price for the trade being confirmed
Always expressed in percent-of-par for Fixed Income
Absence of this field indicates that default precision arranged by the broker/institution is to be used
Price type for the AvgPx field
PriceQualifierGrpRepeating groupCount tag 2709—
PriceQualifierGrp definition & usage →
Open this block to load its fields in message context, or follow the definition link.
SpreadOrBenchmarkCurveDataComponent—
SpreadOrBenchmarkCurveData definition & usage →
Open this block to load its fields in message context, or follow the definition link.
Reported price (may be different to AvgPx in the event of a marked-up or marked-down principal trade)
Used to identify whether the trade was a soft dollar trade, step in/out etc. Broker of credit, where relevant, can be specified using the Parties nested block above.
Gross trade amount for the allocated account being confirmed.
Optional "next coupon date" for Fixed Income
Required for Fixed Income products that trade with accrued interest
Required for Fixed Income products that pay lump sum interest at maturity
For repurchase agreements the accrued interest on termination.
For repurchase agreements the start (dirty) cash consideration
For repurchase agreements the end (dirty) cash consideration
Net Money at maturity if Zero Coupon and maturity value is different from par value
SettlInstructionsDataComponent—
Used to communicate settlement instructions for this Confirmation.
SettlInstructionsData definition & usage →
Open this block to load its fields in message context, or follow the definition link.
CommissionDataComponent—
CommissionData definition & usage →
Open this block to load its fields in message context, or follow the definition link.
Used to identify any commission shared with a third party (e.g. directed brokerage)
CommissionDataGrpRepeating groupCount tag 2639—
Use as an alternative to CommissionData if multiple commissions or enhanced attributes are needed.
CommissionDataGrp definition & usage →
Open this block to load its fields in message context, or follow the definition link.
StipulationsRepeating groupCount tag 232—
Stipulations definition & usage →
Open this block to load its fields in message context, or follow the definition link.
MiscFeesGrpRepeating groupCount tag 136—
Required if any miscellaneous fees are reported.
MiscFeesGrp definition & usage →
Open this block to load its fields in message context, or follow the definition link.
MatchExceptionGrpRepeating groupCount tag 2772—
MatchExceptionGrp definition & usage →
Open this block to load its fields in message context, or follow the definition link.
MatchingDataPointGrpRepeating groupCount tag 2781—
MatchingDataPointGrp definition & usage →
Open this block to load its fields in message context, or follow the definition link.
StandardTrailerComponentRequired
StandardTrailer definition & usage →
Open this block to load its fields in message context, or follow the definition link.