Focus on the needs of the Application first. Design the Classes and Data Model that the Application needs to the extent of having a working end-to-end Application that use Data Pages that represent the points where your Application will interact with the Systems of Record.
Initially, simulate the Systems of Record to verify the working application. Then, encapsulate the complexities of translating between your Application's data model and that of the System of Record by evolving the Data Pages to implement the persistence/integration. Define distinct *-Int-* classes to model Database Systems of Record or interfaces exchanging SOAP, XML, CSV or other non-JSON messages; define JSON Data Transforms to model JSON messages.
Keep your Case/Application layer insulated from the complexities of the Systems of Record on which your Application depends.