We occasionally allow our customers to purchase our product and delay the payment until a pre-determined date. In order to do this, we need to collect the payment information at the time the order is placed. We are using the iframe method of collecting payment information.
I imagine I can use ARB to set up a one-time payment that will be billed at a specific date. However, that only works if I have the payment information stored away in a profile to begin with.
How can I collect the user's payment information without an initial charge, so that I can set up a payment at a later date?
As mentioned by John Conde, there is a hosted form that will allow you to collect payment information. It supports iFrame. You can create a customer profile first and then initiate this form. There are options to verify the card information or defer it to later, depending on your requirements.
You can find documentation in the link below. Search for "GetHostedProfilePage"
https://www.authorize.net/content/dam/anet-redesign/documents/CIM_SOAP_guide.pdf