Use this data dictionary with QuickFIX, QuickFIX/J, QuickFIX/n, and compatible FIX engines. It defines only the messages, fields, and values supported by the Paxos FIX interface, enabling strict message validation. Save the XML below asDocumentation Index
Fetch the complete documentation index at: https://docs.paxos.com/llms.txt
Use this file to discover all available pages before exploring further.
FIX42-paxos.xml and reference it in your FIX engine configuration.
FIX42-paxos.xml
<!--
Paxos FIX 4.2 Data Dictionary
For use with QuickFIX, QuickFIX/J, QuickFIX/n, and compatible FIX engines.
This dictionary defines ONLY the messages, fields, and values supported by the
Paxos FIX trading interface. Unsupported standard FIX 4.2 values have been
removed to enable strict validation.
Reference: https://docs.paxos.com/guides/crypto-brokerage/fix/reference
-->
<fix major="4" minor="2">
<header>
<field name="BeginString" required="Y"/>
<field name="BodyLength" required="Y"/>
<field name="MsgType" required="Y"/>
<field name="SenderCompID" required="Y"/>
<field name="TargetCompID" required="Y"/>
<field name="MsgSeqNum" required="Y"/>
<field name="PossDupFlag" required="N"/>
<field name="PossResend" required="N"/>
<field name="SendingTime" required="Y"/>
<field name="OrigSendingTime" required="N"/>
</header>
<trailer>
<field name="CheckSum" required="Y"/>
</trailer>
<messages>
<!-- Session (Admin) Messages -->
<message name="Heartbeat" msgtype="0" msgcat="admin">
<field name="TestReqID" required="N"/>
</message>
<message name="Logon" msgtype="A" msgcat="admin">
<field name="EncryptMethod" required="Y"/>
<field name="HeartBtInt" required="Y"/>
<field name="ResetSeqNumFlag" required="N"/>
</message>
<message name="TestRequest" msgtype="1" msgcat="admin">
<field name="TestReqID" required="Y"/>
</message>
<message name="ResendRequest" msgtype="2" msgcat="admin">
<field name="BeginSeqNo" required="Y"/>
<field name="EndSeqNo" required="Y"/>
</message>
<message name="Reject" msgtype="3" msgcat="admin">
<field name="RefSeqNum" required="Y"/>
<field name="RefTagID" required="N"/>
<field name="RefMsgType" required="N"/>
<field name="SessionRejectReason" required="N"/>
<field name="Text" required="N"/>
</message>
<message name="SequenceReset" msgtype="4" msgcat="admin">
<field name="GapFillFlag" required="N"/>
<field name="NewSeqNo" required="Y"/>
</message>
<message name="Logout" msgtype="5" msgcat="admin">
<field name="Text" required="N"/>
</message>
<!-- Application Messages -->
<message name="NewOrderSingle" msgtype="D" msgcat="app">
<field name="ClOrdID" required="Y"/>
<field name="ClientID" required="Y"/>
<field name="Account" required="Y"/>
<field name="HandlInst" required="Y"/>
<field name="Symbol" required="Y"/>
<field name="SecurityType" required="Y"/>
<field name="Side" required="Y"/>
<field name="TransactTime" required="Y"/>
<field name="OrderQty" required="N"/>
<field name="CashOrderQty" required="N"/>
<field name="OrdType" required="Y"/>
<field name="ExecInst" required="N"/>
<field name="Price" required="N"/>
<field name="StopPx" required="N"/>
<field name="TimeInForce" required="N"/>
<field name="ExpireTime" required="N"/>
<field name="AllocBrokerAccountID" required="N"/>
<field name="SenderSubID" required="N"/>
<field name="FundCommissionOption" required="N"/>
<field name="SelfMatchPreventionID" required="N"/>
<field name="OrderRoutingMode" required="N"/>
</message>
<message name="ExecutionReport" msgtype="8" msgcat="app">
<field name="Side" required="Y"/>
<field name="ExecType" required="Y"/>
<field name="ExecRestatementReason" required="N"/>
<field name="LastShares" required="Y"/>
<field name="ClientID" required="Y"/>
<field name="Account" required="Y"/>
<field name="LastPx" required="Y"/>
<field name="OrdRejReason" required="N"/>
<field name="LeavesQty" required="Y"/>
<field name="Commission" required="N"/>
<field name="TransactTime" required="Y"/>
<field name="Text" required="N"/>
<field name="ExecTransType" required="Y"/>
<field name="Symbol" required="Y"/>
<field name="ExecID" required="Y"/>
<field name="CumQty" required="Y"/>
<field name="CommType" required="N"/>
<field name="ClOrdID" required="Y"/>
<field name="Price" required="N"/>
<field name="StopPx" required="N"/>
<field name="AvgPx" required="Y"/>
<field name="OrigClOrdID" required="N"/>
<field name="OrdType" required="N"/>
<field name="ExecInst" required="N"/>
<field name="OrdStatus" required="Y"/>
<field name="OrderQty" required="N"/>
<field name="CashOrderQty" required="N"/>
<field name="OrderID" required="Y"/>
<field name="LiquidityInd" required="N"/>
<field name="AllocBrokerAccountID" required="N"/>
<field name="SenderSubID" required="N"/>
<field name="FundCommissionOption" required="N"/>
<field name="GrossTradeAmt" required="N"/>
<field name="TimeInForce" required="N"/>
<field name="ExpireTime" required="N"/>
<field name="RecipientProfileId" required="N"/>
<field name="SelfMatchPreventionID" required="N"/>
</message>
<message name="OrderCancelRequest" msgtype="F" msgcat="app">
<field name="OrigClOrdID" required="Y"/>
<field name="ClOrdID" required="Y"/>
<field name="Account" required="Y"/>
<field name="ClientID" required="Y"/>
<field name="Symbol" required="Y"/>
<field name="SecurityType" required="Y"/>
<field name="Side" required="Y"/>
<field name="TransactTime" required="Y"/>
<field name="OrderQty" required="N"/>
<field name="CashOrderQty" required="N"/>
</message>
<message name="OrderCancelReject" msgtype="9" msgcat="app">
<field name="CxlRejResponseTo" required="Y"/>
<field name="ClOrdID" required="Y"/>
<field name="OrdStatus" required="Y"/>
<field name="OrigClOrdID" required="Y"/>
<field name="OrderID" required="Y"/>
<field name="Account" required="Y"/>
<field name="CxlRejReason" required="Y"/>
</message>
<message name="OrderStatusRequest" msgtype="H" msgcat="app">
<field name="ClOrdID" required="Y"/>
<field name="ClientID" required="Y"/>
<field name="Account" required="Y"/>
<field name="Symbol" required="Y"/>
<field name="Side" required="Y"/>
</message>
</messages>
<fields>
<field number="1" name="Account" type="STRING"/>
<field number="6" name="AvgPx" type="PRICE"/>
<field number="7" name="BeginSeqNo" type="INT"/>
<field number="8" name="BeginString" type="STRING"/>
<field number="9" name="BodyLength" type="INT"/>
<field number="10" name="CheckSum" type="STRING"/>
<field number="11" name="ClOrdID" type="STRING"/>
<field number="12" name="Commission" type="AMT"/>
<field number="13" name="CommType" type="CHAR">
<value enum="3" description="ABSOLUTE"/>
</field>
<field number="14" name="CumQty" type="QTY"/>
<field number="16" name="EndSeqNo" type="INT"/>
<field number="17" name="ExecID" type="STRING"/>
<field number="18" name="ExecInst" type="MULTIPLEVALUESTRING">
<value enum="6" description="PARTICIPATE_DO_NOT_INITIATE"/>
</field>
<field number="20" name="ExecTransType" type="CHAR">
<value enum="0" description="NEW"/>
<value enum="3" description="STATUS"/>
</field>
<field number="21" name="HandlInst" type="CHAR">
<value enum="1" description="AUTOMATED_EXECUTION_NO_INTERVENTION"/>
</field>
<field number="31" name="LastPx" type="PRICE"/>
<field number="32" name="LastShares" type="QTY"/>
<field number="34" name="MsgSeqNum" type="INT"/>
<field number="35" name="MsgType" type="STRING">
<value enum="0" description="HEARTBEAT"/>
<value enum="1" description="TEST_REQUEST"/>
<value enum="2" description="RESEND_REQUEST"/>
<value enum="3" description="REJECT"/>
<value enum="4" description="SEQUENCE_RESET"/>
<value enum="5" description="LOGOUT"/>
<value enum="8" description="EXECUTION_REPORT"/>
<value enum="9" description="ORDER_CANCEL_REJECT"/>
<value enum="A" description="LOGON"/>
<value enum="D" description="NEW_ORDER_SINGLE"/>
<value enum="F" description="ORDER_CANCEL_REQUEST"/>
<value enum="H" description="ORDER_STATUS_REQUEST"/>
</field>
<field number="36" name="NewSeqNo" type="INT"/>
<field number="37" name="OrderID" type="STRING"/>
<field number="38" name="OrderQty" type="QTY"/>
<field number="39" name="OrdStatus" type="CHAR">
<value enum="0" description="NEW"/>
<value enum="1" description="PARTIALLY_FILLED"/>
<value enum="2" description="FILLED"/>
<value enum="4" description="CANCELED"/>
<value enum="6" description="PENDING_CANCEL"/>
<value enum="8" description="REJECTED"/>
<value enum="A" description="PENDING_NEW"/>
<value enum="C" description="EXPIRED"/>
</field>
<field number="40" name="OrdType" type="CHAR">
<value enum="1" description="MARKET"/>
<value enum="2" description="LIMIT"/>
<value enum="3" description="STOP"/>
<value enum="4" description="STOP_LIMIT"/>
</field>
<field number="41" name="OrigClOrdID" type="STRING"/>
<field number="43" name="PossDupFlag" type="BOOLEAN"/>
<field number="44" name="Price" type="PRICE"/>
<field number="45" name="RefSeqNum" type="INT"/>
<field number="49" name="SenderCompID" type="STRING"/>
<field number="50" name="SenderSubID" type="STRING"/>
<field number="52" name="SendingTime" type="UTCTIMESTAMP"/>
<field number="54" name="Side" type="CHAR">
<value enum="1" description="BUY"/>
<value enum="2" description="SELL"/>
</field>
<field number="55" name="Symbol" type="STRING"/>
<field number="56" name="TargetCompID" type="STRING"/>
<field number="58" name="Text" type="STRING"/>
<field number="59" name="TimeInForce" type="CHAR">
<value enum="1" description="GOOD_TILL_CANCEL"/>
<value enum="3" description="IMMEDIATE_OR_CANCEL"/>
<value enum="4" description="FILL_OR_KILL"/>
<value enum="6" description="GOOD_TILL_DATE"/>
</field>
<field number="60" name="TransactTime" type="UTCTIMESTAMP"/>
<field number="97" name="PossResend" type="BOOLEAN"/>
<field number="98" name="EncryptMethod" type="INT">
<value enum="0" description="NONE"/>
</field>
<field number="99" name="StopPx" type="PRICE"/>
<field number="102" name="CxlRejReason" type="INT">
<value enum="0" description="TOO_LATE_TO_CANCEL"/>
<value enum="1" description="UNKNOWN_ORDER"/>
<value enum="2" description="BROKER_OPTION"/>
<value enum="3" description="ALREADY_PENDING"/>
<value enum="99" description="OTHER"/>
</field>
<field number="103" name="OrdRejReason" type="INT">
<value enum="0" description="BROKER_OPTION"/>
<value enum="1" description="UNKNOWN_SYMBOL"/>
<value enum="2" description="EXCHANGE_CLOSED"/>
<value enum="3" description="ORDER_EXCEEDS_LIMIT"/>
<value enum="5" description="UNKNOWN_ORDER"/>
<value enum="6" description="DUPLICATE_ORDER"/>
<value enum="8" description="STALE_ORDER"/>
</field>
<field number="108" name="HeartBtInt" type="INT"/>
<field number="109" name="ClientID" type="STRING"/>
<field number="112" name="TestReqID" type="STRING"/>
<field number="122" name="OrigSendingTime" type="UTCTIMESTAMP"/>
<field number="123" name="GapFillFlag" type="BOOLEAN"/>
<field number="126" name="ExpireTime" type="UTCTIMESTAMP"/>
<field number="141" name="ResetSeqNumFlag" type="BOOLEAN"/>
<field number="150" name="ExecType" type="CHAR">
<value enum="0" description="NEW"/>
<value enum="1" description="PARTIAL_FILL"/>
<value enum="2" description="FILL"/>
<value enum="3" description="DONE_FOR_DAY"/>
<value enum="4" description="CANCELED"/>
<value enum="6" description="PENDING_CANCEL"/>
<value enum="8" description="REJECTED"/>
<value enum="A" description="PENDING_NEW"/>
<value enum="C" description="EXPIRED"/>
<value enum="D" description="RESTATED"/>
</field>
<field number="151" name="LeavesQty" type="QTY"/>
<field number="152" name="CashOrderQty" type="QTY"/>
<field number="167" name="SecurityType" type="STRING">
<value enum="FOR" description="FOREIGN_EXCHANGE_CONTRACT"/>
</field>
<field number="371" name="RefTagID" type="INT"/>
<field number="372" name="RefMsgType" type="STRING"/>
<field number="373" name="SessionRejectReason" type="INT">
<value enum="0" description="INVALID_TAG_NUMBER"/>
<value enum="1" description="REQUIRED_TAG_MISSING"/>
<value enum="2" description="TAG_NOT_DEFINED_FOR_THIS_MESSAGE_TYPE"/>
<value enum="3" description="UNDEFINED_TAG"/>
<value enum="4" description="TAG_SPECIFIED_WITHOUT_A_VALUE"/>
<value enum="5" description="VALUE_IS_INCORRECT"/>
<value enum="6" description="INCORRECT_DATA_FORMAT_FOR_VALUE"/>
<value enum="7" description="DECRYPTION_PROBLEM"/>
<value enum="8" description="SIGNATURE_PROBLEM"/>
<value enum="9" description="COMP_ID_PROBLEM"/>
<value enum="10" description="SENDING_TIME_ACCURACY_PROBLEM"/>
<value enum="11" description="INVALID_MSG_TYPE"/>
</field>
<field number="378" name="ExecRestatementReason" type="INT">
<value enum="4" description="BROKER_OPTION"/>
</field>
<field number="381" name="GrossTradeAmt" type="AMT"/>
<field number="434" name="CxlRejResponseTo" type="CHAR">
<value enum="1" description="ORDER_CANCEL_REQUEST"/>
</field>
<!-- Paxos Custom Fields -->
<field number="2362" name="SelfMatchPreventionID" type="STRING"/>
<field number="5000" name="RecipientProfileId" type="STRING"/>
<field number="5047" name="AllocBrokerAccountID" type="STRING"/>
<field number="5074" name="FundCommissionOption" type="STRING"/>
<field number="5851" name="LiquidityInd" type="CHAR">
<value enum="1" description="ADD"/>
<value enum="2" description="REMOVE"/>
</field>
<field number="8000" name="OrderRoutingMode" type="INT">
<value enum="1" description="NO_ROUTING"/>
<value enum="2" description="BEST_EXECUTION_ROUTING"/>
</field>
</fields>
</fix>