BSI PAS 19668:2020 Tool

PAS 19668:2020 is a specification for the publication requirements for security tokens. The tools on this page allow you to create PAS 19668:2020 compliant JSON data and check the validity of any manually edited data.

“Security tokens allow securities to be digitized in a manner that’s expected to increase openness and the inter-operability of the financial system. Until now there’s been no cross-blockchain industry-wide standard on how information and properties relating to security tokens should be structured and presented. PAS 19668:2020 introduces a cross-chain standard that harmonizes the publication and access of security token attributes as disclosed by the asset issuer. It provides requirements for the consistent publication of relevant information and the technical attributes of security tokens.”

—BSI Group.

“[PAS 19668:2020] provides requirements for the publication of relevant information and the technical attributes of security tokens. It covers security tokens issued on any distributed ledger system. It does not cover utility tokens or unregulated tokens. This PAS is for use by UK and international security token issuers. The PAS is also of interest to security token holders, investors in security tokens, security token exchanges and custodians and any other third parties that provides services to the issuers of security tokens, investors in security token and auditors who might be checking conformity.”

—PAS 19668:2020 definition of scope.

Many of the fields required for PAS 19688:2020 compliance are hidden and defaulted to values that are correct for assets issued as security tokens using Blockstream AMP. There is also a tool that pulls asset issuance data from the Liquid network’s blockchain, which can optionally be added as custom data to the end of the JSON.

Liquid Asset Issuance Data

Before generating the JSON data, you can check the details of any publically issued asset, whether it was issued using a Liquid node directly, or via the Blockstream AMP API. You can manually add these details to the CustomElements section at the end of the JSON data if you want to.

Generating BSI PAS 19668:2020 Formatted JSON Data

Fill in the fields below to generate PAS 19668:2020 compliant JSON data.

The sections below are laid out in line with the format defined in PAS 19668:2020. You can hover over field names to view tooltip information of the field definitions. Please refer to the PAS document for more details on field definitions.


Some of the required PAS fields will be added using the default values for Blockstream AMP issued assets. If you need to amend these, you can manually edit the JSON after you generate it. Example field values have been included in some of the fields below to demonstrate the tool's output. Please be sure to amend these before generating and publishing your own data.


Security Token Data Store

Security Token Location


Security Token Identification Number

Security Token Classification

Information Disclosures

Issuer Disclosures

Issuer Asset Disclosures

Eligible Investor Classification

Eligible Investor Countries

Restricted Countries

Security Token Technical Properties

KYC & AML Requirements



Generate BSI formatted JSON data

Generates PAS 19668:2020 compliant JSON data from the above.

Your PAS 19668:2020 formatted data will be displayed here

Custom Elements

You can manually add your own custom elements to the JSON after it has been output above.

The CustomElements section within the JSON allows users of the PAS to add their own custom message items that are not yet included in the PAS. The custom elements item can be used while the PAS is in the process of being updated or an Issuer can enter their own key value pairs to further describe the asset.

If you want to include Liquid/Blockstream AMP Asset Issuance data as the custom elements data, use the "Display Asset Issuance Details" option at the top of the page and paste the results into the CustomElements section as below.

"CustomElements": {
    "asset_id": "a28d04f3e243a9a187f4a8b797be2f19a9c01b6ef4e1d65bfb6abbd6a2042097",
    "issuance_txin": {
        "txid": "0c3ec80b0912b1c6d276e92c28161b684afcbd49a276ca079f3cca245a458d48",
        "vin": 0

Validate JSON data

Paste any manually created JSON into the box below to test if it is valid JSON or not. You may wish to do this if you have added your own CustomElements section at the end of the data.

The text box accepts JSON, not strings with JSON in. {"key": value} is ok '{"key": value}' is not. Please note that the validation does not check against the PAS 19668:2020 standard, it checks for JSON validity only.

The result of validating the JSON will be shown here.