Cryptocurrency fans are increasingly familiar with Ethereum-based smart contracts and the ERC20 standard. By providing a unified programming standard, ERC20 standards ensure that other coins are compatible with wallets, exchanges, and other applications. WIth uniform standards, Initial Coin Offerings no longer need to reinvent new rules and specifications to fit their tokens. In essence, ERC20 standards have made it much easier for new coins to be offered.
Not incidentally, ERC20 smart contracts are beginning to gain notice in the business world. While their utility is rarely tested beyond simple transactions, several forward-thinking businesses are exploring how to use smart contracts to their advantage. The is especially true for subscription-model companies, where the customer prefers purchasing small amounts of a product/service over a fairly long time period. These types of companies are growing rapidly in number. Visitors to subscription-based websites have grown by more than 800% in the past four years.
Unfortunately, subscription-based companies are finding ERC20 token functionality somewhat limited. That’s because an ERC20 smart contracts require customers to reconfirm their subscription-based service on a monthly basis. And continually having to opt-in to a subscription service somewhat defeats its purpose (as it creates a certain ‘friction’ with the customer).
Another option for consumers of such services might be to hold Ethereum ether in escrow. This would require users to sign all subsequent transactions with a private key. They would need to either start a fully-funded escrow account or add funds to it on a monthly basis (similar to the above). Neither is ultimately very convenient to the customer.
Fortunately, a new ERC standard has come about for subscription-based companies. Known as ERC948, this token would facilitate opt-out smart contracts for subscription services. These ERC948-based smart contract would enable a subscription service to withdraw x amount of tokens from a customer wallet for x amount of time until a customer cancels. Token withdrawal would be dependent on funds availability and continuing payment authorization.
In order to be considered viable, ERC948 standards must:
- Be configured to support a either a shared contract or contract per subscription. While the latter is more secure for users, consumers would need to manage each subscription separately.
- Resolve the price volatility that characterizes tokens. Suggestions to remedy this concern range from ensuring ERC948 supports stable coins to setting subscriptions to fiat currency with the provision that consumers will be charged current transaction rates.
- Not be labor intensive with regard to contracts. Since creating new contracts can expensive and time consuming to set up, a shared contract used by several individual users may suffice.