Please let us know the status of your testing. Thanks!
Please let us know the status of your testing. Thanks!
That Software Guy. My Store: Zen Cart Support
Available for hire - See my ad in Services
Plugin Moderator, Documentation Curator, Chief Cook and Bottle-Washer.
Do you benefit from Zen Cart? Then please support the project.
Brilliant! That solved my problem too!! Thank you very much!!!
![]()
Hello ... I'm getting the same error. I've followed your instructions and changed the two strings in beanstream.php:
'shippingMethod' => substr($order->info['shipping_method'], 0, 30)
but I'm still getting this error:
Shipping method must be less than 64 characters
- Your INTERAC® card could not be authorized for this reason. Please correct the information and try again or contact us for further assistance.
I'm using version 1.3.9g and the Canada Post module. Site is located at www.mysocksrock.ca. The error doesn't occur when using the "Walk in" shipping method.
Any ideas how to fix this? Is it possible to change to 128 chars?
Thanks in advance,
Chris
Okay, i fixed this. In /includes/classes/order.php I changed the following (line 614):
'shipping_method' => $this->info['shipping_method'],
TO
'shipping_method' => substr($order->info['shipping_method'], 0, 30),
This was in addition to the change suggested by swguy above.
Chris
Hello...i have updated both files so that my code currently looks like this in /includes/modules/payment/beanstream.php:
And My code looks like this in /includes/classes/order.php after I changed the recomended line 614:Code:$shipping_data = array( // 'deliveryEstimate' => $order->delivery['shipping_method'], 'shipName' => $order->delivery['firstname'] . ' ' . $order->delivery['lastname'], 'shipAddress1' => $order->delivery['street_address'], 'shipAddress2' => $order->delivery['suburb'], 'shipCity' => $order->delivery['city'], 'shipProvince' => $province_code_ship, 'shipPostalCode' => $order->delivery['postcode'], 'shipCountry' => $order->delivery['country']['iso_code_2'], 'shippingMethod' => substr($order->info['shipping_method'], 0, 30)); } else { $shipping_data = array(); } $extra_data = array( 'shippingMethod' => substr($order->info['shipping_method'], 0, 30)); 'trnComments' => 'Website Order', // $order->info['comments'], // Additional Merchant-defined variables go here 'ref1' => $_SESSION['customer_id'], 'ref2' => $order_time, 'ref3' => zen_get_ip_address(), 'ref4' => $sessID, 'customerIp' => zen_get_ip_address() );
And i still get the error message:Code:'shipping_method' => substr($order->info['shipping_method'], 0, 30),
•Shipping method must be less than 64 characters
- Your INTERAC® card could not be authorized for this reason. Please correct the information and try again or contact us for further assistance.
I am Lost and dont know what else to change unless someone can see something that i am missing. Your help is greatly apprecated!
Figured it all out...its all about the brakets and closing the open code!
![]()
This is how i solved the issue on my site. Go to \includes\modules\payment\beanstream.php and replace line of 656 to line 702 with the below code however I did not change the \includes\classes\order.php. Changing that file caused additional errors.
$shipping_data = array(
// 'deliveryEstimate' => $order->delivery['shipping_method'],
'shipName' => $order->delivery['firstname'] . ' ' . $order->delivery['lastname'],
'shipAddress1' => $order->delivery['street_address'],
'shipAddress2' => $order->delivery['suburb'],
'shipCity' => $order->delivery['city'],
'shipProvince' => $province_code_ship,
'shipPostalCode' => $order->delivery['postcode'],
'shipCountry' => $order->delivery['country']['iso_code_2'],
'shippingMethod' => substr($order->info['shipping_method'],0,30));
} else {
$shipping_data = array();
}
$extra_data = array(
'shippingMethod' => substr($order->info['shipping_method'], 0, 30),
'trnComments' => 'Website Order',
// $order->info['comments'],
// Additional Merchant-defined variables go here
'ref1' => $_SESSION['customer_id'],
'ref2' => $order_time,
'ref3' => zen_get_ip_address(),
'ref4' => $sessID,
'customerIp' => zen_get_ip_address()
);
Hello All,
I just had a call from a customer flagging this 64 character issue....I made the change to my beanstream.php file, uploaded it and now my beanstream module has disappeared from the admin and any order that used beanstream is a blank page. I tried reverting back to the original file and everything is still blank. Has anyone bumped into this or can someone please recommend a solution?
Any help is appreciated. Thank you.
Paul
Hello Everyone,
Does anyone know if this fix still works with Zen 139h? I notice it's a couple of years old.
I've tried it a couple of times and when I try to process a payment I just get a blank page.
Any help or comment would be appreciated. Thank you!
Zen 139h
PHP Version: 5.3.10
MySQL 5.0.95
Bookmarks