How to do field validation during migration?
You can accomplish this using the ::prepareRow() method on your migration class. You'll have access to the source field values in the $row variable. This method is called once for each record being imported, and returning FALSE will skip the row in question.

Example:

function prepareRow($row) {
  if (!validate_my_field($row-&gt;my_custom_field)) {
    return FALSE;
  }
}


More info https://www.drupal.org/node/1132582

For Drupal 8 you could accomplish the same by either implementing a custom source plugin with a prepareRow() method. Or by implementing hook_migrate_prepare_row() and performing your validation there.