Summon Requesters

This page walks a requester through Summon from first message to certification. For the request types and timings, see Getting Started with Summon.

1. Summon or Summon with a Limit

QuoteType (537) is required, and it decides how your request is handled:

  • Summon, 537=0: responders' quotes show on the order book, and you trade by hitting them on TR.
  • Summon with a limit, 537=1 and a price (44): OpenYield places a limit order at your price on the book 5 seconds after your request.

A request with 537=1 and no price places nothing at 5 seconds, and its responders are not told of updates or cancels. Use 537=0 for a Summon.

2. Sessions

You need RQ to send requests and receive acknowledgements, and TR, because fills arrive on TR (and DC), never on RQ. To see responses, you also need OB or MD, unless you only use a Summon with a limit or Legacy RFQ.

3. Send a Request

Send a QuoteRequest (35=R) on RQ with:

Tag Field Value
131 QuoteReqID Your ID for the request. Reuse it to update or cancel.
146 NoRelatedSym 1. Use one security per request.
55, 48, 22 Symbol, SecurityID, SecurityIDSource The security, in both 48 and 55; ISIN by default (22=4)
54 Side What you want to do: 2 (Sell) for bids back, 1 (Buy) for offers back
38 OrderQty Required, in your connection's quantity unit (bonds by default)
537 QuoteType Required: 0 for a Summon, 1 for a Summon with a limit
44 Price Your limit, with 537=1: it goes on the book at 5 seconds. With 537=0 it places nothing; it is used only in the order-value check.
453, 448, 452 Parties Your Client ID in PartyRole 3. See Party Blocks.

If 537, 54, 22 or 38 is missing, OpenYield replies with a BusinessMessageReject (35=j). For example, a Summon with a limit to sell 100 bonds at 101.255:

8=FIX.4.4 9=178 35=R 34=9 49=BASTION-RQ 52=20250213-18:48:22.941 56=OPENYIELD-RQ 131=REQ-MUN-0002 146=1 55=US023135CF19 48=US023135CF19 22=4 537=1 54=2 38=100 44=101.255 453=1 448=Bastion 452=3 10=008

See Initiate a New Request for Order for the full field table and the acknowledgements.

4. Acknowledgement

OpenYield acknowledges every request with an ExecutionReport on RQ: ExecType New (150=0), OrdStatus Pending New (39=A), a staged OrderID (37, with SD in it), and your price in Price (44), or 0 if you sent none.

5. Responses

Responses are quotes on the live order book, so they show on OB or MD. Hit or lift them with an order on TR, as for any other order.

6. Summon with a Limit

On a Summon with a limit, your limit goes on the book 5 seconds after the request. You receive New (39=0) on RQ, on a new, live OrderID (OD). Fills arrive on TR and DC. See Summon with a Limit is Executed.

7. Update

Resend the request with the same QuoteReqID (131). You can change quantity (38) and price (44) only. Any other change is rejected (OrdRejReason 103=5), and the request is then canceled.

  • Summon: Replaced (150=5, 39=5). Responders receive the request again with the new size.
  • Summon with a limit, within 5 seconds: no acknowledgement; the new values are used at 5 seconds.
  • Summon with a limit, after 5 seconds: your live limit is replaced, and you receive Replaced on the OD OrderID.

See Update an Existing Request for Order.

8. Cancel

Resend the request with the same QuoteReqID (131) and OrderQty 38=0.

  • Summon: Canceled (150=4, 39=4). Responders receive the request again with 38=0.
  • Summon with a limit, within 5 seconds: Canceled on the SD OrderID, and nothing is placed.
  • Summon with a limit, after 5 seconds: one Canceled, on the OD OrderID.

A cancel for an unknown QuoteReqID gets no reply. See Cancel an Existing Request for Order.

9. At 30 Seconds

If your connection is set up for it, OpenYield cancels what's left of your limit 30 seconds after the request. You receive Canceled (150=4, 39=4) with ClOrdID (11) set to your QuoteReqID plus -CANCEL, and OrigClOrdID (41) set to your QuoteReqID. Otherwise the limit stays on the book until you cancel it. See Automated Request Cancel.

10. Rejects

Rejects are ExecutionReports on RQ: ExecType Rejected (150=8), OrdStatus Rejected (39=8), an OrdRejReason (103) and, except for security rejects, a Text (58):

OrdRejReason (103) Meaning
1 Unknown security
2 Market closed or not open
3 Exceeds exposure limit
5 Unknown order, or an update that changes more than quantity and price
6 Duplicate order
8 Price check failed
9 Party inactive
10 Counterparty or contract not set up
11 Order not supported
13 Quantity check failed
99 Other

11. Legacy RFQ

If your system doesn't read the order book, OpenYield can set up your connection to forward the responses to your requests with 537=1 to you as quotes on RQ, 5 seconds after your request. You accept one with a QuoteResponse (35=AJ). The accept becomes a new limit order on the book for the size and price you send. See Legacy RFQ.

12. Certification

Run the Ping for Liquidity Issuer and Request for Quote Issuer scenarios yourself in the Test environment, then book your certification call. See Certification Checklist.