[ic] BoA/Cybersource HELP!!!

Mark Weaver mdw1982 at mdw1982.com
Wed Jun 8 18:06:46 EDT 2005

jeff at hisgirlfridays.com wrote:
> On Tue, Jun 07, 2005 at 09:38:47PM -0400, Mark Weaver wrote:
>>Any suggestions? Things are going from bad to worse...
> Yes.  
> - Get set up with cybersource, so you can log into their admin interface
> - Get ICS.pm from Kevin's interchange site (interchange.rtfm.info or
> something similar). 
> - Put ICS.pm in your interchange/lib/Vend/Payment directory and set the
> permissions as appropriate
> - Open a Cybersource support issue msg and ask them for the "older perl
> CDK version 3.4.12, your existing interface doesn't work as well with
> the new Simple API".  They will send you a link to a tar.gz without any
> question. 
> - Download and install the aforementioned Cybersource CDK, you should 
> end up with a directory like ICS-3.4.12 .  Do all the tests and make 
> sure everything is working OK.
> - From the Cybersource directory run "./ecert <merchantid>" where
> merchantid is (for me, at least) something like v289371983.  This will 
> make a poorly-secured key system in /opt/CyberSource/SDK/keys .  If this 
> directory doesn't exist after you complete this step, retry from here, 
> because the whole Cybersource API fails rather ungracefully and 
> uninformatively if the keys aren't present.
> - Make sure the payment module ICS.pm is "required" in your 
> interchange.cfg file.
> - Add the following line to your catalog.cfg:
> Variable        MV_PAYMENT_MODE ICS
> - Add the following lines down in your Route section of your catalog.cfg 
> (I added it after itransact)
> Route   ICS     server_host     ics2.ic3.com
> Route   ICS     server_port     80
> Route   ICS     path            /opt/CyberSource/SDK
> Route   ICS     merchant_id     v38417948
> Route   ICS     apps            ics_auth,ics_auth_reversal,ics_bill,ics_credit
> Route   ICS     timeout         20
> Route   ICS     merchant_descriptor     "SUBCULTURAL"
> Route   ICS     merchant_descriptor_contact     "561-433-9633"
> Route   ICS     transaction     sale
> - Obviously some of the fields above will need to be replaced with your 
> mechant information.
> If you have any problems with any step, let me know in this forum and we
> will go from there.  This was a total PITA for me to implement, until I
> realized that the API that ICS.pm uses is no longer publically available
> from Cybersource, and since I just did the BOA->CS conversion it's fresh
> on my mind and I wanted to contribute the information.

Hi Jeff,

Well... here are the problems so far...

when I do the perl mailfile.PL:
Warning: -L. changed to -L/home/interch/ICS-3.4.12/.
Note (probably harmless): No library found for -lics2
Note (probably harmless): No library found for -lposix4
Writing Makefile for ICS

when I do the make:
gcc -c  -I. -fno-strict-aliasing -pipe -I/usr/local/include 
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -O2 
-DVERSION=\"3.4.12\" -DXS_VERSION=\"3.4.12\" -fpic 
"-I/usr/local/lib/perl5/5.8.6/i686-linux/CORE"   ICS.c
Running Mkbootstrap for ICS ()
chmod 644 ICS.bs
rm -f blib/arch/auto/ICS/ICS.so
LD_RUN_PATH="" gcc  -shared -L/usr/local/lib ICS.o  -o 
chmod 755 blib/arch/auto/ICS/ICS.so
cp ICS.bs blib/arch/auto/ICS/ICS.bs
chmod 644 blib/arch/auto/ICS/ICS.bs
Manifying blib/man3/ICS.3

when I do the make test:
PERL_DL_NONLAZY=1 /usr/local/bin/perl "-MExtUtils::Command::MM" "-e" 
"test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/1....Can't load '/home/interch/ICS-3.4.12/blib/arch/auto/ICS/ICS.so' 
for module ICS: /home/interch/ICS-3.4.12/blib/arch/auto/ICS/ICS.so: 
undefined symbol: ics_fgetbyname at 
/usr/local/lib/perl5/5.8.6/i686-linux/DynaLoader.pm line 230.
  at t/1.t line 10
Compilation failed in require at t/1.t line 10.
BEGIN failed--compilation aborted at t/1.t line 10.
         Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 1-20
         Failed 20/20 tests, 0.00% okay
Failed Test Stat Wstat Total Fail  Failed  List of Failed
t/1.t        255 65280    20   40 200.00%  1-20
Failed 1/1 test scripts, 0.00% okay. 20/20 subtests failed, 0.00% okay.
make: *** [test_dynamic] Error 2

and the make install:
Files found in blib/arch: installing files in blib/lib into architecture 
dependent library tree
Writing /usr/local/lib/perl5/site_perl/5.8.6/i686-linux/auto/ICS/.packlist
Appending installation info to 

now... When I attempt to do the keys this is what is returned to the 
  ./ecert v7048056
         The application will now send the newly created key pair
         and certifcate request to the server.

         Merchant id, v7048056
         Server host name, setup.ic3.com
         Server port number, 80

         This process will add your new keys into the test

         The server had problems decrypting the message: certificate/private
         key mismatch, please update your server/client credentials.
         Update your client libraries at http://www.cybersource.com/support

Any thoughts?

Paid for by Penguins against modern appliances(R)
Linux User Since 1996
Powered by Mandrake Linux 8.2, 10.0 & RHEL 4

More information about the interchange-users mailing list