According to the documentation the only way to verify a customer's payment info before starting an ARB is by using one of the real-time transaction processing methods like AIM.
Say I want create a monthly recurring ARB for a customer starting the same day I created it. I could first verify the customer's payment information by submitting an "authorization only" transaction. If that is successful I could start my ARB. However, I would be leaving my authorization transaction open for 30 days until it expires. Does that authorization show up on the customer's cc statement the whole time it’s open?
Alternatively, I could try submitting a one time "Authorization and Capture" transaction and if that is successful start my ARB one billing cycle from the originally desired start date, since I already charged the customer with the "Authorization and Capture" transaction. The big problem with this workflow is that there is now a disconnect between that original one time payment and the monthly subscription associated with that customer. Leaving it to me to try to connect all the pieces on my side. Creating more development and reporting overhead.
I'm I missing something?