If any/all of those steps meet any of the following criteria, you need to use internal link tracking:

Your users are interacting with Flash/Ajax/lightboxes etc. and the URL doesn't change from one step to another.

Once someone makes a purchase, there is no unique confirmation page. For example, if when I buy my guitar, the purchase page takes me to a dynamic page based on what I purchase. Or, if after I buy my guitar and I get redirected back to the homepage, the homepage URL isn't a goal so that shouldn't be counted as a conversion.

So, how to do it:

You can see a trend -- when URLs aren't unique, or when they don't change on clicks, you may need to create virtual pageviews. Using the example above, let's say this is the URL path:

What to do? Well, on the guitar details lightbox, you should include the trackPageview script in the "purchase" button, and call that virtual pageview "internal-links/guitar-purchase/fender-jaguar." So now you've got a "fake" or "virtual" pageview in your analytics.

Next, build the funnel:

Use "Head Match" and your funnel should look like this:

Step 1: /guitars.html

Step 2: /internal-links/guitar-purchase

Step 3: /purchase/guitar

Goal URL: /purchase/confirmation.html

Breaking the funnel down:

Step one pulls in the generic "Guitars" page.

Step two pulls in all "Purchase Now" buttons -- not just the Fender Jaguar; you can use "Top Content" to identify which guitar generates the most "purchase now" clicks.

Step three pulls in all "Purchase" pages -- again, not just the Fender Jaguar purchase page.

The Goal URL pulls in all confirmed purchases -- once more, not just the Fender Jaguar confirmation page.

That's it! Once you've sent the virtual pageview to Google Analytics, GA treats it like any other page, and you plug it straight into your goals. If you're using regular expressions for your goal match type when using the internal links above, you would use this forumla: ^/internal-links/guitar-purchase.*