<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;D0MNRno9fip7ImA9WxVWGUk.&quot;"><id>tag:blogger.com,1999:blog-5392486931889201133</id><updated>2009-03-01T22:11:37.466Z</updated><title>Google Checkout API</title><subtitle type="html">Google Checkout API &amp; Other Google Technologies</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://google-checkout-api.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://google-checkout-api.blogspot.com/" /><author><name>Sean J Connolly</name><uri>http://www.blogger.com/profile/09667570138975276323</uri><email>sean.connolly@potissimus.co.uk</email></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>7</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><link rel="self" href="http://feeds.feedburner.com/GoogleCheckoutApi" type="application/atom+xml" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><entry gd:etag="W/&quot;DkQCR389fSp7ImA9WxdUFUk.&quot;"><id>tag:blogger.com,1999:blog-5392486931889201133.post-3277526619174218579</id><published>2008-07-31T23:20:00.004+01:00</published><updated>2008-07-31T23:46:06.165+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-07-31T23:46:06.165+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="how to check if google has responded checkout" /><category scheme="http://www.blogger.com/atom/ns#" term="check google checkout callback success" /><category scheme="http://www.blogger.com/atom/ns#" term="google checkout callback" /><title>How to check Google Checkout API has reached your callback page</title><content type="html">&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;span style="font-family:verdana;"&gt;In this post I will tell you how to find out if Google has actually reached your callback page, when using the Google Checkout Api.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;There are several ways to check that Google is actually getting to your page.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;1. Go into the Tools tab, then click on the integration console.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;This will tell you if there are any errors that Google encountered trying to get to or run your page.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;2. The next best way is to create a test event on your callback page that will fire when ever the page is run. This can be as simple as just writing a line to a text file, in fact using a text write is a good idea as you can write out all responses from Google and make sure are know which information is coming back, and whether it is correct or not.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;em&gt;A sample for this would be as follows&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;If you write the following into your callback page, a text will be written to a text file, if there is nothing written, Google has not run this page.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:verdana;"&gt;Sample 1 - Writing a simple line to a text file&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;Writes test line to TestFile.txt - TestFile.txt must exist in the same location on your server as you callback page, simple write the code below at the top of your callback page. If nothing is written Google has not reached your page, check the integration console as advised above.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;'START OF CODE'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;Dim fso, f, FilePath&lt;br /&gt;Set fso = CreateObject("Scripting.FileSystemObject")&lt;br /&gt;FilePath = Server.MapPath(".") &amp;amp; "\TestFile.txt"&lt;br /&gt; Set f = fso2.CreateTextFile(FilePath, True)&lt;br /&gt;f.WriteLine "Testing"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;f.close&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;'END OF CODE'&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:verdana;"&gt;Sample 2 - Writing Full Google XML response to text file&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;The following code will write the Google response to a text file called CompleteGoogleResponse.txt, which must exist in the same location as your callback page.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;With this code you have two options, you can write it just below the &lt;strong&gt;LogMessage ResponseXML&lt;/strong&gt; line in the sample callback.asp code provided by Google, just remove the last PrivateData and GNum lines.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;or you can write it as is into the function called &lt;strong&gt;ProcessNewOrderNotification&lt;/strong&gt; just write the code at the top of this function, and if all is well you will have a file with the full response XML from Google as well as your Google Order Number for this transaction and any private data your may have sent (NOTE remove the private data line if you do not send any in your original transaction), again if nothing is written Google failed to reach your page, check the integration console as advised above.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;'START OF CODE'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;Dim fso1, f1, FilePath1&lt;br /&gt; Set fso1 = CreateObject("Scripting.FileSystemObject")&lt;br /&gt;FilePath1 = Server.MapPath(".") &amp;amp; "\CompleteGoogleResponse.txt"&lt;br /&gt; Set f1 = fso2.CreateTextFile(FilePath1, True)&lt;br /&gt;f1.WriteLine "GoogleResponse=" &amp;amp; ResponseXml&lt;br /&gt;f1.WriteLine "PrivateData=" &amp;amp; MyPrivateData.xml&lt;br /&gt;f1.WriteLine "GNum=" &amp;amp; GoogleOrderNumber&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;f1.close&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;'END OF CODE'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Verdana;"&gt;&lt;strong&gt;NOTE&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Verdana;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style="font-family:Verdana;"&gt;It must be said that if the above code is written into your callback page, and the text written to your file is something like GNum= but there is no information after the = sign, then Google has successfully hit your page, but failed to send you any information. Check the integration console as advised above.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;I hope this makes sense, if you have any questions or want me to expand on any of this just drop me a comment or send me an email.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;Thanks&lt;br /&gt;Sean J Connolly&lt;br /&gt;&lt;a href="http://astore.amazon.co.uk/ajaxwebstore-21"&gt;Visit AJAX Web Development Store&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;hr /&gt;&lt;br /&gt;&lt;a href="http://www.file-manager.co.uk/"&gt;DMS&lt;/a&gt; - Document Management, Webmail&lt;br /&gt;&lt;a href="http://www.buzzproperties.co.uk/"&gt;BuzzProperties.co.uk&lt;/a&gt; - Online Property Sales and Letting&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;hr /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5392486931889201133-3277526619174218579?l=google-checkout-api.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/GoogleCheckoutApi/~4/oHbyCqpCnVY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://google-checkout-api.blogspot.com/feeds/3277526619174218579/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5392486931889201133&amp;postID=3277526619174218579" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5392486931889201133/posts/default/3277526619174218579?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5392486931889201133/posts/default/3277526619174218579?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GoogleCheckoutApi/~3/oHbyCqpCnVY/how-to-check-google-checkout-api-has.html" title="How to check Google Checkout API has reached your callback page" /><author><name>Sean J Connolly</name><uri>http://www.blogger.com/profile/09667570138975276323</uri><email>sean.connolly@potissimus.co.uk</email><gd:extendedProperty name="OpenSocialUserId" value="06728872125888826954" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://google-checkout-api.blogspot.com/2008/07/how-to-check-google-checkout-api-has.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0AER346eSp7ImA9WxdSFEs.&quot;"><id>tag:blogger.com,1999:blog-5392486931889201133.post-5424976294036562955</id><published>2008-05-22T14:33:00.002+01:00</published><updated>2008-05-22T15:15:06.011+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-05-22T15:15:06.011+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Google Map Api" /><category scheme="http://www.blogger.com/atom/ns#" term="search api results" /><category scheme="http://www.blogger.com/atom/ns#" term="why do I get different search results from the Google search API" /><category scheme="http://www.blogger.com/atom/ns#" term="google search api" /><title>Google Search API Results</title><content type="html">&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;You may be custom to using the Google APIs for adding to your website or web application. I thought I would write a bit about why the results are not the same as the live Google system.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;The 2 main API's that are used by developers from the Google network are the Map API and the search API, although there are other APIs in the Google arsenal, the Google Map API and Google Search API are 2 that return data.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;The main question that I get asked is "Why do I get different results from using the API than that I do from using Google?".&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;The answer is mainly a two fold problem.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;1. The issue with the API that relies on third party data, such as the Google Maps API, as most of the data Google uses for this API is not actually owned by Google. This is particularly true when it comes to the geo-coding, that is taken specific address information and turning into actual latitude and longitude on the planet for the Google Map to find. The main issue with this is that Google relies on purchased data to achieve this tasks, and in each country this is normally the postal services in that country. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;This mean s that there are restrictions on what Google can do with this data, this is the main reason why when using the Google Map API you get different results than the actual Google Maps website, the Google Maps website data is different from the Google Maps API, just because of the restrictions placed on Google by licensees / owners of the data.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;I know Google is working to improve the relationships and use of the data, so lets hope they can open up the world and the data in it.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;2. The next issue other than licensing of the data is where the data comes from, this mainly fits with the Google Search API, as the Google search network is main up of different data centres, all of which have slightly different data. So you may get different results due to a different data centre being used, and as google route to data is different from a search on the Google website to using the Google Search API then the results can often be different.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;It must also be pointed out that as a rtegisterd Google user Google remembers what you search for and improves your results, so when you use the Google website to search your results will be improved for a better match to what your looking for. However when you use the Google Search API this is not true, as the API returns raw data.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;So I think that although we can use the Google APIs to build a mini Google world, it will never be the same as Google. Which makes sense after all the great guys and gals at Google allows us to use most things for FREE, so keep this in mind when coding. Look at what you are trying to do and ask yourself what you really want to do.&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;Thanks&lt;br /&gt;Sean J Connolly&lt;br /&gt;&lt;a href="http://astore.amazon.co.uk/ajaxwebstore-21"&gt;Visit AJAX Web Development Store&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;hr /&gt;&lt;br /&gt;&lt;a href="http://notjustajax.blogspot.com/"&gt;NotJustAJAX&lt;/a&gt; - Techy Blog&lt;br /&gt;&lt;a href="http://www.file-manager.co.uk/"&gt;DMS&lt;/a&gt; - Document Management, Webmail&lt;br /&gt;&lt;a href="http://www.buzzproperties.co.uk/"&gt;BuzzProperties.co.uk&lt;/a&gt; - Online Property Sales and Letting&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;hr /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5392486931889201133-5424976294036562955?l=google-checkout-api.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/GoogleCheckoutApi/~4/hkYOGXji-3M" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://google-checkout-api.blogspot.com/feeds/5424976294036562955/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5392486931889201133&amp;postID=5424976294036562955" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5392486931889201133/posts/default/5424976294036562955?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5392486931889201133/posts/default/5424976294036562955?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GoogleCheckoutApi/~3/hkYOGXji-3M/google-search-api-results.html" title="Google Search API Results" /><author><name>Sean J Connolly</name><uri>http://www.blogger.com/profile/09667570138975276323</uri><email>sean.connolly@potissimus.co.uk</email><gd:extendedProperty name="OpenSocialUserId" value="06728872125888826954" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://google-checkout-api.blogspot.com/2008/05/google-search-api-results.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A04NQno_fCp7ImA9WxdTFE8.&quot;"><id>tag:blogger.com,1999:blog-5392486931889201133.post-5342399600926308834</id><published>2008-05-10T14:35:00.006+01:00</published><updated>2008-05-10T15:33:13.444+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-05-10T15:33:13.444+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="robots.txt" /><category scheme="http://www.blogger.com/atom/ns#" term="robots file" /><category scheme="http://www.blogger.com/atom/ns#" term="sitemap" /><category scheme="http://www.blogger.com/atom/ns#" term="xml sitemap" /><category scheme="http://www.blogger.com/atom/ns#" term="website map" /><category scheme="http://www.blogger.com/atom/ns#" term="robots.txt file" /><category scheme="http://www.blogger.com/atom/ns#" term="html sitemap" /><title>Robots.txt, SiteMaps - what are they and how do I use them?</title><content type="html">&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;I thought I would touch on what exactly a website map or sitemap is and how to make one and what to do with it. I will also talk about the robots.txt&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Robots.txt&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;What is this?&lt;br /&gt;&lt;br /&gt;The robots.txt file is a file you place on your website to tell the web spiders where they can and cannot go on your website.&lt;br /&gt;&lt;br /&gt;One word of caution is that although the good web spiders will keep out of your website according to this file, others will not. So if you have content you really don't want to be seen, either move it, password protect it or whatever.&lt;br /&gt;&lt;br /&gt;What does it look like?&lt;br /&gt;&lt;br /&gt;The robots.txt file is simple a text file called robots.txt.&lt;br /&gt;&lt;br /&gt;The main two parts to your robots.txt file are&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;"&gt;User-agent - this tells a specific spider what to do i.e Googlebot&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;"&gt;Disallow - this specifies which section of your site is restricted&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;"&gt;Allow - this specifies which section of your website is not restricted&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="FLOAT: right"&gt;&lt;iframe style="WIDTH: 120px; HEIGHT: 240px" marginheight="0" src="http://rcm-uk.amazon.co.uk/e/cm?t=potiweekwebst-21&amp;amp;o=2&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0470053852&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;The basic structure is&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;User-agent: Googlebot&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;Disallow:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;User-agent:*&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;Disallow:/&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;This example simply says that only Google can visit your website, and all other spiders are not allowed to visit. To restrict specific folders or files just do:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;Disallow:/afoldername (this restricts access to http://www.yoursite.com/afoldername)&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;Disallow:/getoff.htm (this restricts access to http://www.yoursite.com/getoff.htm)&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;So an example which says that you want everything except your images folder spidered looks like:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;User-agent:*&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;Disallow:/images&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;This means everything except your images folder will be spidered.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;Why use it?&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;The purpose behind the robots.txt file is to give a route into your website, and if you have a large website you should restrict as much as possible, as the spiders will only spend so much time on your website. So the best thing to do is hide content they cannot see anyway, such as images.&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;span style="FLOAT: left"&gt;&lt;iframe style="WIDTH: 120px; HEIGHT: 240px" marginheight="0" src="http://rcm-uk.amazon.co.uk/e/cm?t=potiweekwebst-21&amp;amp;o=2&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0330440055&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;Where to put it.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;One your have created a robots.txt file, simply uploaded it to the root directory of your website, that is the http://www.yourwebsite.com location on your server, and you should be able to view it on your website as http://www.yourwebsite.com/robots.txt &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;Website Map or Sitemap&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;What is a website map or sitemap&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;The purpose of a sitemap if that it gives both the search engine spiders a useful map to follow when looking at your website, but it does the same for your users. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;The search engines look at your site map and it give them an updated view of your website, which helps keep the indexing of your website up to date in the seaarch engine listings.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-family:trebuchet ms;"&gt;What does it look like&lt;br /&gt;&lt;br /&gt;The website map or sitemap comes in 3 forms&lt;br /&gt;&lt;/span&gt;&lt;span style="FLOAT: right"&gt;&lt;br /&gt;&lt;iframe style="WIDTH: 120px; HEIGHT: 240px" marginheight="0" src="http://rcm-uk.amazon.co.uk/e/cm?t=potiweekwebst-21&amp;amp;o=2&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=184078332X&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;"&gt;HTML Form - this is the one for your end users&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;An HTML sitemap can been any form you wish that gives a nice visual overview of your website, it is normally a cut down page on your website with a simply list of links on your website.&lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;"&gt;XML Sitemap - this is an XML list of your website, containing the links on your website, this is the one you submit to the search engines.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;The XML site map normally contains the following XML nodes&lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;"&gt;url&lt;br /&gt;&lt;/span&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;b&gt;loc&lt;/b&gt; - the url of the page&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;b&gt;lastmod&lt;/b&gt; - the modified date&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;b&gt;changefreq&lt;/b&gt; - how often page is updated&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;b&gt;priority&lt;/b&gt; - how important in your website is this page (0.0 - 1.0)&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span style="FLOAT: left"&gt;&lt;br /&gt;&lt;iframe style="WIDTH: 120px; HEIGHT: 240px" marginheight="0" src="http://rcm-uk.amazon.co.uk/e/cm?t=potiweekwebst-21&amp;amp;o=2&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=1857885023&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;The url node need to be repeated for each link on your website.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;Don't worry if it looks scary there are lots of good resources online to create your own XML website / sitemap.&lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.xml-sitemaps.com/"&gt;&lt;span style="font-family:trebuchet ms;"&gt;http://www.xml-sitemaps.com/&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://tools.webmasters.sk/sitemap-creator.php"&gt;&lt;span style="font-family:trebuchet ms;"&gt;http://tools.webmasters.sk/sitemap-creator.php&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.thesitemapper.com/"&gt;&lt;span style="font-family:trebuchet ms;"&gt;http://www.thesitemapper.com/&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;But a simple search will help you find lots of great sitemap creators, so you don't need to be scared.&lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;"&gt;Text Based - This is a text based version of your sitemap&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;The text sitemap is just a simple list of your links on your website&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;For Example &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;a href="http://www.buzzproperties.co.uk/"&gt;&lt;span style="font-family:trebuchet ms;"&gt;http://www.buzzproperties.co.uk/&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://buzzproperties.co.uk/"&gt;&lt;span style="font-family:trebuchet ms;"&gt;http://buzzproperties.co.uk/&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;span style="FLOAT: right"&gt;&lt;br /&gt;&lt;iframe style="WIDTH: 120px; HEIGHT: 240px" marginheight="0" src="http://rcm-uk.amazon.co.uk/e/cm?t=potiweekwebst-21&amp;amp;o=2&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=1905940491&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;Now I have my sitemap what do I do with it&lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;"&gt;Simply save each file with any name you like&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;"&gt;upload the file to your website root i.e &lt;/span&gt;&lt;a href="http://buzzproperties.co.uk/sitemap.xml"&gt;&lt;span style="font-family:trebuchet ms;"&gt;http://buzzproperties.co.uk/sitemap.xml&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;"&gt;Register for Google Webmaster Tools at &lt;/span&gt;&lt;a href="https://www.google.com/webmasters/tools"&gt;&lt;span style="font-family:trebuchet ms;"&gt;https://www.google.com/webmasters/tools&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;"&gt;Login to your webmaster tools account&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;"&gt;Add your website url into the add site box&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;"&gt;Click on your website in the list and click on Sitemaps on the left menu&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;"&gt;Click add a sitemap and enter the url of the sitemap on your website (your can add both the text and XMl sitemap to your listing)&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;Google will validate your sitemaps and if everything is OK it will let you know in the status.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;Google now knows about your sitemap, and everytime you make changes just update your sitemap and upload, and resubmit it - that is unless none of the links have changed.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;Thanks&lt;br /&gt;Sean J Connolly&lt;br /&gt;&lt;/span&gt;&lt;a href="http://astore.amazon.co.uk/ajaxwebstore-21"&gt;&lt;span style="font-family:trebuchet ms;"&gt;Visit AJAX Web Development Store&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;br /&gt;&lt;br /&gt;Follow me on Twitter - &lt;a href="http://twitter.com/seanjc"&gt;http://twitter.com/seanjc&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;Find me on MySpace - &lt;a href="http://www.myspace.com/seanjc"&gt;http://www.myspace.com/seanjc&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;Find me on FaceBook - &lt;a href="http://www.facebook.com/profile.php?id=567767993"&gt;http://www.facebook.com/profile.php?id=567767993&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/p&gt;&lt;/span&gt;&lt;hr /&gt;&lt;a href="http://www.file-manager.co.uk/"&gt;&lt;span style="font-family:trebuchet ms;"&gt;DMS&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:trebuchet ms;"&gt; - Document Management, Webmail&lt;br /&gt;&lt;/span&gt;&lt;a href="http://www.buzzproperties.co.uk/"&gt;&lt;span style="font-family:trebuchet ms;"&gt;BuzzProperties.co.uk&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:trebuchet ms;"&gt; - Online Property Sales and Letting&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;hr /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5392486931889201133-5342399600926308834?l=google-checkout-api.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/GoogleCheckoutApi/~4/v9hJI9Ovtlg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://google-checkout-api.blogspot.com/feeds/5342399600926308834/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5392486931889201133&amp;postID=5342399600926308834" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5392486931889201133/posts/default/5342399600926308834?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5392486931889201133/posts/default/5342399600926308834?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GoogleCheckoutApi/~3/v9hJI9Ovtlg/robotstxt-sitemaps-what-are-they-and.html" title="Robots.txt, SiteMaps - what are they and how do I use them?" /><author><name>Sean J Connolly</name><uri>http://www.blogger.com/profile/09667570138975276323</uri><email>sean.connolly@potissimus.co.uk</email><gd:extendedProperty name="OpenSocialUserId" value="06728872125888826954" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://google-checkout-api.blogspot.com/2008/05/robotstxt-sitemaps-what-are-they-and.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08HQX45eCp7ImA9WxZbGEU.&quot;"><id>tag:blogger.com,1999:blog-5392486931889201133.post-3838297346112183811</id><published>2008-04-22T17:18:00.004+01:00</published><updated>2008-04-22T17:30:30.020+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-04-22T17:30:30.020+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Google Checkout" /><category scheme="http://www.blogger.com/atom/ns#" term="java.net.SocketTimeoutException: Read timed out" /><title>java.net.SocketTimeoutException: Read timed out</title><content type="html">&lt;span style="font-family:verdana;"&gt;On occassions when you are testing against the Google API you may get the following error message&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;strong&gt;&lt;span style="font-family:verdana;"&gt;java.net.SocketTimeoutException: Read timed out&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;The error is a simple one to correct. In short its your fault. There is an error in your coding and something has not finished processing, and in short you have probably crashed your webserver.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;&lt;strong&gt;To Fix&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;Check your code&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;Look at your webserver logfile for the page that was causing the error&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;If necessary run debugging tools on your web server to find the error.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;You can assign application pools to your website, this is advisable as you will only crash the pool not not the box.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;Thanks&lt;br /&gt;Sean J Connolly&lt;br /&gt;&lt;a href="http://astore.amazon.co.uk/ajaxwebstore-21"&gt;Visit AJAX Web Development Store&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;hr /&gt;&lt;br /&gt;&lt;a href="http://www.file-manager.co.uk/"&gt;DMS&lt;/a&gt; - Document Management, Webmail&lt;br /&gt;&lt;a href="http://www.buzzproperties.co.uk/"&gt;BuzzProperties.co.uk&lt;/a&gt; - Online Property Sales and Letting&lt;br /&gt;&lt;/span&gt;&lt;hr /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5392486931889201133-3838297346112183811?l=google-checkout-api.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/GoogleCheckoutApi/~4/FHSdWNKM1Qg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://google-checkout-api.blogspot.com/feeds/3838297346112183811/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5392486931889201133&amp;postID=3838297346112183811" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5392486931889201133/posts/default/3838297346112183811?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5392486931889201133/posts/default/3838297346112183811?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GoogleCheckoutApi/~3/FHSdWNKM1Qg/javanetsockettimeoutexception-read.html" title="java.net.SocketTimeoutException: Read timed out" /><author><name>Sean J Connolly</name><uri>http://www.blogger.com/profile/09667570138975276323</uri><email>sean.connolly@potissimus.co.uk</email><gd:extendedProperty name="OpenSocialUserId" value="06728872125888826954" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://google-checkout-api.blogspot.com/2008/04/javanetsockettimeoutexception-read.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0ANSXo5fSp7ImA9WxZbGEU.&quot;"><id>tag:blogger.com,1999:blog-5392486931889201133.post-8542794623688147730</id><published>2008-04-22T17:06:00.003+01:00</published><updated>2008-04-22T17:29:58.425+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-04-22T17:29:58.425+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Google checkout sandbox ssl" /><category scheme="http://www.blogger.com/atom/ns#" term="sandbox ssl" /><title>SandBox and SSL</title><content type="html">&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;span style="font-family:verdana;"&gt;To answer a lot of questions people have been asking about the test environment and the live environment and the use of ssl.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;When you are testing against Google Sandbox environment you do not need to use an SSL secured area to carryout your testing. All you need to do is specify a not SSL secured page, i.e http not https connection for your testing.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;Whne you go live you must use an SSL secured area, although Google will communicate with a non SSL secured area it is not advisable to send your payment information over an unsecured connection.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;So in closing&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:verdana;"&gt;Sandbox - you do not need to use an SSL area or certificate when developing&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:verdana;"&gt;Live / Production - you must use an SSL area or certifcate when deploying your application.&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;Thanks&lt;br /&gt;Sean J Connolly&lt;br /&gt;&lt;a href="http://astore.amazon.co.uk/ajaxwebstore-21"&gt;Visit AJAX Web Development Store&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;hr /&gt;&lt;br /&gt;&lt;a href="http://www.file-manager.co.uk/"&gt;DMS&lt;/a&gt; - Document Management, Webmail&lt;br /&gt;&lt;a href="http://www.buzzproperties.co.uk/"&gt;BuzzProperties.co.uk&lt;/a&gt; - Online Property Sales and Letting&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;hr /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5392486931889201133-8542794623688147730?l=google-checkout-api.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/GoogleCheckoutApi/~4/fLa9NrjMxlU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://google-checkout-api.blogspot.com/feeds/8542794623688147730/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5392486931889201133&amp;postID=8542794623688147730" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5392486931889201133/posts/default/8542794623688147730?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5392486931889201133/posts/default/8542794623688147730?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GoogleCheckoutApi/~3/fLa9NrjMxlU/sandbox-and-ssl.html" title="SandBox and SSL" /><author><name>Sean J Connolly</name><uri>http://www.blogger.com/profile/09667570138975276323</uri><email>sean.connolly@potissimus.co.uk</email><gd:extendedProperty name="OpenSocialUserId" value="06728872125888826954" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://google-checkout-api.blogspot.com/2008/04/sandbox-and-ssl.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Dk4GQXkyeyp7ImA9WxZaFUo.&quot;"><id>tag:blogger.com,1999:blog-5392486931889201133.post-2509020943731941763</id><published>2008-04-18T17:47:00.003+01:00</published><updated>2008-04-30T18:02:00.793+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-04-30T18:02:00.793+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="google checkout api" /><category scheme="http://www.blogger.com/atom/ns#" term="google checkout html api" /><category scheme="http://www.blogger.com/atom/ns#" term="xml api" /><category scheme="http://www.blogger.com/atom/ns#" term="receive xml response from google checkout" /><title>How to process Order Response from Google Checkout</title><content type="html">In this article I am going to look at what you need to do to process the returned response from the &lt;a href="http://www.amazon.co.uk/gp/search?ie=UTF8&amp;keywords=google%20api&amp;tag=ajaxwebstore-21&amp;index=books&amp;linkCode=ur2&amp;camp=1634&amp;creative=6738"&gt;Google&lt;/a&gt;&lt;img src="http://www.assoc-amazon.co.uk/e/ir?t=ajaxwebstore-21&amp;amp;l=ur2&amp;amp;o=2" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; Checkout API.&lt;br /&gt;&lt;br /&gt;This article assumes you have read the first article and by the point of reading this article have managed to pass an order into Google Checkout, and got through the process to the thank you screen.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;NOTE &lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;This article also assumes that they are no errors in anything, and all API transactions Google Checkout sends baack are received and processed withut any problems.&lt;br /&gt;&lt;br /&gt;I will address some problems you may encounter in my next article.&lt;br /&gt;&lt;br /&gt;So how do you process the response from &lt;a href="http://www.amazon.co.uk/gp/search?ie=UTF8&amp;keywords=google%20api&amp;tag=ajaxwebstore-21&amp;index=books&amp;linkCode=ur2&amp;camp=1634&amp;creative=6738"&gt;Google&lt;/a&gt;&lt;img src="http://www.assoc-amazon.co.uk/e/ir?t=ajaxwebstore-21&amp;amp;l=ur2&amp;amp;o=2" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; Checkout.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;Prerequisite &lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Before we begin please make sure that you have the following be going on.&lt;br /&gt;&lt;ol&gt;&lt;li&gt;An understanding of Classic ASP and how XML works&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Both a &lt;a href="https://checkout.google.com/sell/"&gt;Google Checkout Account&lt;/a&gt; and &lt;a href="https://sandbox.google.com/checkout/"&gt;Google Checkout Sandbox&lt;/a&gt; Account&lt;br /&gt;&lt;/li&gt;&lt;li&gt;A Copy of the Classic ASP Sample Code - &lt;a href="http://code.google.com/apis/checkout/samplecode.html"&gt;Get a Copy Here&lt;/a&gt; &lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;br /&gt;Your website should already be at the point where all product information is passed to Google Checkout and you can complete a transaction with any problems.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Step 1&lt;/strong&gt; - Check your settings&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The first thing to do is to make sure that you are actually asking Google Checkout to send you some sort of response.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://bp0.blogger.com/_a7ctZ_dTFZ0/SAjS2bCh7UI/AAAAAAAAACg/rJMyn5MWVvQ/s1600-h/setupcallback.gif"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5190630402957634882" border="0" alt="" src="http://bp0.blogger.com/_a7ctZ_dTFZ0/SAjS2bCh7UI/AAAAAAAAACg/rJMyn5MWVvQ/s320/setupcallback.gif" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Make sure that the For Extra security... tick box is unchecked (if you leave this checked you will get URL errors when posting your order form to Google)&lt;/li&gt;&lt;li&gt;Make sue the XML option is selected for the Callback Method (this means Google will send XML to your callback page and not name/value pairs)&lt;/li&gt;&lt;li&gt;Enter your url of where your callback.asp page will be hosted. (when testing in sandbox this URL does not have to be SSL secured and can use the normal HTTP protocol&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;strong&gt;Step 2&lt;/strong&gt; - Catching the response&lt;/p&gt;&lt;p&gt;We are asking Google Checkout to pass us XML as a response so we need to do something with this. Again we are going to make our life a bit easier and make use of the Google Checkout code sample. We coudl how ever just parse the parent/child node from the XML and do what ever we like.&lt;/p&gt;&lt;p&gt;This will be covered in a later article around using .Net to send and receive sales to &lt;a href="http://www.amazon.co.uk/gp/search?ie=UTF8&amp;keywords=google%20api&amp;tag=ajaxwebstore-21&amp;index=books&amp;linkCode=ur2&amp;camp=1634&amp;creative=6738"&gt;Google&lt;/a&gt;&lt;img src="http://www.assoc-amazon.co.uk/e/ir?t=ajaxwebstore-21&amp;amp;l=ur2&amp;amp;o=2" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; Checkout.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;What do we get from Google&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.amazon.co.uk/gp/search?ie=UTF8&amp;keywords=google%20api&amp;tag=ajaxwebstore-21&amp;index=books&amp;linkCode=ur2&amp;camp=1634&amp;creative=6738"&gt;Google&lt;/a&gt;&lt;img src="http://www.assoc-amazon.co.uk/e/ir?t=ajaxwebstore-21&amp;amp;l=ur2&amp;amp;o=2" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; Checkout sends mainly two types of response to our callback.asp page.&lt;/p&gt;&lt;ol&gt;&lt;li&gt;the new-order-notification - the first response letting us know there is a new Google Checkout order and order number.&lt;/li&gt;&lt;li&gt;the order-state-change-notification - this is sent everytime the status of the order changes, such as the card being charged, etc&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;This is not to say these are the only notifications sent from Google, as in addition to the above there are also notifications sent for&lt;/p&gt;&lt;ol&gt;&lt;li&gt;risk-information-notification - any information Google Receives about the risk of doing this order they will pass on.&lt;/li&gt;&lt;li&gt;charge-amount-notification - the amount charged to the card&lt;/li&gt;&lt;li&gt;chargeback-amount-notifcation - the amount that is placed on the card as chargeback&lt;/li&gt;&lt;li&gt;refund-amount-notification - any refund amount that has been issued&lt;/li&gt;&lt;li&gt;authorization-amount-notification - the actual amount that was authorized for payment&lt;/li&gt;&lt;li&gt;merchant-calculation-callback - the calculation the merchant has asked for and the response&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Now to make life a whole lot easier we are going to only implement the top 2 points of the API calls, as we are really only interested in&lt;/p&gt;&lt;ol&gt;&lt;li&gt;The fact that we have a new order and what the Google Checkout Order Number is&lt;/li&gt;&lt;li&gt;What is the status of the payment of this order.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;The main file that we are going to use to process new orders is the callback.asp file which is provided in the sample source code from Google.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;CallBack.asp&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Inside this file there are two things that we want to predominantly do&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Receive the first response from Google, this will contain the Google Order Number.&lt;/li&gt;&lt;li&gt;Receive the status of the buyers payment, such as PROCESSING, CHARGED or what ever.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;strong&gt;Ok, so how do we do it?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Firstly inside this file there is a function called &lt;strong&gt;ProcessNewOrderNotification &lt;/strong&gt;this function simply pulls in the &lt;a href="http://www.amazon.co.uk/gp/search?ie=UTF8&amp;keywords=XML&amp;tag=ajaxwebstore-21&amp;index=books&amp;linkCode=ur2&amp;camp=1634&amp;creative=6738"&gt;XML&lt;/a&gt;&lt;img src="http://www.assoc-amazon.co.uk/e/ir?t=ajaxwebstore-21&amp;amp;l=ur2&amp;amp;o=2" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; response from Google and parses it out into an array called &lt;strong&gt;MyNewOrder.&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Inside this function we simply loop through the array and pull out what we want. Again out lovely friends at Google have already done this for you.&lt;/p&gt;&lt;p&gt;You will see a For Next loop which passed the array elements out and puts these into a variable called &lt;strong&gt;MyNewOrder&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;We then just need to carryout some type of action to capture the information we want. So lets say we want to capture the Google Checkout order number and update our website with this information.&lt;/p&gt;&lt;p&gt;Here we simply take the variable &lt;strong&gt;MyNewOrder.GoogleOrdeNumber &lt;/strong&gt;and a value we need at this point to identify this order on our own system, let use the unique merchant-item-id we passed in from our form and call the &lt;strong&gt;MyItem.MerchantItemId&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;All you do then is pass these values to somewhere you want to do something with them, if you simply are going to pass these to another page for processing your would do.&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Create a variable with the url string containing the location of the page for processing i.e "https://yourdomain.com/processneworder.asp?GoogleOrderNumber=" &amp;amp; &lt;strong&gt;MyNewOrder.GoogleOrderNumber&lt;/strong&gt; &amp;amp; "&amp;amp;ItemID=" &amp;amp; &lt;strong&gt;MyItem.MerchantItemId&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;Then simply redirect the response to your new page, jsut after the SendAck command with the current sub routine.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;em&gt;For Example&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;At around line 92 you enter the following code&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Dim PostingURLString&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;PostingURLString = "https://yourdomain.com/processneworder.asp?GoogleOrderNumber=" &amp;amp; MyNewOrder.GoogleOrderNumber &amp;amp; "&amp;amp;username=" &amp;amp; MyItem.MerchantItemId &amp;amp; "&amp;amp;licensetype=" &amp;amp; left(MyItem.Name,5)&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;em&gt;Then at around line 183 your do you redirection to your processing page&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Response.Redirect(PostingURL)&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;You can take any of the values from the array and XMl response from Google, but in this example we are only taking the basic information we need.&lt;/p&gt;&lt;ol&gt;&lt;li&gt;The Google Order Numder for our new order&lt;/li&gt;&lt;li&gt;Our unique identifier to allow us to link the new order number with our order&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Step 3 - the ongoing status&lt;/p&gt;&lt;p&gt;Up to this point we now are able to send the order to Google and we have updated our website to reflect this fact that our order send from our form, has now been received by Google Checkout and we have been given an order number.&lt;/p&gt;&lt;p&gt;The next thing we want to be concerned with is the ongoing status of the order and the most important thing, when have we received our money.&lt;/p&gt;&lt;p&gt;For this we are concerned with the &lt;strong&gt;ProcessOrderStateChangeNotification &lt;/strong&gt;function, this function lets us track the payment process of the order and take the necessary action when an order is processed.&lt;/p&gt;&lt;p&gt;Again Google has taken care of the leg work for this case, and has passed the XML response sent from the Google Checkout API into an &lt;a href="http://www.amazon.co.uk/gp/search?ie=UTF8&amp;keywords=array&amp;tag=ajaxwebstore-21&amp;index=books&amp;linkCode=ur2&amp;camp=1634&amp;creative=6738"&gt;array&lt;/a&gt;&lt;img src="http://www.assoc-amazon.co.uk/e/ir?t=ajaxwebstore-21&amp;amp;l=ur2&amp;amp;o=2" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;, so all we really want to know is that when have we been paid, for this we call upon the &lt;strong&gt;MyOrderState.NewFinancialOrderState&lt;/strong&gt; variable and simply use the code provided, and when this variable matches the payment status we want we do something.&lt;/p&gt;&lt;p&gt;On around line 255 of callback.asp you will see a select statement with all the possible options already taken card of, so all we need to do is simply add our custom action to the right choice.&lt;/p&gt;&lt;p&gt;For Example&lt;/p&gt;&lt;p&gt;Lets say we only care when we get paid all we do is add your action in the select statement for when the case matches CHARGED. So again we could pass this fact to a different page to process our order, and as the Google Order numbers as unique we can use the order number to pass to our website to provide a unique identifier to process this order.&lt;/p&gt;&lt;p&gt;This is as follows&lt;/p&gt;&lt;p&gt;On around line 252 we code&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;Dim UpdateURLString&lt;br /&gt;UpdateURLString = "https://yourdomain.com/PageToUpdateOrderPaymentHistory.asp?GoogleOrderNumber=" &amp;amp; GoogleOrderNumber &amp;amp; "&amp;amp;GoogleStatus=" &amp;amp; MyOrderState.NewFinancialOrderState &amp;amp; "&amp;amp;GoogleReason=" &amp;amp; Reason&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;In this example we are passing the Google Order Number, the Payment Status and the Reason to our chosen URL.&lt;/p&gt;&lt;p&gt;Again we the can simply do a redirection to pass this information to our website to inform it of the new payment status.&lt;/p&gt;&lt;p&gt;So within the CHARGED section of the select statement your simply enter - &lt;em&gt;line 273ish&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Response.Redirect(UpdateURLString)&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;This example only passes information to our website on the new order and then when a successful payment is made, you could keep your website up to date with the payment status by simply putting the response.redirect statement within each case of the select statement. The details in the URL will change and allow you to update your order status on your website.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;NOTE - the UpdateURLString must be created outside the Select Statement&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;This blog is aimed at giving you a basic insight into how to pass and retrieve an order using Google Checkout, there are a lot more options but using this blog you will be able to pass and create the order using Google.&lt;/p&gt;&lt;p&gt;Happy Coding.&lt;/p&gt;&lt;p&gt;Any Questions Just let me know&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5392486931889201133-2509020943731941763?l=google-checkout-api.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/GoogleCheckoutApi/~4/cY5LdVFKioI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://google-checkout-api.blogspot.com/feeds/2509020943731941763/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5392486931889201133&amp;postID=2509020943731941763" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5392486931889201133/posts/default/2509020943731941763?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5392486931889201133/posts/default/2509020943731941763?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GoogleCheckoutApi/~3/cY5LdVFKioI/how-to-process-order-response-from.html" title="How to process Order Response from Google Checkout" /><author><name>Sean J Connolly</name><uri>http://www.blogger.com/profile/09667570138975276323</uri><email>sean.connolly@potissimus.co.uk</email><gd:extendedProperty name="OpenSocialUserId" value="06728872125888826954" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://bp0.blogger.com/_a7ctZ_dTFZ0/SAjS2bCh7UI/AAAAAAAAACg/rJMyn5MWVvQ/s72-c/setupcallback.gif" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://google-checkout-api.blogspot.com/2008/04/how-to-process-order-response-from.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkABSXY-fCp7ImA9WxZaFUo.&quot;"><id>tag:blogger.com,1999:blog-5392486931889201133.post-7697293033421390867</id><published>2008-04-18T15:22:00.002+01:00</published><updated>2008-04-30T17:59:18.854+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-04-30T17:59:18.854+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="google checkout api" /><category scheme="http://www.blogger.com/atom/ns#" term="google checkout html api" /><category scheme="http://www.blogger.com/atom/ns#" term="sending order to google checkout" /><title>How to Send Order to Google Checkout (classic ASP)</title><content type="html">&lt;a href="http://bp2.blogger.com/_a7ctZ_dTFZ0/SAkQQrCh7WI/AAAAAAAAADI/HlklCs0NFC4/s1600-h/smb_v1_logo_1_0.gif"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5190697924138495330" border="0" alt="" src="http://bp2.blogger.com/_a7ctZ_dTFZ0/SAkQQrCh7WI/AAAAAAAAADI/HlklCs0NFC4/s320/smb_v1_logo_1_0.gif" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:verdana;"&gt;This guide is aimed at anyone who wishes to use the Google Checkout to process transactions from their website. This section will concentrate passsing your order into Google using an on page form.&lt;br /&gt;&lt;br /&gt;We will make use of the provided code by the Google Team, as they have done all the leg work, so make use of it.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;Prerequisite&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Before we begin please make sure that you have the following be going on. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;An understanding of &lt;a href="http://www.amazon.co.uk/gp/search?ie=UTF8&amp;amp;keywords=asp&amp;amp;tag=ajaxwebstore-21&amp;amp;index=books&amp;amp;linkCode=ur2&amp;amp;camp=1634&amp;amp;creative=6738"&gt;Classic ASP&lt;/a&gt;&lt;img style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; MARGIN: 0px; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none" border="0" alt="" src="http://www.assoc-amazon.co.uk/e/ir?t=ajaxwebstore-21&amp;amp;l=ur2&amp;amp;o=2" width="1" height="1" /&gt; and how XML works&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;Both a &lt;/span&gt;&lt;a href="https://checkout.google.com/sell/"&gt;&lt;span style="font-family:verdana;"&gt;Google Checkout Account&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:verdana;"&gt; and &lt;/span&gt;&lt;a href="https://sandbox.google.com/checkout/"&gt;&lt;span style="font-family:verdana;"&gt;Google Checkout Sandbox&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:verdana;"&gt; Account&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;A Copy of the Classic ASP Sample Code - &lt;/span&gt;&lt;a href="http://code.google.com/apis/checkout/samplecode.html"&gt;&lt;span style="font-family:verdana;"&gt;Get a Copy Here&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:verdana;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;Your website should already be at the point where all product information is able to be passed to Google.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;span style="font-family:verdana;"&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;The Process&lt;/span&gt;&lt;/strong&gt; &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;&lt;strong&gt;Step 1&lt;/strong&gt; - Setup your environment&lt;/span&gt;&lt;span style="font-family:verdana;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;Once you have downloaded the sample code, extract the complete contents of the Zip file into the location you are going to run the code from. What I would suggest is that you keep the Google code in its own folder within your website, thsi will make using it alot easier.&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;&lt;strong&gt;Step 2&lt;/strong&gt; - Get your Merchant ID and Key&lt;/span&gt;&lt;span style="font-family:verdana;"&gt; &lt;/p&gt;&lt;/span&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;Login to your Google Checkout Sandbox Account - &lt;/span&gt;&lt;a href="https://sandbox.google.com/checkout/"&gt;&lt;span style="font-family:verdana;"&gt;https://sandbox.google.com/checkout/&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:verdana;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;span style="font-family:verdana;"&gt;Click on the settings tab at the top of the screen, then click on the integration option from the left menu.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;a href="http://bp0.blogger.com/_a7ctZ_dTFZ0/SAi6VbCh7RI/AAAAAAAAACI/CPW7rbrexEI/s1600-h/integrationcentre.gif"&gt;&lt;span style="font-family:verdana;"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5190603447742885138" border="0" alt="" src="http://bp0.blogger.com/_a7ctZ_dTFZ0/SAi6VbCh7RI/AAAAAAAAACI/CPW7rbrexEI/s320/integrationcentre.gif" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/center&gt;&lt;span style="font-family:verdana;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="font-family:verdana;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:verdana;"&gt;Make a note of your Gooogle Merchant ID and Google Merchant Key from the right of the screen.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://bp1.blogger.com/_a7ctZ_dTFZ0/SAi7VrCh7SI/AAAAAAAAACQ/6gnvNJJ6yDM/s1600-h/merchantdetails.gif"&gt;&lt;span style="font-family:verdana;"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5190604551549480226" border="0" alt="" src="http://bp1.blogger.com/_a7ctZ_dTFZ0/SAi7VrCh7SI/AAAAAAAAACQ/6gnvNJJ6yDM/s320/merchantdetails.gif" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:verdana;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family:verdana;"&gt;NOTE - Your Sandbox Merchant ID and Merchant Key are different to your Live / Production details.&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;&lt;strong&gt;Step 3&lt;/strong&gt; - Setup the details for your call back page.&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;Make sure that the For Extra security... tick box is unchecked (if you leave this checked you will get URL errors when posting your order form to &lt;a href="http://www.amazon.co.uk/gp/search?ie=UTF8&amp;amp;keywords=Google&amp;amp;tag=ajaxwebstore-21&amp;amp;index=books&amp;amp;linkCode=ur2&amp;amp;camp=1634&amp;amp;creative=6738"&gt;Google&lt;/a&gt;&lt;img style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; MARGIN: 0px; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none" border="0" alt="" src="http://www.assoc-amazon.co.uk/e/ir?t=ajaxwebstore-21&amp;amp;l=ur2&amp;amp;o=2" width="1" height="1" /&gt;)&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;Make sue the &lt;a href="http://www.amazon.co.uk/gp/search?ie=UTF8&amp;amp;keywords=XML&amp;amp;tag=ajaxwebstore-21&amp;amp;index=books&amp;amp;linkCode=ur2&amp;amp;camp=1634&amp;amp;creative=6738"&gt;XML&lt;/a&gt;&lt;img style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; MARGIN: 0px; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none" border="0" alt="" src="http://www.assoc-amazon.co.uk/e/ir?t=ajaxwebstore-21&amp;amp;l=ur2&amp;amp;o=2" width="1" height="1" /&gt; option is selected for the Callback Method (this means Google will send &lt;a href="http://www.amazon.co.uk/gp/search?ie=UTF8&amp;amp;keywords=XML&amp;amp;tag=ajaxwebstore-21&amp;amp;index=books&amp;amp;linkCode=ur2&amp;amp;camp=1634&amp;amp;creative=6738"&gt;XML&lt;/a&gt;&lt;img style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; MARGIN: 0px; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none" border="0" alt="" src="http://www.assoc-amazon.co.uk/e/ir?t=ajaxwebstore-21&amp;amp;l=ur2&amp;amp;o=2" width="1" height="1" /&gt; to your callback page and not name/value pairs)&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;Enter your url of where your callback.asp page will be hosted. (when testing in sandbox this URL does not have to be &lt;a href="http://www.amazon.co.uk/gp/search?ie=UTF8&amp;amp;keywords=SSL&amp;amp;tag=ajaxwebstore-21&amp;amp;index=books&amp;amp;linkCode=ur2&amp;amp;camp=1634&amp;amp;creative=6738"&gt;SSL&lt;/a&gt;&lt;img style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; MARGIN: 0px; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none" border="0" alt="" src="http://www.assoc-amazon.co.uk/e/ir?t=ajaxwebstore-21&amp;amp;l=ur2&amp;amp;o=2" width="1" height="1" /&gt; secured and can use the normal HTTP protocol&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;span style="font-family:verdana;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://bp1.blogger.com/_a7ctZ_dTFZ0/SAi9YrCh7TI/AAAAAAAAACY/ydym0RzqaKI/s1600-h/setupcallback.gif"&gt;&lt;span style="font-family:verdana;"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5190606802112343346" border="0" alt="" src="http://bp1.blogger.com/_a7ctZ_dTFZ0/SAi9YrCh7TI/AAAAAAAAACY/ydym0RzqaKI/s320/setupcallback.gif" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;span style="font-family:verdana;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;strong&gt;Step 4&lt;/strong&gt; - Setup Testing Details &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;Ok once you have made a note of your merchant id and key, you need to enter these in the correct locations in order to process your orders and receive stuff back from Google.&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;We also need to setup the sample code to work as test code, so all &lt;a href="http://www.amazon.co.uk/gp/search?ie=UTF8&amp;amp;keywords=ecommerce&amp;amp;tag=ajaxwebstore-21&amp;amp;index=books&amp;amp;linkCode=ur2&amp;amp;camp=1634&amp;amp;creative=6738"&gt;transactions&lt;/a&gt;&lt;img style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; MARGIN: 0px; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none" border="0" alt="" src="http://www.assoc-amazon.co.uk/e/ir?t=ajaxwebstore-21&amp;amp;l=ur2&amp;amp;o=2" width="1" height="1" /&gt; can be done against out test environment.&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;Open the file &lt;strong&gt;googleglobal.asp&lt;/strong&gt; and do the following&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;Change the values of the two contstants &lt;strong&gt;MerchantId &lt;/strong&gt;and &lt;strong&gt;MerchantKey&lt;/strong&gt;. These should match your testing, sandbox details for testing.&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;Change the variable &lt;strong&gt;EnvType&lt;/strong&gt; to SANDBOX&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;Change the variable &lt;strong&gt;MerchantCurrency&lt;/strong&gt; to match your country currency, GBP, USD, etc.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family:verdana;"&gt;Note - Make sure all of the files contained in the code sample Zip file are location in the same folder&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;&lt;strong&gt;Step 5&lt;/strong&gt; - Create your page form&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;Now go into the page which you wish to submit to GoogleCheckout. This page is the one which will be passed directly to Google containing the order details.&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;On this page you need to create a form with a series of hidden fields&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;The basic fields are&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;item_price_1 - the price of the item&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;item_currency_1 - the currency for this item&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;item_quantity_1 - the amount of this item&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;item_description_1 - the description of this item&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;item_name_1 - the name of this item&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;If you are passing more item you can do so by &lt;a href="http://www.amazon.co.uk/gp/search?ie=UTF8&amp;amp;keywords=javascript&amp;amp;tag=ajaxwebstore-21&amp;amp;index=books&amp;amp;linkCode=ur2&amp;amp;camp=1634&amp;amp;creative=6738"&gt;incrementing&lt;/a&gt;&lt;img style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; MARGIN: 0px; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none" border="0" alt="" src="http://www.assoc-amazon.co.uk/e/ir?t=ajaxwebstore-21&amp;amp;l=ur2&amp;amp;o=2" width="1" height="1" /&gt; the number for example, iten_price_1, item_price_2 and so on.&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;In addition to the fields above you can additionally specific.&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;ship_method_name_1 - this is the carrier or delivery method&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;ship_method_price_1 - this is the cost of delivery for this item&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;Again for multiple items you can just increment the item number for example, ship_method_name_1, ship_method_name_2 and so on.&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;Now in addition to the item specific fields you can additionally specify any tax details, such as VAT or trade taxes you wish to apply to this order. &lt;a href="http://www.amazon.co.uk/gp/search?ie=UTF8&amp;amp;keywords=google%20api&amp;amp;tag=ajaxwebstore-21&amp;amp;index=books&amp;amp;linkCode=ur2&amp;amp;camp=1634&amp;amp;creative=6738"&gt;Google&lt;/a&gt;&lt;img style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; MARGIN: 0px; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none" border="0" alt="" src="http://www.assoc-amazon.co.uk/e/ir?t=ajaxwebstore-21&amp;amp;l=ur2&amp;amp;o=2" width="1" height="1" /&gt; will automatically add this on to your total for you at the checkout.&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;These fields are&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;tax_rate - this is the actual rate of tax as a decimal i.e 17.5% would be 0.175&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;tax_use_state - if in the US you must specify which state you are paying tax to.&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;continue-shopping-url - if you specify this the link the shopper clicks on the purchase complete page in the checkout will take them to this url.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;&lt;strong&gt;Form Target URL&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;Whilst in testing your form needs to post to&lt;br /&gt;&lt;span style="font-size:85%;color:#3333ff;"&gt;https://sandbox.google.com/checkout/cws/v2/Merchant/&lt;strong&gt;YOUR-MERCHANT_ID&lt;/strong&gt;/checkoutForm&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family:verdana;"&gt;Note - Replace YOUR-MERCHANT_ID with the merchant ID for your Sandbox account.&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family:verdana;"&gt;Form Sample&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;span style="font-family:verdana;"&gt;&amp;lt;form name="googleform" action="https://sandbox.google.com/checkout/cws/v2/Merchant/YOUR-MERCHANT-ID/checkoutForm" method="post" charset="utf-8"&amp;gt;&lt;br /&gt;&amp;lt;input type="hidden" value="Product_Name" name="item_name_1"&amp;gt;&lt;br /&gt;&amp;lt;input type="hidden" value="Product Description" name="item_description_1"&amp;gt;&lt;br /&gt;&amp;lt;input type="hidden" value="1" name="item_quantity_1"&amp;gt;&lt;br /&gt;&amp;lt;input type="hidden" value="99" name="item_price_1"&amp;gt;&lt;br /&gt;&amp;lt;input type="hidden" value="GBP" name="item_currency_1"&amp;gt;&lt;br /&gt;&amp;lt;input type="hidden" value="DHL" name="ship_method_name_1"&amp;gt;&lt;br /&gt;&amp;lt;input type="hidden" value="3.99" name="ship_method_price_1"&amp;gt;&lt;br /&gt;&amp;lt;input type="hidden" value="0.175" name="tax_rate"&amp;gt;&lt;br /&gt;&amp;lt;input type="hidden" value="NY" name="tax_us_state"&amp;gt;&amp;lt;/form&amp;gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;Once you have passed all your information into this form, you can now post this form directly to &lt;a href="http://www.amazon.co.uk/gp/search?ie=UTF8&amp;amp;keywords=google%20api&amp;amp;tag=ajaxwebstore-21&amp;amp;index=books&amp;amp;linkCode=ur2&amp;amp;camp=1634&amp;amp;creative=6738"&gt;Google&lt;/a&gt;&lt;img style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; MARGIN: 0px; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none" border="0" alt="" src="http://www.assoc-amazon.co.uk/e/ir?t=ajaxwebstore-21&amp;amp;l=ur2&amp;amp;o=2" width="1" height="1" /&gt; Checkout. All you need to do is submit this form, by which ever means you like.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Verdana;"&gt;In my next post I will look at what to do this the details you have passed into &lt;a href="http://www.amazon.co.uk/gp/search?ie=UTF8&amp;amp;keywords=google%20api&amp;amp;tag=ajaxwebstore-21&amp;amp;index=books&amp;amp;linkCode=ur2&amp;amp;camp=1634&amp;amp;creative=6738"&gt;Google&lt;/a&gt;&lt;img style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; MARGIN: 0px; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none" border="0" alt="" src="http://www.assoc-amazon.co.uk/e/ir?t=ajaxwebstore-21&amp;amp;l=ur2&amp;amp;o=2" width="1" height="1" /&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:Verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;hr /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:Verdana;"&gt;Sean J Connolly - AJAX and GIS Specialist&lt;/span&gt;&lt;br /&gt;&lt;a href="http://www.potissimus.co.uk/"&gt;&lt;span style="font-family:verdana;"&gt;http://www.potissimus.co.uk&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:Verdana;"&gt;&lt;a href="http://www.buzzproperties.co.uk/"&gt;http://www.buzzproperties.co.uk/&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;MY Other Blogs&lt;/span&gt;&lt;br /&gt;&lt;a href="http://notjustajax.blogspot.com/"&gt;&lt;span style="font-family:verdana;"&gt;http://notjustajax.blogspot.com/&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://weeklywebsitetips.blogspot.com/"&gt;&lt;span style="font-family:verdana;"&gt;http://weeklywebsitetips.blogspot.com/&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://ghostystuff.blogspot.com/"&gt;&lt;span style="font-family:verdana;"&gt;http://ghostystuff.blogspot.com/&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://tipstosellyourhouse.blogspot.com/"&gt;&lt;span style="font-family:verdana;"&gt;http://tipstosellyourhouse.blogspot.com/&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:Verdana;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5392486931889201133-7697293033421390867?l=google-checkout-api.blogspot.com'/&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/GoogleCheckoutApi/~4/CgsfXIEMI_4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://google-checkout-api.blogspot.com/feeds/7697293033421390867/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5392486931889201133&amp;postID=7697293033421390867" title="4 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5392486931889201133/posts/default/7697293033421390867?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5392486931889201133/posts/default/7697293033421390867?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GoogleCheckoutApi/~3/CgsfXIEMI_4/quick-guide-how-to-setup-html-api.html" title="How to Send Order to Google Checkout (classic ASP)" /><author><name>Sean J Connolly</name><uri>http://www.blogger.com/profile/09667570138975276323</uri><email>sean.connolly@potissimus.co.uk</email><gd:extendedProperty name="OpenSocialUserId" value="06728872125888826954" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://bp2.blogger.com/_a7ctZ_dTFZ0/SAkQQrCh7WI/AAAAAAAAADI/HlklCs0NFC4/s72-c/smb_v1_logo_1_0.gif" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total><feedburner:origLink>http://google-checkout-api.blogspot.com/2008/04/quick-guide-how-to-setup-html-api.html</feedburner:origLink></entry></feed>
