I don't understand the order book you've set up there: available size at 1.12 is 15 so your FOK (Fill Or Kill) order as defined to fill all, at size 10, will be filled not cancelled. It would be the same for the IOC (Immediate or Cancel) at 1.12 and all 10 will be filled.
If you're FOK or IOC order was for size 20 then the FOK would be cancelled and the IOC filled at 15 and the remaining 5 cancelled.
What you're really asking is how an exchange aggregates separate customer orders together and sets out which orders will be filled with which. First of all what does it matter with whom your order is filled? You're not offering credit, right? It's the exchange who handles the credit checks. Secondly, the exchange is likely to use a FIFO execution so that your 10 mio order will be filled with customer 1 at size 5 and then customer 2 at another 5 of their size 10. Then customer 2 still has an order at size 5 on the order book waiting for someone else to fill, or be cancelled.
It's up to the exchange to confirm and settle payments for the orders. On value date you will send them payment of your size 10 just like the 2 customers you executed with send payment for their size 5's. The exchange back office typically uses DvP (delivery versus payment) to match deliveries of funds then makes the payments out. So they handle credit or late delivery issues, not you...
MinQty
) and theTimeInForce
field determines what happens to the rest. $\endgroup$