This little gem of an app does what it promises in that it stores barcodes from all your retail loyalty/rewards cards so you don't have to carry them. With large built-in lists (there are separate lists for cards with barcodes and cards without) and a nice in-app tutorial video it's easy to get started. When adding a new card you are asked if the card has a barcode. If not you must manually enter the number. For cards that do have a barcode the familiar Barcode Scanner is used, or you can manually enter the number with the keyboard. In both cases you can select the retailer from the list. If the retailer isn't in the list you may manually specify that too (you can also submit new retailers back to mobestream for inclusion in future updates). There are separate lists for cards with barcodes and cards without barcodes. Due to the size of these lists keeping them separate minimizes the time it takes to find a retailer in the list. Once a card has been added the barcode/number can not be edited. You must delete the card and reenter. You can change the retailer and an optional label (more on the label later). My major complaint about this app is that many barcodes contain digits which are not printed on the card. Keyring recognizes these extra digits in the barcode and happily displays them under the barcode image. The problem this leads to is that in the event the retailer's scanner can't read your phone screen they will start typing in the number displayed. In my experience these extra numbers not printed on the card must be disregarded when a retailer is manually entering the number. I submitted a bug report and the response follows: This was on May 4, 2010 and recent updates haven't included this yet so be on the lookout. In the meantime, I have used the custom label field to specify the number as printed on the physical card when the check digits are displayed. This way I remember when to tell the retailer that the barcode number is 'wrong' and save some time. Some recent reviews within the market have mentioned concerns over the permissions. I'll admit I don't understand why this app needs to check your location or phone state/identity, so use your best judgment installing it.