Errors which happen as data is loaded into a physical table often result in unhelpful error messages in SSIS.
As a first step, I would try to determine one or more data rows which are causing the error.
Once you have that, compare them with rows which load successfully and look for any patterns, bearing in mind any constraints on the target table (NOT NULL columns, unique indexes, CHECK constraints etc.) which may be causing the failures.
Also, take a closer look at the error messages (if you're in SSDT) or at the All Executions report (if running from SSISDB), just in case there is any more detail hidden there.