[Plugin] Making dynamic properties, only known after compile time, available to the Sequencer

We are developing a plugin that, among other things, creates channels based on an input model (a file path to that model). At that time, when the file path is selected for the model, channels are created. These channels should be a UPROPERTY with the Interp attribute so that the property is named correctly and visible in the Sequencer. We have used a TArray holding a BlueprintType struct with the UPROPERTY(Interp) macro with some limited success, but having the sequencer pickup proper names for the array elements (our channels) have been unsuccessful. Our current thought is that using reflection to inject direct properties on our Actor class is the best approach. Is this the best approach? Is there a better way? If this is the best approach, is there any good sample/source?