You can pre-fill all the default and custom fields shown on the payment pages, or use Paythen templates to create dynamic plans, by passing values to them through url parameters. The card number field cannot be pre-filled or sent any values via the URL, for security.
Pre-filling field values via url parameters can be useful if:
Your customers will be redirected to your payment page after completing a form somewhere else where they've provided some of this information already. To avoid making your customers fill out the same information again, you can just pass these values via url parameters and they will be pre-filled for your customers when they see the payment page.
You want to track where users are coming from. Marketers commonly use url parameters (like UTM tags) to understand which channels and campaigns lead to paying customers. With invisible custom fields and url parameter support, now you can send this data to the payment page when redirecting a customer there from an ad or other marketing channel and easily track this information.
If you're using our WooCommerce or other ecommerce plugins, along with templates, plans are created via url parameters.
Using url parameters in Paythen is easy. You just add the correct field IDs to the end of your payment page url and pass the values to them, starting with a question mark and separated by an ampersand (&).
While the default "name" and "email" field IDs are the same across all plans, the IDs for custom fields you create depend on the name of the custom field. We show these for at the bottom of the plan summary page after you have created the plan.
URL parameters work for all fields except the card number. This is for security as card numbers should never be stored or passed anywhere as plain text.
Are there any formatting restrictions?
No. You can send almost any data in any format - including spaces, commas, other special characters. Noting that if you send any values which have the plus (+) symbol in them, this will not show up as a plus but will instead get converted to a space. Eg: if you sent mobile=+61 1234 5678, it would show up as just 61 1234 5678 (with a space at the beginning).
To read about custom fields and how to create visible and invisible fields, go here.