Collapse
Submit a Service Request
Contact Information for Technical Support
My Service Notifications
PTA string sometimes not creating new contact
Answer ID 12390 |
Last Review Date 09/09/2022
How do we fix our PTA strings that are only broken for some users?
Environment:
- Pass-Through Authentication (PTA) only
- Any Customer Portal managed framework version
Issue:
Environment is configured to allow contacts to be created by PTA. Some PTA strings (p_li parameters) will create a contact the first time they log in, and some others don't work.
Resolution:
After base64 encoding your p_li parameter, you must replace the characters + (plus), / (forward slash), and = (equals sign) with _ (underscore), ~ (tilde), and * (asterisk); respectively.
Base64 character | "URL safe" replacement |
---|---|
+ | _ |
/ | ~ |
= | * |
In the PTA Guide for your product version, visit Reference > How You Pass Login Parameters to review an example of
strtr
being used for this purpose in sample PHP code.Cause:
The PTA login controller expects the base64 string to be further encoded in this way. So only strings that happened to encode with certain symbols were having the error. This could seem like it was random.