- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Retrieve Credit Card Type of Payment Profile using CIM
Hi,
For our own accounting purposes, it is necessary for us to know the type of card that was used for each transaction on our site. However, I cannot find any way to retrieve the credit card type of an associated customer payment profile using CIM.
Is there a way to get this information without having to create a lookup table in our database to store it locally every time a payment profile is created or updated?
Thanks in advance for your help.
08-11-2010 09:48 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The first digit(s) of the number will tell you which kind of card it is.
3 = Amex
4 = Visa
5 = MasterCard
6011 = Discover Card
If you want a more comprehensive list see Wikipedia.
-------------------------------------------------------------------------------------------------------------------------------------------
John Conde :: Certified Authorize.Net Developer (Brainyminds) :: Official Authorize.Net Blogger
NEW! Handling Authorize.Net's Webhooks with PHP
Integrate Every Authorize.Net JSON API with One PHP Class (Sample code included)
Tutorials for integrating Authorize.Net with PHP: AIM, ARB, CIM, Silent Post
All About Authorize.Net's Silent Post
08-11-2010 10:15 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Okay, I did know that. However, I wasn't aware that I could get the entire card number back from CIM unmasked after the profile has been created in order to view the first digits of the card.
How do I accomplish this?
Thanks
08-11-2010 10:34 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I don't know where you heard that but it's not true. You cannot get the unmasked number back from CIM or any other API.
-------------------------------------------------------------------------------------------------------------------------------------------
John Conde :: Certified Authorize.Net Developer (Brainyminds) :: Official Authorize.Net Blogger
NEW! Handling Authorize.Net's Webhooks with PHP
Integrate Every Authorize.Net JSON API with One PHP Class (Sample code included)
Tutorials for integrating Authorize.Net with PHP: AIM, ARB, CIM, Silent Post
All About Authorize.Net's Silent Post
08-11-2010 01:26 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Exactly my point... which is why the suggested solution of using the first digits of the card to determine the type doesn't work.
My question was -- is there a way with the APIs to determine the type of card that belongs to a payment profile WITHOUT having to keep a local lookup table that associates each payment profile to a given credit card type when the profile is created -- that seems rather absurd.
We are able to recognize the card type when a new payment profile is created without an issue. What we need is a way to charge a profile that already exists and associate a card type to our local transaction record. Since we don't keep numbers locally and there is no way to get the unmasked credit card -- the only way to make this work that I know of is to create the aforementioned lookup table.
My question is, is there an easier way to via the APIs to get the credit card type of an existing payment profile. We don't care about the number -- in fact, the whole point of us using Authorize.net is that we don't want to know it after it's been created.
We have two distinct merchant accounts and it matters to us what type of card is used for the transaction so that we can match correctly match the transaction to the merchant account.
Make sense?
08-12-2010 01:14 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I ran into this need/problem recently as well. here's what I've found from poking around.
the cim webservice wsdl ( https://api.authorize.net/soap/v1/Service.asmx?wsdl ) indicates you should be able to get the cardType from the credit card info (CreditCardMaskedType) nested in the response to the GetCustomerPaymentProfile call. unfortunately, this doesn't seem to produce any information.
if you need to get card types for specific transactions, you should be able to get that info from the directResponse/AIM response to a CreateCustomerProfileTransaction, if you want to store it at the time of transaction. Alternatively, you can use the new Transaction Details API ( http://www.authorize.net/support/CP/helpfiles/Account/Settings/Security_Settings/transaction_details... ), once you've enabled it on your account. the response to GetTransactionDetails has a CreditCardMaskedType nested inside it, that is indeed populated with the cardType. So, that would allow for retrieval after-the-fact, if that suits your needs.
for a little more detail:
- for a GetTransactionDetails call, cardtype will be in response.transaction.payment.creditCard.cardType
- for GetCustomerPaymentProfile, it will be in response.paymentProfile.payment.creditCard.cardType
12-30-2010 04:46 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
If I am understanding correctly - you have more than one merchant account for card payments - does that mean you have more than one auth.net account? If not can one auth.net account map to more than on merchant account? I always presumed that you could only use one auth.net account with one merchant account. This is very interesting....
Even beyond that - is it possible to use accounts stored on one CIM (using one set of keys) on a different auth.net payment account (ie. a different set of keys) - I had always presumed CIM profiles needed to be used on the same account they were created....
01-03-2011 07:13 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The card type is returned in the 52nd field of the delimited direct response returned with any createCustomerProfileTransactionResponse.
There isn't a method, that I am aware of, of obtaining the card type of a payment profile without storing it locally on your end or processing a transaction and receiving the response that includes this data.
Thank you,
Elaine
01-06-2011 03:32 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am curious as to why the CardType information shows up for CreateCustomerProfileTransaction, but does not show up in GetCustomerPaymentProfile ?
02-24-2011 12:04 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I'd love to hear an answer for this as well, since the property is there - but is always returned as null.
05-09-2011 10:58 AM