I was able to successfully import the campaign on a contribution by importing the campaign's CiviCRM ID.

I agree that it seems odd that campaigns have an "External ID" field, but it can't be used for imports, though!

You can find your campaign IDs by going to **Campaigns menu » Dashboard » Campaigns**, they'll be in the first column of the list.  See screenshot.

[![enter image description here][1]][1]


  [1]: https://i.sstatic.net/vsfzq.png