Micropayment Smart Codes: Computer-Controlled Money to Help Artists, and Fundraisers

By John S. James
July 30, 2005, Philadelphia

July 30: Fundraising New Idea: Online Payment "Smart Codes" That Can Reproduce, http://www.MicropaymentSmartCodes.com/fundraising

Introduction

Accidental discovery led to an online payment design that appears to be fundamentally new, and able to help artists market downloadable work around the world through social networks -- at zero or near zero start-up expense. It could also help fundraising, by making small donations much easier to process, and large donations more attractive to give. I have no claim to exclusive ownership or control of this "smart code" design, and have made it freely available for anyone to use. I am a former software professional whose role in this project is to improve the design, and put it on the table for open-source development.

The basic idea is that "smart codes" are computer-controlled financial accounts that can reproduce, whenever their owner wants them to -- creating any number of "children" accounts that usually inherit their parent's options and properties (and a portion of the parent's money, if the owner wishes). These children can reproduce in turn, through any number of generations, creating family trees of related smart codes (accounts).

Every smart code has its own Web-based control center -- allowing the end user to control dozens or hundreds of options and services (see examples throughout this write-up). But probably most users can simply make online payments with their smart code, and will never need to change any of its options, since other people would already have set up the needed options in ancestor codes, before current user's code was born. Codes will usually come into user's lives not arbitrarily, but through social, business, or other networks. So most users may never see the control center or need to know that it exists -- yet still it gives them ultimate control over potentially hundreds of services, in case they do want to make any changes.

A Simple Example

A librarian could use a high-value smart code to create hundreds of smart codes worth a couple dollars each, to give clients access to low-cost art or databases (from any online computer, not necessarily in the library). These codes can and would be set only pay the intended payees (and be worthless otherwise, so they would have no street value for other than the intended use) -- and to return the money to the library without any human intervention in case the client lost the code (or otherwise did not use all of its value), on an expiration date the librarian set.

Also, these codes could automatically record usage statistics (either with or without identifying the user, as the librarian chooses), and provide a variety of up-to-the-second preprogrammed usage and accounting reports and graphics -- whenever the librarian asked for them at any time in the future, or on an always-current Web site for private or public use. No new programming would be needed for these services, because it would already be built into every code.

But smart codes have potential uses far beyond such obvious examples. Here are some of them.

(1) Selling Music and Art Online

In the current music-download-copyright mess, a major overlooked factor is that the big music corporations are criminalizing word of mouth (long recognized as a powerful force in selling) by how they enforce their copyrights. How does a fan tell others about music effectively, without being able to share it with them conveniently? No wonder the industry has problems!

A way get around the mess, by working with the technology instead of against it, is to create "smart links" (Web links with smart codes in them) that can charged up with any number of prepaid downloads -- then shared with friends and associates as gifts, not sales pitches. Anyone who gets the link can use it to download the particular song (or selection) that link provides -- and is free to share the link with others. When the downloads are exhausted, the link will demand payment. But anyone who likes the music or the artist is free to contribute 1, 50, 500, 5000, or any number of downloads at any time (whether or not the link is exhausted), with deep discounts for large purchases. Donors and end users can pay by credit card, PayPal, or other conventional means (they do not need to have a smart code, or know anything about them) -- instantly recharging all copies of that smart link, wherever they are throughout the world.

