<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	
	>
<channel>
	<title>
	Comments on: Better E-Commerce Design using the Luhn Algorithm?	</title>
	<atom:link href="https://mikeindustries.com/blog/archive/2010/02/better-e-commerice-design-using-the-luhn-algorithm/feed" rel="self" type="application/rss+xml" />
	<link>https://mikeindustries.com/blog/archive/2010/02/better-e-commerice-design-using-the-luhn-algorithm</link>
	<description>A running commentary of occasionally interesting things — from Mike Davidson.</description>
	<lastBuildDate>Thu, 26 May 2016 06:34:26 +0000</lastBuildDate>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.3</generator>
	<item>
		<title>
		By: Barry Staes		</title>
		<link>https://mikeindustries.com/blog/archive/2010/02/better-e-commerice-design-using-the-luhn-algorithm#comment-69079</link>

		<dc:creator><![CDATA[Barry Staes]]></dc:creator>
		<pubDate>Thu, 12 Aug 2010 09:34:09 +0000</pubDate>
		<guid isPermaLink="false">https://mikeindustries.com/blog/?p=4148#comment-69079</guid>

					<description><![CDATA[Sorry, but this was around since 1999. Allas not for credit card numbers afaik, but  almost identical algoritm is used in validating some european bank account numbers, by javascript and in a website. Before that, it was used by just about any financial application to check for erroneous entries.]]></description>
			<content:encoded><![CDATA[<p>Sorry, but this was around since 1999. Allas not for credit card numbers afaik, but  almost identical algoritm is used in validating some european bank account numbers, by javascript and in a website. Before that, it was used by just about any financial application to check for erroneous entries.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Thomas		</title>
		<link>https://mikeindustries.com/blog/archive/2010/02/better-e-commerice-design-using-the-luhn-algorithm#comment-68545</link>

		<dc:creator><![CDATA[Thomas]]></dc:creator>
		<pubDate>Tue, 15 Jun 2010 23:30:29 +0000</pubDate>
		<guid isPermaLink="false">https://mikeindustries.com/blog/?p=4148#comment-68545</guid>

					<description><![CDATA[Amazon.com now does this live credit card checking in their checkout.]]></description>
			<content:encoded><![CDATA[<p>Amazon.com now does this live credit card checking in their checkout.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Tom Fallowfield		</title>
		<link>https://mikeindustries.com/blog/archive/2010/02/better-e-commerice-design-using-the-luhn-algorithm#comment-68294</link>

		<dc:creator><![CDATA[Tom Fallowfield]]></dc:creator>
		<pubDate>Mon, 17 May 2010 15:55:30 +0000</pubDate>
		<guid isPermaLink="false">https://mikeindustries.com/blog/?p=4148#comment-68294</guid>

					<description><![CDATA[So - if no pre-post feedback is to be given, the algorithm will only be used to sanity check numbers before the payment is processed? Is that really that useful?]]></description>
			<content:encoded><![CDATA[<p>So &#8211; if no pre-post feedback is to be given, the algorithm will only be used to sanity check numbers before the payment is processed? Is that really that useful?</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: George		</title>
		<link>https://mikeindustries.com/blog/archive/2010/02/better-e-commerice-design-using-the-luhn-algorithm#comment-57295</link>

		<dc:creator><![CDATA[George]]></dc:creator>
		<pubDate>Tue, 16 Mar 2010 13:21:48 +0000</pubDate>
		<guid isPermaLink="false">https://mikeindustries.com/blog/?p=4148#comment-57295</guid>

					<description><![CDATA[Ah ok I didn&#039;t realize that Luhn Algorithm is a public domain source. Particularly since IBM is always so tight with everything they do and never release (to my  knowledge) anything as PD.]]></description>
			<content:encoded><![CDATA[<p>Ah ok I didn&#8217;t realize that Luhn Algorithm is a public domain source. Particularly since IBM is always so tight with everything they do and never release (to my  knowledge) anything as PD.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Forrest		</title>
		<link>https://mikeindustries.com/blog/archive/2010/02/better-e-commerice-design-using-the-luhn-algorithm#comment-55723</link>

		<dc:creator><![CDATA[Forrest]]></dc:creator>
		<pubDate>Wed, 10 Mar 2010 19:32:33 +0000</pubDate>
		<guid isPermaLink="false">https://mikeindustries.com/blog/?p=4148#comment-55723</guid>

					<description><![CDATA[The majority of ecommerce sites I&#039;ve worked on over the past 10+ years do this in one form or another. Another item others haven&#039;t mentioned is that there are test card numbers that satisfy the algorithm but are not valid card numbers. I&#039;ve used these to test live sites without having to put the cart in test mode, or quickly hop into the gateway admin and cancel the charge. I don&#039;t know if all gateways do this, but at least the ones I&#039;ve used will accept the number as valid, but not process it as a real sale.]]></description>
			<content:encoded><![CDATA[<p>The majority of ecommerce sites I&#8217;ve worked on over the past 10+ years do this in one form or another. Another item others haven&#8217;t mentioned is that there are test card numbers that satisfy the algorithm but are not valid card numbers. I&#8217;ve used these to test live sites without having to put the cart in test mode, or quickly hop into the gateway admin and cancel the charge. I don&#8217;t know if all gateways do this, but at least the ones I&#8217;ve used will accept the number as valid, but not process it as a real sale.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Josh Bryant		</title>
		<link>https://mikeindustries.com/blog/archive/2010/02/better-e-commerice-design-using-the-luhn-algorithm#comment-55094</link>

		<dc:creator><![CDATA[Josh Bryant]]></dc:creator>
		<pubDate>Mon, 08 Mar 2010 07:26:24 +0000</pubDate>
		<guid isPermaLink="false">https://mikeindustries.com/blog/?p=4148#comment-55094</guid>

					<description><![CDATA[Peter, I could be mistaken, but I&#039;m pretty sure I&#039;ve seen real scenarios of actual processors that do validate the name on card.]]></description>
			<content:encoded><![CDATA[<p>Peter, I could be mistaken, but I&#8217;m pretty sure I&#8217;ve seen real scenarios of actual processors that do validate the name on card.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Peter H		</title>
		<link>https://mikeindustries.com/blog/archive/2010/02/better-e-commerice-design-using-the-luhn-algorithm#comment-52400</link>

		<dc:creator><![CDATA[Peter H]]></dc:creator>
		<pubDate>Thu, 25 Feb 2010 06:15:00 +0000</pubDate>
		<guid isPermaLink="false">https://mikeindustries.com/blog/?p=4148#comment-52400</guid>

					<description><![CDATA[OLD...

Answering your Q, this works with every card #, and has been used for client-side card validation for a very long time.  See validation kits like Peter Blum, etc ... 

Related to comments - it&#039;s astonishing is that sites ask for card type at all.  It always is a bit irritating too when phone card takers, like florists, ask for card type.  Card type is not a field used by any card processor that I am aware of, and even if it was needed it could be determined from the card number as described above.  Whenever ecom sites ask users for card type, they are just wasting our time!  

The same is true, actually, for &quot;name on card&quot;.  No card processor uses the &quot;name on card&quot; field for validation or other processing.  It&#039;s also a useless field to ask customers for ... 

What is TRULY astonishing is that a system designed in the 1950s is now the basis for so much of our electronic commerce.  We have such a wealth of means to authenticate people on the web ... and yet we still use CC number, expiration, CVN, and house number/zip.  (And give the card networks 2.5% of the transaction for the privilege) ...]]></description>
			<content:encoded><![CDATA[<p>OLD&#8230;</p>
<p>Answering your Q, this works with every card #, and has been used for client-side card validation for a very long time.  See validation kits like Peter Blum, etc &#8230; </p>
<p>Related to comments &#8211; it&#8217;s astonishing is that sites ask for card type at all.  It always is a bit irritating too when phone card takers, like florists, ask for card type.  Card type is not a field used by any card processor that I am aware of, and even if it was needed it could be determined from the card number as described above.  Whenever ecom sites ask users for card type, they are just wasting our time!  </p>
<p>The same is true, actually, for &#8220;name on card&#8221;.  No card processor uses the &#8220;name on card&#8221; field for validation or other processing.  It&#8217;s also a useless field to ask customers for &#8230; </p>
<p>What is TRULY astonishing is that a system designed in the 1950s is now the basis for so much of our electronic commerce.  We have such a wealth of means to authenticate people on the web &#8230; and yet we still use CC number, expiration, CVN, and house number/zip.  (And give the card networks 2.5% of the transaction for the privilege) &#8230;</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Mike D.		</title>
		<link>https://mikeindustries.com/blog/archive/2010/02/better-e-commerice-design-using-the-luhn-algorithm#comment-52365</link>

		<dc:creator><![CDATA[Mike D.]]></dc:creator>
		<pubDate>Thu, 25 Feb 2010 03:27:36 +0000</pubDate>
		<guid isPermaLink="false">https://mikeindustries.com/blog/?p=4148#comment-52365</guid>

					<description><![CDATA[Tim: It&#039;s probably only of use to a product like Square if the credit card swipe doesn&#039;t work (which definitely happens). The algo is really meant to catch the fat-fingering of a number if and when it&#039;s manually mistyped... I think.]]></description>
			<content:encoded><![CDATA[<p>Tim: It&#8217;s probably only of use to a product like Square if the credit card swipe doesn&#8217;t work (which definitely happens). The algo is really meant to catch the fat-fingering of a number if and when it&#8217;s manually mistyped&#8230; I think.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Tim		</title>
		<link>https://mikeindustries.com/blog/archive/2010/02/better-e-commerice-design-using-the-luhn-algorithm#comment-52361</link>

		<dc:creator><![CDATA[Tim]]></dc:creator>
		<pubDate>Thu, 25 Feb 2010 03:16:14 +0000</pubDate>
		<guid isPermaLink="false">https://mikeindustries.com/blog/?p=4148#comment-52361</guid>

					<description><![CDATA[Funny that it&#039;s been around since the 50&#039;s and used so little. Sounds useful to me.  

Some have probably heard of Square by now- the credit card service being developed by Twitter founder Jack Dorsey. (For those who haven&#039;t, see http://squarecreditcardreader.com )

This new way of using credit cards would put that capability in the hands of ordinary folk who would for one reason or another, rather take a card transaction than mess with cash. 

I personally think it will get big, and was thinking how if they used this Luhn algorithm, it might serve as an added plus to assure a person paying and accepting that the transaction went through correctly.

Thanks for keeping us on our algorithmic toes Mike. :)]]></description>
			<content:encoded><![CDATA[<p>Funny that it&#8217;s been around since the 50&#8217;s and used so little. Sounds useful to me.  </p>
<p>Some have probably heard of Square by now- the credit card service being developed by Twitter founder Jack Dorsey. (For those who haven&#8217;t, see <a href="http://squarecreditcardreader.com" rel="nofollow ugc">http://squarecreditcardreader.com</a> )</p>
<p>This new way of using credit cards would put that capability in the hands of ordinary folk who would for one reason or another, rather take a card transaction than mess with cash. </p>
<p>I personally think it will get big, and was thinking how if they used this Luhn algorithm, it might serve as an added plus to assure a person paying and accepting that the transaction went through correctly.</p>
<p>Thanks for keeping us on our algorithmic toes Mike. :)</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Mike D.		</title>
		<link>https://mikeindustries.com/blog/archive/2010/02/better-e-commerice-design-using-the-luhn-algorithm#comment-52199</link>

		<dc:creator><![CDATA[Mike D.]]></dc:creator>
		<pubDate>Wed, 24 Feb 2010 16:26:00 +0000</pubDate>
		<guid isPermaLink="false">https://mikeindustries.com/blog/?p=4148#comment-52199</guid>

					<description><![CDATA[Colin: Yep, I always thought type of card was just determined using the first digit, but looks like it&#039;s slightly more complicated than that.

Jeff: Yep, messaging is key there.

Adam: Interesting.  Yeah, I don&#039;t think it&#039;s an uncommon step on the server side. Just uncommon to give feedback to the user before they&#039;ve actually submitted anything. There was a small debate about &quot;feedback before submission&quot; a couple of years ago when people started actually sending form input to servers via AJAX.  The general consensus was that it was a creepy practice and except under circumstances where there was little chance any sort of sensitive info would be inputed, it shouldn&#039;t be done. An example of where it seems to be ok is username availability checking.]]></description>
			<content:encoded><![CDATA[<p>Colin: Yep, I always thought type of card was just determined using the first digit, but looks like it&#8217;s slightly more complicated than that.</p>
<p>Jeff: Yep, messaging is key there.</p>
<p>Adam: Interesting.  Yeah, I don&#8217;t think it&#8217;s an uncommon step on the server side. Just uncommon to give feedback to the user before they&#8217;ve actually submitted anything. There was a small debate about &#8220;feedback before submission&#8221; a couple of years ago when people started actually sending form input to servers via AJAX.  The general consensus was that it was a creepy practice and except under circumstances where there was little chance any sort of sensitive info would be inputed, it shouldn&#8217;t be done. An example of where it seems to be ok is username availability checking.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Adam Zamora		</title>
		<link>https://mikeindustries.com/blog/archive/2010/02/better-e-commerice-design-using-the-luhn-algorithm#comment-52179</link>

		<dc:creator><![CDATA[Adam Zamora]]></dc:creator>
		<pubDate>Wed, 24 Feb 2010 15:36:29 +0000</pubDate>
		<guid isPermaLink="false">https://mikeindustries.com/blog/?p=4148#comment-52179</guid>

					<description><![CDATA[We started doing this around 2000 at the company where I was working at the time.  It didn&#039;t happen on the client in Javascript, but we did it server side before sending the number to the processor - it was a sanity check and we could decline the transaction without contacting the processor, which had costs both in transaction time and in real money for us.

I don&#039;t think it&#039;s an uncommon step.

-adam]]></description>
			<content:encoded><![CDATA[<p>We started doing this around 2000 at the company where I was working at the time.  It didn&#8217;t happen on the client in Javascript, but we did it server side before sending the number to the processor &#8211; it was a sanity check and we could decline the transaction without contacting the processor, which had costs both in transaction time and in real money for us.</p>
<p>I don&#8217;t think it&#8217;s an uncommon step.</p>
<p>-adam</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Jeff Hartman		</title>
		<link>https://mikeindustries.com/blog/archive/2010/02/better-e-commerice-design-using-the-luhn-algorithm#comment-52175</link>

		<dc:creator><![CDATA[Jeff Hartman]]></dc:creator>
		<pubDate>Wed, 24 Feb 2010 15:15:57 +0000</pubDate>
		<guid isPermaLink="false">https://mikeindustries.com/blog/?p=4148#comment-52175</guid>

					<description><![CDATA[We&#039;ve used the Luhn algorithm at our small online store since we started in 2005. Reason being that in a multi-step checkout process I&#039;d much rather let the customer know they mis-typed their credit card number prior to getting to the &quot;place order&quot; step.

I&#039;ve never heard anyone mention it was creepy or suspicious, but know that it&#039;s made the process smoother.

Using appropriate messaging rather than (or in addition to) the check would make this clearer. Using just a checkmark would be confusing/suspicious to me. Some may think that my card has been authorized or even charged (and may increase cart abandonment).]]></description>
			<content:encoded><![CDATA[<p>We&#8217;ve used the Luhn algorithm at our small online store since we started in 2005. Reason being that in a multi-step checkout process I&#8217;d much rather let the customer know they mis-typed their credit card number prior to getting to the &#8220;place order&#8221; step.</p>
<p>I&#8217;ve never heard anyone mention it was creepy or suspicious, but know that it&#8217;s made the process smoother.</p>
<p>Using appropriate messaging rather than (or in addition to) the check would make this clearer. Using just a checkmark would be confusing/suspicious to me. Some may think that my card has been authorized or even charged (and may increase cart abandonment).</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Colin Williams		</title>
		<link>https://mikeindustries.com/blog/archive/2010/02/better-e-commerice-design-using-the-luhn-algorithm#comment-52080</link>

		<dc:creator><![CDATA[Colin Williams]]></dc:creator>
		<pubDate>Wed, 24 Feb 2010 08:43:26 +0000</pubDate>
		<guid isPermaLink="false">https://mikeindustries.com/blog/?p=4148#comment-52080</guid>

					<description><![CDATA[The first time I built a checkout system and was researching CC card validation, I ran across this and was equally surprised. I also think there are deeper algorithms that allow you to determine which credit card provider issued that number (AMEX, Visa, Discover, etc. Read http://cuinl.tripod.com/Tips/o-1.htm) You&#039;ll notice some checkouts don&#039;t require that you choose the provider, or some auto-select it once your number is typed, which turns out to be a less-creepy version of the check mark.]]></description>
			<content:encoded><![CDATA[<p>The first time I built a checkout system and was researching CC card validation, I ran across this and was equally surprised. I also think there are deeper algorithms that allow you to determine which credit card provider issued that number (AMEX, Visa, Discover, etc. Read <a href="http://cuinl.tripod.com/Tips/o-1.htm" rel="nofollow ugc">http://cuinl.tripod.com/Tips/o-1.htm</a>) You&#8217;ll notice some checkouts don&#8217;t require that you choose the provider, or some auto-select it once your number is typed, which turns out to be a less-creepy version of the check mark.</p>
]]></content:encoded>
		
			</item>
	</channel>
</rss>
