By default if a plan had trial option, then customer is subscribed to trial even if he/she has paid for the plan. I want my customers to use trial only if they want and start their normal plan if they have paid for it.
You can directly override the trial period of a subscription if you're creating a subscription through our API based integration.
You can pass trial_end or subscription[trial_end] input param as 0 so that the subscription will be activated immediately.
(ii) Hosted Pages
If the customers sign up through the hosted pages, you'd need to create 2 separate plans - one with trial and the second without a trial period so that the customers can choose one as per their requirement. We currently do not have the option to override the trial period for hosted page signups.
Hope this helps!