For some reason it's not letting me reply to your comment, so here I am:
Yeah, the key was using the ${StorageFilename} variable in the template. If you don't use that then the devices just try to use running-config or startup-config as the filename, which obviously won't work if you have multiple devices. I can't copy and paste my template here for some reason, it keeps giving me an error. At any rate, the thing that tripped me up was using the ${StorageFilename} in the template, that's the thing that tells NCM to change the name to something custom for each device so that it knows what to do with it.