magento ship to billing address only for first time buyers - magento

Does anybody know if this is possible, or how I would go about it. My client wants first time buyers to be limited to shipping to the billing address only, thereafter being able to get items shipped anywhere. I think it's a reasonably common thing in eCommerce.

It's possible but it would take a bit of work to do. You'd need to modify the account pages that let users add addresses, and the checkout page templates (probably just the /template/checkout/onepage/billing.phtml page for the radio control that says 'Ship to this address'/'Ship to different address').
I'd do a check to see if a customer is logged in, see how many previous orders they have, and if they have a previous order then display the options to let them change their shipping address.

Related

Magento : How do I create a module for Partial Payments?

How do I create a module for partial payments ?.. means like client can pay Full or "50% now and 50% later". He should have the option at the time of checkout. Invoice will be created for the full amount but payment only 50%
How do i do that?
it should be possible and there is more than one way to do it.
I can suggest you the following solution for instance:
In case you are using a payment provider, you should modify its module in some way in order to take in account the 50% payment. For instance, an extra payment option should be created.
The remaining 50% should be persisted along with the order (custom order attribute)
However, keep in mind that in Magento, an order can only have 1 payment method.
Magento doesn't do this out of the box.Implementing this is a lot of work, because you have to pay attention to a lot of things.For this one I would advice to look at the already existing extensions. First of all because since it's such a tricky thing to build yourself better get something that has been proven to work and second because they're not that expensive. Probably the hours you'll spent on building itself won't weigh up to the cost of the extension.
Milople offer an extension for this where it is possible to pay Full or "50% now and 50% later".

Google Trusted Stores Shipmet feed Carrier in Magento

i have an issue with the feed that is sent to my google merchant account (order_shipments.txt) there is 4 columns
merchant order id
tracking number
carrier code
other carrier name
ship date
i have set my shipping as FREE SHIPPING with the shipping magento method for Free Shipping, the problem is that under my feed all the tracking numbers shows as carrier (other) and i need under my feed on carrier either UPS or USPS. because every time we ship an order we enter the tracking number and the carrier for the shipment. any suggestion will be highly appreciate.
Hopefully I'm not too late!
We just patched this exact issue (as well as others) and have documented the necessary modifications at http://www.dcjcooltools.com/blog/magento-extensions/the-nightmare-that-is-google-trusted-stores-for-magento/
Look for the post in the comments that discusses carrier names. We are looking to create a patch extension so that you don't have to modify core Trusted Stores files.
Let me know if this solution works for you!
Regards,
Evan

Google checkout shipping in Magento

in our website www.theprinterdepo.com we are going to implement google checkout. However I am not sure in what shipping methods or strategy to use.
In this page:
https://developers.google.com/checkout/developer/Google_Checkout_XML_API_Carrier_Calculated_Shipping#Process
Google says that they calculate based on the total weight of the items, but the thing is if one person buys one printer thats fine, but if he orders 3 printers of 50lbs, the shipping cost is invalid calculating it with 150lbs. It has to be calculated as 3 packages of 50lbs.
How would you do it in this scenario??
I have only had minimal investigation to this, but I don't think this can be handled by default installation. I know that you would need a shipping extension that can support the Google API shipping-packages, but real issue is that not even the Google API can support more than one package, either by API limitation or restriction by choice.
The <shipping-packages> tag encapsulates information about
all of the packages that will be shipped to the buyer.
At this time, merchants may only specify one package per order
I would love to see this come to full use as it would be a great addition to be able to say that anything with a weight over x requires additional packaging but currently I don't think it is possible. While this can be accomplished by separating the order into three orders, but that will over complicate the user experience and possible cause loss of sales.
Source:
https://developers.google.com/checkout/developer/Google_Checkout_XML_API_Carrier_Calculated_Shipping#tag_shipping-packages
The "limitation" mentioned above is only if you will rely on Google to calculate shipping for you using what they call carrier-calculated-shipping.
You do have other options to calculate shipping:
you can pre-calculate using whatever formula (or shipping service/plugin) you have based on the cart contents (you would know this prior to handing off the cart to Google for Checkout), which is essentially sending a flat rate shipping cost to Google, or perhaps;
use the merchant-calculations-api option so you can account for the destination/delivery address (not just cart contents). This option is more complex (you need to handle callbacks from Google), but it does give you critical information to work with when calculating shipping.
hth....

