Jump to content


  • Content count

  • Joined

  • Last visited

Profile Information

  • Real Name
  • Gender
  1. SpongeMaximus

    Checkout by Amazon migration from SOAP to MWS

    For what it's worth, and in case anyone else as confused as I was stumbles across this, it looks like the "Checkout by Amazon UK and DE" contribution (most recent version, uploaded September 6th 2012) DOES use the MWS operations, and with some tweaking (especially to the includes/modules/amazon_payment/inline_config.php file) it will work with a US-based site. I'm working with the version for osC 2.2, found here. From what I can tell, it's a lot more streamlined than the no longer supported 2009 Checkout By Amazon contrib-- it doesn't create as many tables in the database, and it still allows you to manage your CBA orders from within your osC orders.php page. Installation was easy thanks to the detailed instructions provided, and with some relatively minor modifications to the way it displays my store's checkout_shipping and checkout_confirmation pages, it will be perfect. A huge and heartfelt thanks to Holbi (DataLink UK Ltd.), the developer(s)! :)
  2. Having searched high and low for a sign that even a single person has successfully updated their Checkout by Amazon payment module to use the new Amazon Merchant Web Services (MWS) protocol (which will become mandatory on October 8th when they shut off SOAP support), I thought I'd just ask it here: Has anyone been able to do it? I've searched these forums, the osCMax forums, and even the Zen Cart forums, and have only been able to turn up a small handful of people expressing variations of the same concern: How will the October 8th switch to MWS affect me? Not a single one of them has gotten an answer. I'm writing this (embarrassingly long) post in the hope of maybe discovering a kindred soul. Right now, customers on my osC site can choose Checkout By Amazon as a payment method, before they even create an account or log in to my site. If they choose CBA, they are taken to an Amazon payment page where they enter their Amazon login info, review the details of their order, and confirm. After that, they are taken back to my osC checkout_success.php page. Their customer account and address book entries are automatically created on my site, and their order is created in my database and viewable from my /admin/orders.php page. I can process, ship, or cancel the order from within my site's backend, and the information (shipping status, tracking number, etc.) is transmitted to Amazon. In other words, it all works as it should, and it has been for months. Then I started getting the e-mails from Amazon that say: Hello from Checkout by Amazon: According to our records you have used SOAP (Simple Object Access Protocol) to manage your Checkout by Amazon orders within the last 30 days. This is a follow-up to messages that have been sent to you by the Amazon MWS team starting April of 2011 to remind you that Amazon plans to discontinue support of SOAP on October 8, 2012. This e-mail contains important information to help you implement our latest technology that will replace SOAP. Amazon Marketplace Web Service (Amazon MWS) is replacing SOAP for sellers and developers who have integrated with Checkout by Amazon. While we will continue to support the current state of SOAP until October 8, 2012, after October 8th, 2012, SOAP operations will be discontinued. To the extent that I've been able to dive into this, it looks as though, at the very least, come October 8th I will no longer be able to update/process/ship/cancel orders from within my site's backend, as those are all SOAP operations. I tried to narrow down exactly where the SOAP operations were being performed, and I did a little test in which I commented out a small section in catalog/checkout_by_amazon/library/merchantAtAPIs/lib/amazon/amazon_merchant_at_soap_client.php. The section I commented out was: // Parse the WSDL and get the client $this->client = new SOAP_Client(WSDLPATH, true, false, $proxy, false); if (PEAR::isError($this->client)) { $this->error = "Error: " . $this->client->getMessage(); return false; } I left it commented out for a short time, and it seemed like Checkout By Amazon orders could still come through to my site and appear along with the rest of the orders in admin/orders.php. However, when I attempted to cancel out a test order I had placed using CBA during this time, the process failed. As soon as I uncommented the section above and tried again, it worked. The bottom line is, I don't know where to go from here. Amazon themselves seemed to create and support the osCommerce Checkout By Amazon payment mod back in 2009-ish (the one found in the Contributions section of addons dot oscommerce dot com), but from what I can tell (and I've searched endlessly), they no longer do, and have virtually nothing to say on the topic of the upcoming switch to MWS as it pertains to the osCommerce mod. Attempts to get help from Amazon themselves have beem mostly futile-- one day their answer is that we don't have to do anything and the CBA mod will continue to function normally (nothing seems to support this) and the next day they go back to insisting that we're using SOAP operations and we have to update by October 8th or everything will stop working. And perhaps most maddeningly of all, I've only been able to find very few people in the same situation-- people who have the CBA mod working right now the way it should, and who are concerned about the October 8th switch to MWS. And they haven't gotten any answers, either. So are there really fewer than half a dozen people in the world who run a shop that uses osC/osCMax/ZenCart and accepts Checkout By Amazon payments, or are there a lot more but they just don't know or care about the switch to MWS, or have I lost my mind and this really isn't as big a deal as I'm thinking it is? :blink: That last one is certainly a possibility.
  3. SpongeMaximus

    Checkout by Amazon for osCommerce Support Thread

    Update on problem number 3: Every time I attempt to update the status of a CBA order in my osC store's Admin > Orders page, the CBA mod seems to create an order processing report in XML and submit it to Amazon, where it is then rejected with errors, likely causing the "We were unable to charge the customer's payment method" error I mentioned previously. Examining the order processing reports SEEMS to show that for some reason, the Amazon Order ID being submitted contains extra characters that aren't expected, thus throwing the error. The XML report shows, among other things, the following Results (I've replaced the actual order ID numbers with x's): <ResultDescription>XML Parsing Error at Line 2, Column 16: cvc-pattern-valid: Value 'xxx-xxxxxxx-xxxxxxx ' is not facet-valid with respect to pattern '\w{3}-\w{7}-\w{7}' for type '#AnonType_AmazonOrderID'.</ResultDescription> [and later in the xml file...] <ResultDescription>XML Parsing Error at Line 2, Column 16: cvc-type.3.1.3: The value 'xxx-xxxxxxx-xxxxxxx ' of element 'AmazonOrderID' is not valid.</ResultDescription> Notice the extra space after the last "x" and before the closing "'" ? I'm guessing that shouldn't be there. Another clue as to that being the problem is in my OSC database, in the amazon_orders_status_history table, in the xml column, the Amazon Order ID looks like this:<AmazonOrderID>xxx-xxxxxxx-xxxxxxx\r</AmazonOrderID> That "\r" at the end seems to be throwing the whole thing off. Now to try to find out WHY there is an extra space and/or "\r" (carriage return) being added onto the end of the Amazon Order ID, thereby making it invalid.
  4. SpongeMaximus

    Checkout by Amazon for osCommerce Support Thread

    And problem number 3, posted here for future generations to find: When we go to ship the orders in the osC backend, using the fields added to the orders.php by the CBA mod, it inevitably comes back with "Failed" and the error message "We were unable to charge the customer's payment method." There appears to be exactly zero documentation online surrounding this error message or what may be causing it. If I can get an answer from Amazon themselves (although basically no one there seems to have any experience with osCommerce integration, somehow) I'll post it here in case it helps anyone in the future.
  5. SpongeMaximus

    Checkout by Amazon for osCommerce Support Thread

    In case anyone stumbles in here in the future, looking for answers to the problems I've been having... I got around the issue of which shipping modules are displayed by inserting some conditional stuff (i.e. "IF the ship-to country is domestic AND IF the order total is greater than my minimum amount for free shipping, THEN include the freeamount shipping mod"). So now everything is working more or less correctly, with two exceptions: 1) Sometimes it takes a long time (up to four days, so far) for approved orders to make it to my osC Admin "Orders" page, despite it being set to grab a new XML orders report every hour. We just came back in after Christmas weekend, and there were close to thirty orders sitting in "Total Unshipped" on Amazon Seller Central, some of them going back to December 23rd. As we puzzled over what could be wrong, suddenly they all poured in and finally appeared on our Admin > Orders page around 9:30am Eastern. It was as though someone at Amazon had a 4-day weekend as well, then came in this morning and threw a switch, pushing them all through at once. This was all with zero input or changes on our end. Does anyone know if for some reason Amazon only sends unshipped order reports during business hours? This could be a huge problem if someone selects Overnight shipping and then has to wait four days for us to even see their order on our end. 2) When they come through to our Admin > Orders page, items don't have any attributes. The chosen attributes are partially listed in the item's Name field, but it cuts off after 80 characters, as is Amazon's policy for naming items. So it will look like "1 x Jobst Opaque 15-20 mmHg Moderate Compression Pantyhose (Color: Black, Length..." and that's it. On Seller Central, I can see what options the customer chose since Amazon lists the item's SKU including the option values in brackets (i.e. "SKU: 181{3}6{2}33{5}51"). But something isn't getting done in checkout_by_amazon_order_builder.php to populate the orders_products_attributes table in my database. If anyone is reading this (and I know people are) and feels like letting me know where else I might find support for the Checkout By Amazon mod, I'd be very grateful. I've checked the osCMax forums, the Amazon Services Seller forums, and even the Zen Cart forums, but no one else seems to be having these issues.
  6. SpongeMaximus

    Checkout by Amazon for osCommerce Support Thread

    Another question: How does the CBA mod determine which shipping options to show to the customer once they've entered their Amazon account email and password and are looking at their order? Because as far as I can tell, it just shows them most (but not all) of the available, active shipping modules from my osC store, whether or not they're applicable. To illustrate, the following is copy-and-pasted from the screen in question: Choose a shipping speed:FLAT - Standard Shipping - $4.50UPS2DAY - 2 Day Shipping (not available to Alaska & Hawaii) - $19.00ZONES - - $0.00ZONESPRIORITY - - $0.00UPS3DAY - 3 Day Shipping - $14.50UPSNEXTDAY - Next Day Shipping (not available to Alaska & Hawaii) - $35.00 The all-uppercase words are literally the php filenames of the shipping mods. In case anyone's interested, I got the actual names of the mods to display instead by changing catalog/checkout_by_amazon/checkout_by_amazon_shipping_processor, line 80 strtoupper($quotes['id']) to: strtoupper($quotes['module']) However, the selection still offers the customer shipping options that it shouldn't, such as ZONES and ZONESPRIORITY which are for non-U.S. orders. It also doesn't offer the "Free Shipping for Orders over $X" option (from freeamount.php) even if their cart contains more than $X worth of items. For those who are successfully using the CBA mod, have you run into this issue with the selection of shipping mods?
  7. SpongeMaximus

    Specials Maintenance - Administration

    First, great contribution! It's saved us a ton of time managing what's on special. My one concern is, it throws a MYSQL error when I try to apply a Special price to a group of items that I've arrived at by keyword search of their Product Names. The error I get is: 1054 - Unknown column 'pd.products_name' in 'where clause' SELECT p.products_id AS pid, s.specials_id AS sid FROM products p LEFT JOIN specials s ON p.products_id=s.products_id WHERE p.products_status=1 AND p.manufacturers_id = '13' AND pd.products_name LIKE '%my search terms%' Looking at the code behind it, I can kind of tell how the MYSQL query is dynamically built based on what flags the user has set, but for some reason it's not picking up the Product Description table when $product_name exists, though it looks like it should. Any hints on how to fix this?
  8. SpongeMaximus

    Checkout by Amazon for osCommerce Support Thread

    I'm having a hard time figuring out at what point any of the order information is written to my store's database, so that I can manage Amazon Checkout orders from my store's Admin/Orders page rather than having to go to Seller Central on Amazon. The instructions for the mod make it pretty clear that this should happen, but I'm not seeing it. I've installed the Amazon Checkout Integration mod (v 2.3) on my osC store, and after a day of configuring the many settings (both in my store's Admin and in my Amazon Payments seller account) I've got it working, to the point where I can place an order on my site, click the Checkout by Amazon button instead of my usual osC checkout button, fill in my Amazon e-mail/password, and place the order, but nothing ever comes through to my osC store. I see the order in my Amazon Seller Central account, first under Pending and then after a little while under "Total unshipped," but I'm not seeing any integration with my osC store's Orders page, even though I inserted the code and uploaded the necessary files as per the mod's instructions. UPDATE: Hah. It looks like everything WAS working just fine, it just takes quite a long time (about 40 minutes in this case) for the order to show up on my osC's Orders page. I guess it only updates once an hour, every time the XML orders report is generated by Amazon.
  9. SpongeMaximus

    The Feedmachine Solution

    Update: For no reason that I can figure out, now when I manually run feedmachine_auto.php from the shell it works, and regenerates and uploads my feeds. Shrug? Maybe I wasn't actually disabling the part that refuses to update if it was already updated recently? Anyway, now I'll see if the cron job will run it as well...
  10. SpongeMaximus

    The Feedmachine Solution

    Hi all, I've set up a cron job to run feedmachine_auto.php once a night at 11:30pm, and I know the cron is working because I also set it to email me upon completion, and the e-mails are coming through. The problem is that feedmachine_auto.php isn't updating or uploading any feeds. This is the result I get, it's the same whether the cron job runs it or I run it manually from the shell: ----------------------- Feedmachine Report ----------------------- start time: 2011-06-28 09:53:52 EDT end time: 2011-06-28 09:53:52 EDT runtime: 0.024120807647705 GLOBAL UPDATE TRIGGERS ---------------------- (no global update triggers) NOTICES ------- (no notices) F E E D S Google Product Search ------------ update status: feed not updated(0) upload trigger status: feed upload not triggered(0) upload status: feed was not uploaded(0) (etc. all other feed results are the same, not updated and not uploaded) Any idea what's going wrong? I made sure that the appropriate folders have execute and write permissions where applicable, so I don't think that's it. I even tried commenting out the part in feedmachine_auto.php that refuses to update the feeds if there's a catalog update in progress, etc.: //check to see if the catalog is currently being updated /*$last_updated_date = max(array($global_current_info['products_last_updated']['value'], $global_current_info['specials_last_updated']['value'], $global_current_info['categories_last_updated']['value'])); if( $last_updated_date > (time()-FM_AUTO_GRACE_PERIOD_MINUTES*60) && $last_updated_date < (time()+FM_AUTO_GRACE_PERIOD_MINUTES*60) && !$force_update ) { echo 'Catalog is currently being updated: not generating or sending feeds.'; tep_exit();*/ } Still no go. I can still manually update/upload the feeds in the Feedmachine admin section of my site, just not with feedmachine_auto.php. Thoughts?
  11. SpongeMaximus

    RMA Returns error for 2.2 MS2

    Dunno if anyone can help me out.. I have successfully installed the RMA Returns system for my client's store but simply cannot get the returns system working with attributes. There are many products on the site that uses different attributes and options and I need to incorporate that when customers return a product. I have been tackling this project for quite some time and with no success I'm afraid. Would it be possible if someone could at least direct me on how to add such a thing to this contribution? I also read a post a few pages back where someone had figured out a way to make the returns system pull attributes for that product. Could someone please share the wealth? I'll be your bestest bud! :thumbsup: