insertRecords with duplicateCheck=2

insertRecords with duplicateCheck=2

So I'm trying to use the insertRecords API call and pass "2" for the duplicateCheck value in order to just be able to send records in the xmlData and have them automatically update. It works fine for a single record, but whenever I try two records, the first record gets updated with the auxiliary data from the second record (name doesn't change, but the mailing address fields do). This may not be what duplicateCheck is designed to do, I can't quite tell from the description ("Set value as  ' 1' to check the duplicate records and throw an error response  or '2' to check the duplicate records, if exists, update the same."). But it's certainly unintuitive. It might be the format I'm sending stuff in, but from where I'm standing it looks like the exact same format as when I send the data and there aren't already records in the database, in which case it works perfectly.