When you create a customer profile, you can't set a customer ip:
https://developer.authorize.net/api/reference/#customer-profiles-create-customer-profile
This is a problem as when you send through validationMode of liveMode, this will attempt to create a transaction. That transaction will not be validated against the list of IP addresses. This means that the fraud checks cannot be applied.
This means essentially to create a customer profile and check the IP address, there are a number of unpalatable options:
1. Validate the card with an authorise call (pass the IP address), cancel the authorize, then create the profile.
2. Create the profile with validationMode set to test, then see if the first transaction fails due to an invalid card or fails the IP address check. NOTE: This would require storing the IP address against the customer for the subsequent call.
3. Create the customer profile with validation mode set to test, then make an authorise call (pass the IP), cancel the authorisation. If the authorise call fails, delete the profile.
To create a verified customer profile, checking the client IP looks like it requires 3 API calls.
Is there another option available that can streamline this?
11-09-2017 08:54 PM
Hi @davidcameron,
Unfortunately, there's no current way to do what you describe, but I can definitely see the usefulness in such a scenario.
I'd encourage you to post this onto our Ideas Forum where others can take a look, contribute feedback, and vote for new features.
11-13-2017 05:12 PM