Modeling Cash-Case differences - should WebAPI DTO's be flat?
My vote is for not-flat, for several reasons:


The names of the members are less redundant, both in code and over the web
Code is more easily testable. If ever there is a method that deals only with the "difference" fields, there's less surface area to deal with than if you had to manipulate an entire CashCase.
Cardinality. If ever there comes a time that you need to remodel the application to support more than one "difference", having a CashCaseDifference class makes that effort trivial.