cancel
Showing results for 
Search instead for 
Did you mean: 
CoryAuth
Member
Status: Delivered

As mentioned in the following post:

 

http://community.developer.authorize.net/t5/Integration-and-Testing/Masked-Expiration-Date-in-Hosted...

 

The card expiry date is masked when returned in the getCustomerProfileRequest.  As the card number is masked, there is no PCI requirement that the expiry date of the card also be masked.  Without the expiry date, it makes it impossible for us to automate the process of notifying our customer's clients that their card will be soon expiring.  The reason for us going this route is to offer an ARB solution managed completely from within our application.  It is imparative for us to have access to this date.

 

The idea is a simple one.  Return the expiry date in the CIM getCustomerProfileRequest unmasked.

 

Thanks.

52 Comments
martin1b
Contributor

@ctdavis No, it affected us too. All of our payment sites were down due to this change. After a service reference refresh, the problem was resolved.  While I appreciate the change, testing would have revealed the adverse affects of changing the call signature prior to deployment.

brianmc
Administrator Administrator
Administrator

Developers & Merchants,

 

As product manager for APIs & Developer Experience and on behalf of the API team I want to acknowledge that we messed up and we apologize for that. As a team we pride ourselves on delivering the features that our developers need (such as the update to GetCustomerPaymentProfile in this release) and we do that under the principle that we not break existing integrations. Unfortunately we fell short of our own high standards for maintaining integrations this time but please know we will do our best to assure this does not happen again.

Brian

cggamer
Member

Thanks @brianmc for all your help!

 

Do you know if the unmaskExpirationDate attribute will be added to the getCustomerProfileRequest call as well? It seems to be working great for the getCustomerPaymentProfileRequest call and it would be helpful to have it return the unmasked expiration date for the getCustomerProfileRequest call.

 

Thanks for your considering!

pharmacy74
Member

Hello Brian,

 

I have added the maskexpiaration flag to the file. But in respons I still see xxxx. What am I doing wrong?

 

Thx

 

Mike

cggamer
Member

@pharmacy74 the flag name is unmaskExpirationDate and it needs to be set to true and after the other elements in the request. Example (shortented):

 

<getCustomerPaymentProfileRequest>

...

<customerProfileId>10000</customerProfileId>
<customerPaymentProfileId>20000</customerPaymentProfileId>

<unmaskExpirationDate>true</unmaskExpirationDate>

</getCustomerPaymentProfileReques>

kgw39
Member

I'm also not seeing anything other than XXXX being returned when a true is passed to getCustomerPaymentProfileRequest in the sandbox environment.  I haven't tried the live environment.

pharmacy74
Member

I am doing exactly same was as you have instructed before. When I dump structure, I still see expiration XXXX format.

 

<getCustomerPaymentProfileRequest xmlns="AnetApi/xml/v1/schema/AnetApiSchema.xsd">
<merchantAuthentication>
<name>#arguments.mylogin#</name>
<transactionKey>#arguments.myKey#</transactionKey>
</merchantAuthentication>
<refId>#arguments.myrefId#</refId>
<customerProfileId>#arguments.mycustomerProfileId#</customerProfileId>
<customerPaymentProfileId>#arguments.mycustomerPaymentProfileId#</customerPaymentProfileId>
<unmaskExpirationDate>true</unmaskExpirationDate>
</getCustomerPaymentProfileRequest></cfsavecontent></CFOUTPUT>

brianmc
Administrator Administrator
Administrator

Can you try the API Reference live console:

 

http://developer.authorize.net/api/reference/#customer-profiles-get-customer-payment-profile

 

Just add the <unmaskExpirationDate>true</unmaskExpirationDate> element as below

 

<getCustomerPaymentProfileRequest xmlns="AnetApi/xml/v1/schema/AnetApiSchema.xsd">
<merchantAuthentication>
<name></name>
<transactionKey></transactionKey>
</merchantAuthentication>
<customerProfileId>35772885</customerProfileId>
<customerPaymentProfileId>32323857</customerPaymentProfileId>
<unmaskExpirationDate>true</unmaskExpirationDate>
</getCustomerPaymentProfileRequest>

 

Brian

pharmacy74
Member

Hi Brain

 

How can I use API referance live console??

 

I am trying to paste the snapshot image but it is not allowing me...

 

Thanks

 

Mike

 

brianmc
Administrator Administrator
Administrator

 

Hi Mike,

 

As long as you are not on a really old browser like IE9 you should be able to edit the XML in the Try It tab.

 

Brian

 

exp-TryIt.PNG

 

 

 

 

 

 

ExpDate-Ref.PNG