aj7778 Posted August 6, 2008 Posted August 6, 2008 Hi, I am wanting to use Securepay / DirectOne, which is a payment gateway company in Australia, with my Oscommerce V2.2 store. My store is highly modified. DirectOne have supplied the following module which I have partially got to work. http://addons.oscommerce.com/info/4147 The check procedure is as follows; the customer goes through the normal oscommerce checkout, then on the confirmation page, gets redirected to the DirectOne page and puts in their credit card details and then gets payment approval. This all works fine. The problem is that my oscommerce store is not receiving the order, unless the customer clicks the "return to store" link. I have tried adding a reply_link_url, to the payment module, which DirectOne suggested would solve this problem. This didn't work. I've also searched high and low on google and spoken several times to DirectOne technical and to my programmer. Has anyone had this problem or does anyone know how to solve it. I'm pretty close to changing gateway companies at the moment. Thanks Quote
hubby2debbie Posted August 20, 2008 Posted August 20, 2008 Here's what I did: On the order confirmation page in osCommerce, I changed the text of the button from "Confirm Order" to continue, then in the DirectOne interface, I changed the return link text to "Finalize Order". That should help some, because the customer will have the impression that the order is not complete until they click that link. I do plan on taking a look a frames-based solution, where one frame is invisible, and the second frame loads the DirectOne page. An event could be triggered from the code in the invisible frame that will load the osCommerce confirmation page in that frame as soon as the Direct one page has finished loading. Quote
MARC0 Posted November 5, 2008 Posted November 5, 2008 I had the same problem and did the same thing. only problem is there is one or two clients that dont still click it on occasion. I have just came across another problem with the directone gateway last night. Its not picking up the attributes submitted with the products? at first i didnt see this as a big problem but now a client has had a problem when their customer purchases two of the same item with two different attributes (like different flavours), the gateway, because it only picks up the name of the product and sees the two as the same and it only puts one item through, so they only pay for one. here is directones support solution to the problem when contacted: "The products input field has exactly the same name and value for both flavours. The DirectOne payment page will only accept the value of the first input field if there are two input fields with the same name. When more than one of the same product is ordered with different flavours, you will need to either update the quantity, or you will need to add each flavour with a unique field name. Please see below. Update Quantity <input type="hidden" name="CytoGainer *" value="2,92.95"> Different Product Names <input type="hidden" name="CytoGainer Banana" value="1,92.95"> <input type="hidden" name="CytoGainer Strawberry" value="1,92.95"> Please contact us for any further assistance. " Any ideas how i would go about giving each attribute "a unique field name". I have spent this morning trying to add the attributes to the product name in the checkout_conformation page, without any luck in getting the gateway to pick it up. this is the code i was using - not that it was getting me anywhere; for ($i=0, $n=sizeof($order->products); $i<$n; $i++) { for ($j=0, $n2=sizeof($order->products[$i]['attributes']); $j<$n2; $j++){ if ( (isset($order->products[$i]['attributes'])) && (sizeof($order->products[$i]['attributes']) > 0) ) { echo ' <tr>' . "\n" . ' <td class="main2" align="right" valign="top" width="30">' . $order->products[$i]['qty'] . ' x</td>' . "\n" . ' <td class="main2" valign="top">' . $order->products[$i]['name'] . '<br><small><i>' . $order->products[$i]['attributes'][$j]['option'] . ': ' . $order->products[$i]['attributes'][$j]['value'] . '</i></small></nobr>' ; } else { if ( (isset($order->products[$i])) && (sizeof($order->products[$i]) > 0) ) { echo ' <tr>' . "\n" . ' <td class="main2" align="right" valign="top" width="30">' . $order->products[$i]['qty'] . ' x</td>' . "\n" . ' <td class="main2" valign="top">' . $order->products[$i]['name']; } } } any ideas..also interested in a secure solution to aj7877's question as well. Quote
MARC0 Posted November 6, 2008 Posted November 6, 2008 ok so I have realised that i am working in the wrong area :blink: . I am looking at the directone payment module now but still cant get the attributes options to transfer into the gateway. This is the original code in the module that sends the data to the gateway: foreach($order->products as $key => $value) { if($value['tax']>0) { $process_button_string .= tep_draw_hidden_field($value['name'], $value['qty'].','.$value['final_price']); $tax_rate = $value['tax']; } else { $process_button_string .= tep_draw_hidden_field($value['name'] . ' *', $value['qty'].','.$value['final_price']); $process_button_string .= tep_draw_hidden_field('gst_exempt_fields', $value['name'] . ' *'); } And this is the code that inserts the attributes into the checkout confirm page: if ( (isset($order->products[$i]['attributes'])) && (sizeof($order->products[$i]['attributes']) > 0) ) { for ($j=0, $n2=sizeof($order->products[$i]['attributes']); $j<$n2; $j++) { echo '<br><nobr><small> <i> - ' . $order->products[$i]['attributes'][$j]['option'] . ': ' . $order->products[$i]['attributes'][$j]['value'] . '</i></small></nobr>'; } } I have tried the following without luck (and others): foreach($order->products as $key => $value) { if($value['tax']>0) { $process_button_string .= tep_draw_hidden_field($value['name'], $value['qty'].','.$value['final_price']); $tax_rate = $value['tax']; } else { $process_button_string .= tep_draw_hidden_field($value['name'].'<small> <i>' . $value[$i]['attributes'][$j]['option'] . ': ' . $value[$i]['attributes'][$j]['value'] . '</i></small>' . ' *', $value['qty'].','.$value['final_price']); $process_button_string .= tep_draw_hidden_field('gst_exempt_fields', $value['name'] . ' *'); } } Any suggestions? Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.