Reply
Member
Posts: 5
Registered: ‎04-25-2012

Newbie CIM Help

Good evening,

 

I am new to the CIM module and i'm having a lot of trouble with it.I'd appreciate it if you guys could help out...

 

I'm integrating CIM into a PHP based program. I have read through the sample code, and it isn't comprehensive enough for me to understand how to use the entire module.The manual/Documentation helps only partially.

 

First of all: Is there an official Authorize.net CIM PHP class?

Expert
Posts: 4,525
Registered: ‎03-08-2010

Re: Newbie CIM Help

There the SDKs and Sample code for PHP under Downloads, and the documentation. But it look like you found it all already. If you have specific question ask the forum and other PHP developer probably will be able to help. There might be open source module, tutorial out there if you google for "php cim authorize.net".

Member
Posts: 5
Registered: ‎04-25-2012

Re: Newbie CIM Help

I hadn't been using the SDK; didn't think I needed to do so. I had been piecing my application together using the sample-code and some snippets I found via Google.

Now that I'm using the SDK, I understand it a lot more, but i'm stil having issues.

 

Why doesn't Authorize.net have a parameter for me to include the card TYPE? I don't see it listed in the documentation and I'd like to be able to distinguish between Visa, Mastercard, etc.

 

Secondly, am I supposed to be storing my user's customer ID and payment IDs locally? I am aware that the customer ID must be stored, but what about the payment IDs?

 

And lastly, why does Authorize.net mask the entire expiration date in it's response? How do I set it to reveal only the expiring year? Or not mask it at all...

 

Darius

Expert
Posts: 4,525
Registered: ‎03-08-2010

Re: Newbie CIM Help

Why doesn't Authorize.net have a parameter for me to include the card TYPE? I don't see it listed in the documentation and I'd like to be able to distinguish between Visa, Mastercard, etc.

You mean from the customer input? the card# will distinguish between card type. It does return the card type on the validationDirectResponse on both output of CreateCustomerPaymentProfile and CreateCustomerProfileTransaction.

 

Secondly, am I supposed to be storing my user's customer ID and payment IDs locally? I am aware that the customer ID must be stored, but what about the payment IDs?

Nothing is required. But it will make sense to at least save the customerID. And you might want to save the payment id used on each transaction.

 

And lastly, why does Authorize.net mask the entire expiration date in it's response? How do I set it to reveal only the expiring year? Or not mask it at all...

It been brought up before. There is work around if you search on the forum on mask expiration date.

Member
Posts: 5
Registered: ‎04-25-2012

Re: Newbie CIM Help

I see. Okay, that actually helped a LOT over the past few days of developing this application.

One more question, though. How do I get the customer information (stored in their customer profile), to display on the Merchant receipt?

 

When a transaction is processed, it sends an e-mail out that looks like this:

 

==== CUSTOMER BILLING INFORMATION ===
Customer ID :
First Name :
Last Name :
Company :
Address :
City :

 

How do I fill in those fields?

 

Darius

Expert
Posts: 4,525
Registered: ‎03-08-2010

Re: Newbie CIM Help

I'm not sure since I don't use that. But I would expect it from the billing info of the payment profile.

Member
Posts: 5
Registered: ‎04-25-2012

Re: Newbie CIM Help

I see. Now, I recall attempting to do that, but it would not allow me to store that information.

 

So would it be:

 

        $customerProfile = new AuthorizeNetCustomer;
        $customerProfile->merchantCustomerId = 123;
        $customerProfile->email = "someguy@authorize.net";

        $customerProfile->billTo->firstName = "Some";

        $customerProfile->billTo->lastName = "Guy";

 

Or this:

 

        $address = new AuthorizeNetAddress;
        $address->firstName = "Some";
        $address->lastName = "Guy";
        $address->zip = "12345";
        $address->country = "USA";
        $address->phoneNumber = "888-888-8888";
        $customerProfile->shipToList[] = $address;   

Expert
Posts: 4,525
Registered: ‎03-08-2010

Re: Newbie CIM Help

Don't know much about php. But the billing info is in the payment profile, and not the customer profile.

Member
Posts: 5
Registered: ‎04-25-2012

Re: Newbie CIM Help

I see. Anyone with PHP experience know the proper way to do this?

Expert
Posts: 4,525
Registered: ‎03-08-2010

Re: Newbie CIM Help

createCustomerPaymentProfile should be simlar to updateCustomerPaymentProfile

 

http://community.developer.authorize.net/t5/Integration-and-Testing/CIM-updateCustomerPaymentProfile...