cancel
Showing results for 
Search instead for 
Did you mean: 
InnovAdam
Member

When creating a customer profile and receiving the E000039 error that tells us there is a duplicate customer profile that already exists it would be useful to get that duplicate profile ID in the response other than inside the error text. While technically possible to pull it out of the error message it would be much easier and less prone to issue if we could get it back somewhere directly, such as the CustomerProfileID filed that already exists on the createCustomerProfileResponse object. 

4 Comments
Status changed to: Comments Requested
RichardH
Administrator Administrator
Administrator
 
bhav
Authorize.Net Expert Authorize.Net Expert
Authorize.Net Expert

@InnovAdam @RichardH  we do provide duplicate customerID in the error message

I just tried one in Sanbox env and following is error message i get  the following message 

 

E00039 : A duplicate record with ID 1813856003 already exists.

mkienenb
Contributor

This is the second comment I've read from you where you failed to read the actual request.

The request ***is*** to be able to get the duplicate customerID without parsing the error message.

 

This is possible for payment profiles.[1]   This is not possible for customer profiles.[2]

 

[1] java api for payment profiles:

                     duplicateId = response.getCustomerPaymentProfileId()

 

[2] java api for customer profiles:

 

                     /* Hope that Authorize.net doesn't change the error message text */

                     if ("E00039".equals(message.getCode())) {
                         String text = message.getText();
                          int startPos = -1;
                          if (text.startsWith("A duplicate record with ID ")) {
                              startPos = "A duplicate record with ID ".length();
                          }
                         int endPos = text.lastIndexOf(" already exists.");
                         if ((startPos != -1) && (endPos != -1)) {
                             duplicateId = text.substring(startPos, endPos);
                         }
                     }

 

binhngquang8
Member

Same thing happened to me man.