Skip to main content

Integration for Developers

Before you begin, read the Bitcoin Cash Metadata Registry (BCMR) Specification. You can also join CashToken Devs on Telegram to ask questions and chat with other developers.

Add an Embedded Registry

Start by creating an Embedded Registry in your application. You can simply pull the BMCR (hosted at the standard URI on otr.cash) from OpenTokenRegistry (OTR) into your codebase on a regular interval, or you may choose to copy OTR's data into a larger registry that you independently maintain.

Use the Embedded Registry

Using the embedded registry, render token names, icons, symbols, and URIs in your user interfaces. Review the JSON Schema overview, Guidelines for Client Software, and fully-documented types for usage information.

Add Runtime Updating

To increase the velocity at which end users can receive registry updates, consider adding support for updating the embedded registry at runtime via DNS and/or via on-chain transactions.

Advanced Integrations

Some applications may choose to enable greater user control over BCMR usage, and more advanced applications may add registry editing and export features.

Enable Registry Import

Some applications provide advanced users with the ability to manually import registries (e.g. from a file or from an arbitrary URL).

Note that malicious registries can mislead users into mislabeling token, identities, and contract applications, leading to loss of value; implementers supporting manually-imported registries should review Adding and Updating Registries.

Enable Registry Edit & Export

Some applications allow advanced users to edit an internal, user-managed registry to add new entries or overwrite entries in the application's embedded registry. The user-managed registry may be made exportable as a JSON file, simplifying publishing or contributing to public registries like OpenTokenRegistry.

Note that registry edit or overwrite abilities pose similar risk for misleading unsuspecting users as those posed by manually-imported registries.