CoW Protocol is able to work with signed messages because it bases its mechanism in batch auctions. After the users have submitted their signed order, the solvers check the order submission and include them in the batch auction that the trade fits best. Once a trade order, aka signed message, has been included in a batch, the solvers send the transaction to the settlement contract, which checks with the allowance manager if such signed order has been given the approval to be spent. The combination of these two smart contracts allow CoW Protocol to work with off-chain order submission, as ultimately, the user has the guarantee that the settlement contract will not be able to spend any funds that have not previously been approved in the allowance manager contract. To sum up, the CoW Protocol smart contracts guarantee the users that: