Tools
FIX message lab
Compose a Logon, order, cancel, status or market-data request with the platform's CompIDs and custom tags, copy it with real SOH separators, or paste a message from your log and check its BodyLength and CheckSum.
Runs in your browser - no session is opened, nothing is sent
Session header
K + the id of your Trading API key
As shown in your broker's API access panel
Logon (A)
Heartbeat interval, 5 - 120 s
Your API key with the fix scope
Logon (A) ready13 tags · 9=91 · 10=158
- BodyLength (9)
- 91 bytes - everything after
9=…up to and including the SOH before10= - CheckSum (10)
- 158 - sum of every byte before
10=, modulo 256, three digits
Message (| shown for SOH)
8=FIX.4.4|9=91|35=A|49=K12|56=OCTOLIT|57=TRADE|34=1|52=20261111-09:30:00.000|98=0|108=30|141=Y|554=qk_...|10=158|
| Tag | Name | Value |
|---|---|---|
| 8 | BeginString | FIX.4.4 |
| 9 | BodyLength | 91 |
| 35 | MsgType | A Logon |
| 49 | SenderCompID | K12 |
| 56 | TargetCompID | OCTOLIT |
| 57 | TargetSubID | TRADE |
| 34 | MsgSeqNum | 1 |
| 52 | SendingTime | 20261111-09:30:00.000 |
| 98 | EncryptMethod | 0 None |
| 108 | HeartBtInt | 30 |
| 141 | ResetSeqNumFlag | Y Reset both sides |
| 554 | Password | qk_... |
| 10 | CheckSum | 158 |
#How it works
- Fields are written as
tag=valuefollowed by SOH (byte0x01); the page shows|instead so you can read it. “Copy with SOH” gives the bytes a FIX engine expects. - BodyLength (9) counts every byte after the SOH that ends
9=…up to and including the SOH before10=. - CheckSum (10) is the sum of every byte before
10=modulo 256, printed with three digits. - Header order is
8 9 35 49 56 57 34 52;SenderCompIDisK<key id>,TargetCompIDis the CompID shown in your broker's API access panel (OCTOLIThere is a placeholder),TargetSubIDpicks theQUOTEorTRADEsession. - Custom tags:
9101stop loss,9102take profit,9103leverage,721position id.
Reading logs
Many engines log with | or ^A in place of SOH - paste them as they are. Both are counted as one byte, so a correct message verifies either way. Session rules, message tables, reject reasons and limits: FIX 4.4 reference.