Magento Print Packing slip before shipping

How can I print a packing slip before the order status is "complete" (i.e. before I submit a shipment?)
The current workflow is a bit backwards, especially if you are using the packing slip as a pick list in the warehouse.
Extra: A solution that is upgrade friendly.
Thanks.
http://www.magentocommerce.com/wiki/5_-_modules_and_development/orders/automatic_picklist_printing_with_check_for_order_payment
Get a paid for module if time is money, otherwise muddle through the above link or write your own module. Observe order creation and send an email of the order may be one way to go if you want it customised with attributes not on the normal order email. Otherwise, cc new orders to an account, print them out and take them down the warehouse.
I have spent hours searching the internet for a solution to this problem and finally used
'Print Packingslips (pre shipped)'.
It prints your packingslips/pick lists with any order status. Works perfectly and is the cheapest module I can find.
http://www.magentocommerce.com/magento-connect/print-packing-slips-pre-shipped.html
Here's one that does the same thing, slightly cheaper:
http://www.reddotdevelopment.com/store/magento-order-picklist-extension.html
I haven't bothered to purchase any of these extensions to see how they've implemented the ability to print before shipping, but I've been able to do it myself pretty easily.
Seems there just isn't Admin UI around all of them, but it turns out there are a numerous models that support a getPdf method.
Creditmemo
Invoice
Shipment
Packaging
The difference between calling getPdf on Invoice instead of Shipment is there is no tracking info on the PDF.
You don't need third party add-ons for this. You can just click "Submit Shipment" before you have actually packed it and you will be OK.
You can then print the packing slip, pack it up and actually ship it.
Then you can add the tracking number and send the customer email afterwards by clicking the "Send Tracking Information" button.
That's how I do it.

Method to detect a parked page?

Anyone know of a way to programatically detect a parked web page? That is, those pages that you accidentally type in (or intentionally sometimes) and they are hosted by a domain parking service with nothing but ads on them.
I am working on a linking network and want to make sure that sites that expire don't end up getting snatched by someone else and then being a parked page.
Here is a test that I think may catch a decent number of them. It takes advantage of the fact you don't actually want to have real web sites up for your parked domains. It looks for the wildcarding of both subdomain and path. Lets say we have this URL in our system
http://www.example.com/method-to-detect-parked.
First I would check the actual URL and hash it or grab a copy for comparison.
My second check would be to
http://random.example.com/random
If it matches the original link or even succeeds, you have a pretty good indicator that the page is parked. If it fails I might check both the subdomain and path individually. If the page randomly changes some elements, you may want to choose a few items to compare. For example make a list of links included in the page and compare those or maybe the title tag.
I would say that you'll have to examine the WHOIS records for the sites in question and/or the actual content of the pages and develop some heuristics as to what constitutes a "parked page".
Take goooogle.com, looking at their WHOIS record shows that they are owned by "Privacy Protection" and that their DNS servers are ns1/ns2.fastpark.net. If you look at the source for the site, they're silly enough to have a CSS file named "style_park.css" :)
All in all, I don't think you'll be able to come up with a generic way to do it. You'll probably end up with some ever evolving rule base or blacklist
Look at the creation date of the dns/whois record, and compare it to the add date of the link. If the DNS is newer, that's a link that needs manual checking.
Or: check http://example.com/ and http://example.com/xxxxxxrandomstringxxxxx . If those two pages are identical, you've got some sort of problem that needs manual checking. Either the primary page you wanted to link to is broken, or the domain is parked and all pages return the same value. This test is not 100%, because some parked pages echo back elements from the URL.
If you just want to check an existing website, a service like http://www.linkalarm.com/ does this well.
You could just rely on your users to "Report this link"... which would put it into a queue to review later?

Resources