These smart links, used by donors and fans together, will allow most downloads to be free -- while the artist still gets paid for every one. They also will let artists market downloadable work independently, through social networks worldwide -- with almost no startup expense beyond preparing the work itself. Friends and supporters of the artist, the art, or the art movement who can buy large numbers of downloads to give to their own social networks (or to the artist's) will be supporting the work financially, and also promoting it to new people likely to be interested. And at the same time the donors are giving a gift with money value to their own friends and associates, which may distinguish their email from the great flood of email that is sent casually to lists because it costs nothing.

Incidentally, a smart link for prepaid downloads might be in the following format: www.codeserver.com/?song where "codeserver" reaches a Web server that manages the smart codes, and "song" is a smart code that designates the particular download (or choice from a collection of related downloads) that this link pays for. The smart code keeps track of how many downloads have been prepaid. If one or more are currently available, then anyone who clicks on the link can get the download free. Otherwise, people will have to pay for at least their own download in order to receive the file.

For reasons explained below, the smart codes used in this case do NOT need to be difficult to guess -- and can be sent openly over the Internet.

Artists in remote areas with no computer or online access could also sell their work through global social networks -- with a little help to record it, edit it on the spot to the artists' approval, upload it, tell people about it, and set up arrangements to return the profit (almost 100% of gross sales, minus taxes) to the artists, their villages, or other recipients they choose. Anyone with Web access anywhere in the world could buy the work. Such sales (mostly to people in rich countries) could be a substantial income source for communities able to build an artistic constituency, but which might have no other good source of income. And it could be a precedent for direct poor-world access to rich-world markets -- totally automated, with no middlemen to support.

Notes on Smart Codes and Music/Art Downloads

(2) Fundraising

How many times have you wanted to make a small donation (50 cents, a dollar, five dollars) to someone who has done good work on the Web -- but you did not do so because there was no practical way to send money? With smart codes you click a link created and placed on the site by the recipient, type or paste your code into a Web form provided, adjust the payment amount if necessary, and click a Pay button.

You don't need to remember a user name or password, because the smart-code system does not use these at all; the code itself replaces both. And the payee never sees your payment code, avoiding risk of misuse. Nor is there any danger of identity theft even in case of a total security failure, since smart codes do not need to hold any personal information (yet can keep all transaction records forever if necessary, to prevent untraceable payments).

PayPal costs at least 30 cents to send money, and credit cards cost more, so with them you can forget about payments under a dollar or so. Our estimate of the processing cost per smart code transaction (based on commercial Web-hosting fees) is less than a tenth of a cent, regardless of transaction amount. Incidentally, nonprofits could provide their clients with free or low cost money transfer throughout the world (since smart codes work easily with different currencies and languages) -- or businesses could charge a penny for each transaction, for a 900% profit. Local businesses would charge fees for withdrawing cash from a code, but this will be a competitive business with easy entry, so prices should be low.

A completely different smart-code advantage is that fundraising campaigns can show their progress as colored graphs representing all contributions made -- giving up-to-the-second totals automatically on the Web, regardless of whether the donors pay by smart codes, credit cards, PayPal, or other means (the payment only has to come in through a smart code, which can accept almost any means of payment -- the donor does not need to know about smart codes at all). By showing new contributions for one minute or so in a different color, these displays can even let donors see their own contributions going in -- perhaps in weekly, daily, or hourly graphs, as well as a cumulative one (where most new contributions will appear small, compared to the total money raised so far).

And since smart codes exist in family trees, with each code and each branch able to have its own automatic accounting, organizations that distribute different, related smart links can get unique information about which projects and teams are most effective in raising money. Even if people halfway around the world eventually respond to a link, without contacting those who sent it, their donation or purchase will be correctly recorded, and instantly cumulated into all accounting and other reports.

Also on fundraising, see "Donations As Investments" under "Bizarre Uses for Smart Codes," below.

(3) Bizarre Uses for Smart Codes

Here are two novel examples to give further hints of the power and flexibility of this system. Note that some of the uses described here do not involve transfer of money at all, but use smart codes for other services.

Donations As Investments: Smart Codes As Digital Collectables

Donations to organizations with potentially historic importance (which could include most organizations, since we don't know where history will go) could be marked by a "donation code" that is credibly maintained on an archival server intended to be kept running for decades or even centuries. This code can let the owner control the public display of information about the organization, its people (who could appear on video), their projects and dreams, and the times in which they worked. Each code could also develop and tell its own history, as it passed from owner to owner, some of whom would add personal or historical information during their tenure -- like a blog through time, for the future. (New owners could not permanently delete the information previously added by others, although they could suppress its display. If they sell the code, a later owner could bring the suppressed information back.)

With scarce supply and possible historic importance, these codes might become digital collectors items -- selling for much greater than their face value (the amount donated), like rare stamps or coins. This makes a "donation" to an important organization be an "investment" as well -- creating an entirely new, synergistic reason to give. Codes representing large donations will be particularly rare, and therefore potentially most valuable.

Will it work? No one knows if people will value digital collectables, in the absence of physical artifacts like stamps, coins, or books. But many people want to donate, yet need an "excuse" -- something special and memorable so they are not just pouring their money meaninglessly into an ocean of appeals. And certainly videos, music, or other multimedia could tell more history more immediately than a small picture on a stamp or coin. As noted above, this history can be displayed to the public online -- as the current owner of the donation code chooses to display it. The owner can also create private displays by giving codes to certain people only -- and might choose to have no public showing at all, or to show part of the material only to private audiences. And organizations could negotiate with donors about adding unique material to codes for very large donations, giving them greater investment value.

Certainly a strong case could be made that such codes might work as collectables. This is a digital age, and everyone knows that secret codes can have money value. On a different level, everyone involved with this process -- donors, organizations receiving donations, and potential collectors -- will have their own reasons to want the process to work.

And on a practical level, smart-code owners can change the name of their code at any time, so when a donation code is sold among collectors, the new owner can ensure exclusive possession from that time forward. Storage, transportation, and security expenses will be minimal. The per-code cost of server maintenance, even for decades, will be minimal as well, easily handled by an endowment set up by the archival organization. And last but not least, digital collectables are far less likely than physical ones to be destroyed in fires, floods, or other disasters (short of those severe enough to end digital technology, or to end human life).

And even if digital collectables cannot work because collectors will never pay for a secret code that can be displayed online but is not a physical object, no one will know that for sure. So even in this worst case, digital collectables might still do their real job, which is to enhance conventional fundraising appeals. Make your donation before the end of the year (getting tax advantages as well), and you get the donation-as-investment for free; miss the deadline and you must pay market price for the same item. If the organization receiving the donation turns out to be historically important, your children or grandchildren may be grateful.

And organizations could easily integrate digital collectables into their conventional fundraising appeals. All they need to do is to include an extra sheet of paper (with the code, and a standard explanation) with their existing donation acknowledgement letter. The donation itself could have been by check, credit card, etc. as usual.

This new incentive for giving is waiting for a solid implementation of smart codes -- and, more critically, for an archival organization using incorporation, endowment, insurance, backup, security, and other system to credibly promise to maintain a working, publicly accessible server for decades, on the Web or its successors.

Digitally Regenerated Art

A smart code could mark the "original" of certain digital art by giving special remixing capabilities, no matter how many exact copies of previous versions were made -- a new approach to the free-copy issue. For example, the artist's programming to compose an image could live permanently on a computer server, placed there by the artist. This image might include smaller pictures of people -- and allow the owner of the art (and only the owner, with a code purchased from the artist) to regenerate the image with those pictures replaced by photographs or drawings of members of the owner's family. Or a (technically difficult) composition might produce a realistic image of Mt. Rushmore, but replacing the presidents with different people sculpted into the mountain -- perhaps prepared from a series of photographs of each person, taken according to detailed instructions from the artist.

Similarly, music could be regenerated with elements of rhythms or themes taken from the owner's favorite music -- or simply including the voices of the owner's children or pets -- all under the precise control of the artist, who can provide different options for the owner's materials to be included in different ways.

And for all such compositions, artists could produce a numbered series -- perhaps 50 different codes which could be sold to different owners, increasing the artist's income while reducing the price. Some day rich collectors might try to buy most or all of them -- a possibility that could increase their investment value, even years in advance of such possible competition.

Slightly Less Bizarre Uses for Smart Codes

Most of these are common tasks we do all the time. The difference is that usually we don't have our money do them for us.

Miscellaneous

Distributing Smart Codes: Role of Social Networks

Anyone who just gets a smart code can do business with anyone else who has one (on the same server, or on a cooperating server). Also, someone with a code can have it reproduce any number of very similar codes, and give them out to others. So anyone who simply has a smart code can be the center of whole new networks of code users, of unlimited size, without even dealing with the organization that runs the computer server and sponsors the whole code system.

Therefore most people will not buy (or be given) their smart code(s) from the organization that runs the server, but rather from their friends and associates -- or third-party businesses that choose to sell the codes. It appears that smart-code owners will never need to deal with the sponsoring organization at all, unless something goes seriously wrong. This system is so automated that the organization providing the codes may not need a public or customer office at all -- greatly reducing the cost of using smart codes. The sponsor's role will be behind the scenes, to make sure that everything keeps working as it should.

What if a code is lost? Owners could prepare for that possibility by having a parent and at least one child code; the parent, which would be kept in a safe place, could cancel the child code at any time, retrieving the money. And the parent code could immediately transfer all its money to the child or children, so if the parent is lost, the children still have access to all the money. There could be a zero-value grandparent as well, given to a friend for emergency use only. This system of "safety codes" could easily be set up in advance, and transferred ready-made to a new owner.

"Public Codes" to Publish Offers and Receive Payment

Unrestricted payment smart codes need to be kept secret; otherwise, anybody could spend the money they contain. So how can the smart-code owner receive money into that code, without revealing it to customers? The answer is that smart codes can reproduce a special kind of children, called public codes, that can only take in money (instantly transferring it to its parent), but can never spend any money. Public codes are specially marked from birth, and always remain public codes. Public codes can also receive money by credit card or other conventional means -- and the customer does not need to know anything about smart codes. Usually each public code will represent a specific offer by a merchant -- or a specific request for donations to an organization. Like other smart codes, public codes keep transaction records automatically -- allowing the owner of the parent code to view this financial history in a variety of accounting reports provided by the server.

Also, every public code automatically provides a simple Web site open to the public. This Web site automatically has the ability to accept any credit/debit cards or other means of payment handled by the server (this ability can be permanently restricted or blocked anywhere in the family tree of ancestor codes). The merchant who owns the public code also owns the parent, and can use the parent code to paste text into that Web site, telling people about the offer. (The public code itself does provide the capability to change the Web site, since then anyone could do so. However, the server could have an option to make a public code's site to work like a wiki, allowing anyone to change its content, within certain limits.)

So a merchant who receives a (non-public) smart code can use it to generate any number of public codes, and set up each one to present a separate business offer. Then these public codes can be published online, or in newspapers, etc. (in the form of Web links, so that their users do not need to know anything about smart codes). Anyone who uses a link in the form of www.codeserver.com/?myoffer (where "myoffer" is a public code representing a merchant's offer) will reach the small Web site that every public code automatically has. On this site the merchant describes the goods for sale and the prices. All payment options (credit card, smart code, etc.) that the parent code accepts are displayed on the site (unless blocked), with forms provided for each to submit the necessary payment information (such as credit-card number, expiration date, and security code). And this small, automatic site can of course link out to the merchant's regular Web pages, or to other sites on the Web.

Public codes are necessary for some but not all of the smart-code uses described throughout this write-up.

A big advantage of public codes is that a short Web link takes potential customers directly to a site customized by the merchant for a specific offer -- and keeps separate accounting records for that offer as well. Also, a merchant who has no Web site can simply get a smart code, and create any number of children public codes, each with its own, easily customized Web site. Each of these little sites comes fully loaded with payment methods, and immediately ready to accept credit and debit cards, PayPal, and any number of other payment systems (including smart codes of course).

All of this costs the merchant probably nothing to set up and maintain (the Web sites are generated on the fly as needed by customers, and only the merchant's customizing text needs to be stored). It will probably make most sense to all parties to support the smart-code server by charging transaction fees, automatically deducting them from proceeds as sales occur. Then the merchant pays nothing up front for all this service, can never run out of money to pay for the smart-code account, and never gets a bill (avoiding paperwork costs).

"Phishing" Security Precautions

The phishing fraud (fake Web sites pretending to be financial institutions, set up to collect personal information) is less of a problem with smart codes than with other accounts, since smart codes do not need any personal information -- and people can use a low-value code if there is a risk of loss or misuse of the code itself. In the music-download example above, the codes used in smart links are not kept secret anyway. Also, any credit-card or other payment information given to a legitimate smart-code site is safe, even if the merchant who receives the money is dishonest, since the merchant never sees the payment information.

But fraudulent merchant sites could imitate smart-code requests for payment, and harvest credit-card and other payment information -- just as they can do with any merchant or financial site. In this case the information would not go to a trusted smart-code server, which would conceal it from the payee, but would go to the criminals instead. No real smart-code site would be involved (which rules out certain defenses).

Typing, pasting, or bookmarking a link that begins with a trusted URL (instead of clicking on a link found on a Web site, or in an email) would eliminate the risk. Later this strategy could be automated in various ways with the use of browser improvements or plug-ins.

There is no risk of phishing when a smart-code owner communicates with the code's control center. In this case the owner types in or bookmarks the familiar URL (such as https://www.codeserver.com), and is certain to get to a legitimate site, with secure communication. There is never any reason to click a link in an email or unknown Web site to reach one's own control center (especially since a smart code will often not need to have its owners email address at all).

Another phishing defense is to have the payer's smart code manage the payment. A smart code can only pay smart codes on the same server (or on one of a designated list of cooperating servers), which the control center of every smart code will always know. The buyer's control center can bring up a form to enter the public code being paid (and its server, if different). The buyer's code could then generate the URL and display that public code's Web page, allowing the buyer to make any merchandise selections necessary. And the buyer's code could even reproduce a new, child code for the exact amount of the payment, and enter it into the page.

This approach leaves the payer's code in control of the process; it will never visit an untrusted URL, and never send information without all necessary encryption or other security. Of course this defense will work only for payments made from the payer's smart code (not for credit card, etc., payments made through the payee's smart code -- because in this case, the payer has no smart code to take control).

In the music-download example, only the donors making a payment would have to consider any precautions. Those downloading prepaid copies for free would not be submitting credit-card, smart-code, or other payment information, and would have no risk at all.

Ease of Implementation

Actually programming a smart-code system might seem to be difficult, but turns out to be surprisingly easy. For example, each smart code is a record in a database. And the process of code reproduction (with inheritance of options and services) consists mainly of making a copy of the parent code's record. With a few fairly obvious adjustments, it becomes the database record for the new child.

And the "Web control center" of a smart code consists of a Web page generated on the fly, when the owner needs to interact with the code to modify it in some way. The control center exists only when a person is using it. At other times it does not need to exist, since all the information about the code is contained in its database record.

The public Web site for each public code is also generated on the fly, and only exists when someone is looking at it, or using it to make purchases or payments.

Transaction processing must always be active (since usually a person will be waiting online for the transaction to go through). This processing must respect all rules and other options and services of the code being charged. So far, all the options and services we have thought of have been cleanly independent of each other, with no complex or ambiguous interactions. As long as this is true, new services can be added straightforwardly to any smart-code server, without causing trouble with the other services already there.

Multiple smart-code servers can be compatible (buyer on one can pay seller on the other) if the organizations that run them can trust each other. An agreed communication protocol must securely deliver a smart code to the server that issued it, for that code to be charged. This top-level protocol can be negotiated and accepted after the servers themselves are in operation (perhaps with different code formats), so there's no need to wait for standards to be developed. If a code is delivered to the wrong server, it will be the same as if someone tried to guess a smart code at that server; usually the odds will be more than a million to one that the code will not be recognized at all (assuming 12-digit random codes, which allow up to a million different smart codes to be active at one time, with the odds against a guess being at least a million to one).

Next Steps

The first step is to discuss the idea, check it for any errors or problems, and consider where to take it from here.

Once basic smart-code software is available, small organizations (businesses or nonprofits) will be able to manage smart-code servers and issue payment codes for local or worldwide use. The main challenge will be credibly guaranteeing reliability -- since people are attached to their money, and there is no room for screwing up. Early tests of smart-code systems could be limited to small amounts only, to make sure the bugs are worked out before substantial amounts of money are accepted. Or they might at first be limited to uses other than money transactions, such as converting conventional donations into digital collectables. Or possibly smart codes could be tested first in multiplayer online games (where online payment systems are already provided, but other missions for computer-controlled codes with inherited services might be found -- such as selling accesses to a database). The smart codes used could be implemented either inside or outside the game.

Do I believe that smart codes (or some other system of using account reproduction and inheritance to give end users optional, practical control over hundreds of features and services, both financial and otherwise) could revolutionize many kinds of online commerce, as well as helping artists and fundraisers? Yes, but that isn't the focus of this write-up.

If you believe that anything on this site could not work as described, please let me know, so that I can explain it or fix it.

If you are interested in this project, contact jjames at MicropaymentSmartCodes dot com (reformat this email address of course). My role is to start a discussion of what appears to be a fascinating and potentially important idea. I'm looking for people to work with on improving this open-source design. For more about me, see About the Author.

If you know of good software for hosting an ongoing discussion of smart codes -- a discussion system very easy for new users to learn, but better than the usual blog with comments -- please let me know.

For More Information -- Earlier Smart-Code Articles

The write-ups below are often not coordinated with each other, because I wrote them in part for "defensive publication," to prevent parts of this system from being patented and denied to public use. Later I may organize this information into a single paper that describes all the ideas in detail.

Micropayment Links

Micropayment for online purchasing was disappointing for years, but may be ready for a comeback. The next big commercial push may be in instant messaging (SMS, short message service), using one's phone to pay for music, tickets, games, etc. An advantage of smart codes here (in addition to all the other advantages) is that people will be able to pay for event tickets and other non-telephone items through their phone, without necessarily going through their phone company, which is likely to be far more expensive than smart codes for transferring money.

Here are some places to look for micropayment information:

Privacy Statement

We won't send advertisements or give out your email address to anyone, and you can get off our list at any time.

John S. James, jjames at MicropaymentSmartCodes dot com


Creative Commons License
This work is licensed under a Creative Commons License.