A policy template bundles compliance controls into one named rule set. A control is one enforceable rule, such as an investor eligibility check or a country restriction, that decides whether a regulated operation like a transfer or a subscription can proceed. Publishing a template makes it a choice an instrument template, the reusable product definition an issuer picks during asset issuance, can link. Each instrument template links at most one published policy. The rules land on an asset only when that asset is issued, so a later edit changes the next issuance and never an asset that exists.
On this screen you decide which rule sets your organisation has, what each one enforces, and which values an issuer may still change per asset in “Issue asset”. You do not need this screen to issue an asset, because the instrument template you pick in “Issue asset” already carries its policy.
Every write on this screen, including saving a draft, publishing, editing and deleting, lands in the organisation's audit trail with your name and your role at the time.
The catalogue lists each policy template with its name, jurisdictions, source, status and last update.
Each row shows the policy's name, its jurisdictions or “Global”, its source, whether it is a draft or published, and its last update. A row expands to show the description and the configured and required controls. Use the jurisdictions filter to narrow the catalogue by scope.
Steps
Open Policy templates
Open “Compliance”, then Policy templates. The catalogue is a table that shows your organisation's templates next to the platform-provided DALP library set, one row per template. Its columns are “Name”, “Jurisdictions”, “Source”, “Status” and “Updated”.
Search, or filter by “Jurisdictions”, “Source” and “Status”, to check whether a usable rule set already exists before you create a near-duplicate. Sort by “Name”, “Status” or “Updated”, and page through the table at the bottom.
The Jurisdictions column lists each jurisdiction a template covers and reads “Global” for a template with none. “Status” reads “Draft” or “Published”.
Select the arrow at the start of a row to expand it. The expanded row shows the template's description, the controls it configures, and the controls it requires. Selecting the row itself opens the template's detail page.
Choose a starting point
Select Create template, then pick one of the three cards on the “Start” step.
The “Start” step, with one card each to start from the DALP library, clone one of your templates, or start blank.
The DALP library includes starting points for frameworks such as the Markets in Crypto-Assets Regulation (MiCA) and the SEC Regulation D Rule 506(b) exemption for private placements. A library template carries the transfer and issuance rules DALP can enforce for that framework, and its description lists only those rules. The framework's other obligations, such as a MiCA white paper or Regulation D's bar on general solicitation, stay with you.
A copy does not stay connected to its source, so a later change to the library or to the source template never reaches your draft. Library frameworks and the legacy generation covers the Shari'ah framework and legacy templates.
Set the scope and the controls
Name the template on the “Basics” step, choose jurisdictions on the “Scope” step, then enable and configure controls on the Controls and rules step. Template names are unique within an organisation. The jurisdiction list is a label: it records where the rule set is meant to apply and feeds the catalogue's jurisdiction filter. It does not restrict where the rules apply, which a country rule does. Leaving it empty shows the template as “Global”.
Select Add control to open the controls catalogue, then pick a control to open its editor. The control joins the template only when you set its rule values and save, so “Continue to Review” never waits on a control you did not save. The catalogue lists only controls compatible with the template's module-set generation. What each control enforces is described on Compliance modules.
Two toggles on each control decide what happens at issuance:
- Make configurable in Issue asset is on once you save a control. While it is on, the control gets its own step under “Compliance details” in Issue asset, pre-filled with your values, and the issuer can change them. When it is off, the control's row reads “Fixed for issuers”, and “Issue asset” installs your values unchanged.
- Required marks a control that tokens using this template must configure.
Turn “Make configurable in Issue asset” off and turn Required on when a regulator owns the number. Both hold at issuance only. After issuance, the holder of the asset's Governance role manages its rules on the asset itself.
Review and publish
The Review step summarises the name, status, description, jurisdictions, and the number of configured controls, then shows the readiness list. The list names each required control that is missing or incompatible, together with its fix.
“Publish template” stays unavailable until the list is empty, and the platform runs the same check again when you publish. Select “Save as draft” or “Publish template”. A published policy stays selectable until you delete it. “Publish template” on the detail page asks for confirmation first. Both paths end on the template's detail page.
Edit a published template
A published organisation template stays editable in place. On its detail page, Edit in the header changes the name, the description, and the jurisdictions in one sheet. “Add control” under “Controls and rules” opens a searchable list of controls. The version rises by one on each save, and the platform refuses an edit that would leave a published template unable to pass the readiness check.
The “Used by” card lists each instrument template that links the policy, with its status: “Draft”, “Unpublished” or “Published”. Change a live asset's rules on that asset's compliance tab. You cannot edit or delete a DALP library template: duplicate it into an organisation draft when you need a variation.
The template's detail page shows the “Basics”, “Scope”, “Used by” and “Controls and rules” sections.
The “Used by” section lists the instrument templates that link the policy, and the “Controls and rules” section lists the controls the template configures and requires.
Delete a template
- Open the template's detail page and read the Used by card. It names each instrument template that links this policy and shows whether it is a draft, unpublished or published.
- Link a replacement policy on every instrument template listed there.
- Open the Actions menu and select “Delete”. The “Delete template?” dialog names the template and lists the instrument templates the delete unlinks. When a published instrument template is among them, the dialog says so. The delete stays possible.
- Select Delete template.
Deleting removes the policy and its compliance module configuration. Assets already issued keep their rules, and inherited global and identity controls still apply. A platform-managed template cannot be deleted.
How a policy reaches an asset
Rules travel one way: publishing makes a policy selectable, an instrument template links it, and issuance installs a copy on the asset.
Library frameworks and the legacy generation
The library holds “Shari'ah / AAOIFI - Islamic Finance”, a starting point for an Islamic finance token. It carries an identity verification control and a transfer approval control. It does not check Shari'ah or AAOIFI compliance, which stays with the issuer. The library ships the verification expression empty, which requires no claim, so a copy published unchanged admits any holder. It names the issuer as the only approval authority, and “Issue asset” replaces that placeholder with the on-chain identity of the person who issues the asset.
Set both in your copy: the claims a verified investor must hold, and the identities, such as the Shari'ah board, that approve a transfer. The framework lists no jurisdictions because Shari'ah compliance is an issuer governance framework, so the catalogue shows it as “Global”. You can still scope your copy to jurisdictions. The “Sukuk Ijara” and “Sukuk Murabaha” instrument templates attach it.
On a deployment whose operator turns on legacy policy templates, which are off by default, the catalogue gains a “Module set version” column that identifies the generation, where 1 is the earlier, legacy generation. The catalogue then opens filtered to the current generation, and removing that filter lists legacy templates too. The “Blank” card also offers a “Legacy template” switch that picks the generation. That choice is fixed when the template is created, and instrument templates offer current-generation policies only, so take the legacy generation only for a product line that still needs it. Compliance modules explains how the generations differ.
Troubleshooting
Publishing is unavailable
The template has readiness gaps, or you lack the role. The “Review” step and the detail page list every gap: configure the named required control on Controls and rules, or remove it from the required controls when it is incompatible with the template's generation. When the list is empty and publishing is still refused, check that you hold the Permission manager or Compliance manager role.
A template refuses edits
DALP library templates cannot be edited or deleted. Duplicate one into an organisation draft and adjust the copy. When one of your organisation's templates refuses a change, check that you hold the Permission manager or Compliance manager role.
Creating or renaming fails on the name
Template names are unique within an organisation, and the refusal says a template with this name already exists. Pick a distinct name, or delete the earlier template when it is obsolete.
A control is missing from the catalogue
A control introduced for the current generation never appears in a legacy template, because the catalogue only offers controls compatible with this template's generation. The generation cannot be changed after creation. Rebuild the rule set as a current-generation template instead.
The policy is missing from an instrument template's choices
Only published, current-generation policies are offered when linking. Check the status badge on the policy's detail page: a draft must be published first, and a legacy-generation policy never appears in the instrument template wizard. The wizard's compliance step also opens filtered to the instrument template's jurisdiction. Select the chip that reads Applies to and the country there to turn the filter off and list policies for every jurisdiction.
An instrument template lost its policy
Deleting a policy clears the link on every instrument template that used it rather than deleting those templates. Before you delete, the Used by card on the policy's detail page lists them. Open each affected template and link a replacement before the next issuance. Without a link, newly issued assets start without the deleted policy's rules.
Frequently asked questions
Can I unpublish a policy template?
No. Publishing a policy template is permanent. Only instrument templates can be unpublished. To retire a rule set, follow Delete a template. Deletion removes it from the choices without touching any asset already issued. An unlinked published policy enforces nothing on its own, but remains selectable for future instrument templates.
How is a policy template different from global controls?
They differ in scope. A policy template's rules reach only assets built from instrument templates that link it. Global controls apply to bound tokens, including existing ones, within each rule's scope, and an issuer cannot remove them during asset creation. Together the two layers form the asset's compliance policy, the full rule set a transfer or subscription is checked against. A recipient on the compliance bypass list, a Custodian's forced transfer and a wallet recovery skip some or all of those checks, as Compliance policy lists. Use global controls for a floor every asset must meet, and policy templates for the rules a specific product type or jurisdiction adds on top.
Can another organisation see or use my policy templates?
No. The catalogue is scoped to your organisation: you see your own templates plus the platform's DALP library set, and other organisations see theirs. A DALP library template is shared platform-wide but read only. Copying it with Start from DALP library creates an organisation-owned draft that only your organisation can see, edit or publish.
Is there an API for policy templates?
Yes. Every action on this screen is a call in the Platform API, under the same role rules. Reading one template also returns usedBy, the instrument templates that link it, each with its name and whether it is a draft or published. API routes shows create and publish.
API routes
Creating a draft and publishing it are separate calls. After creation, configure the draft's controls and review its readiness before publishing. Replace the example template identifier with the identifier returned by creation.
curl -X POST "https://your-instance.example.com/api/v2/settings/compliance-templates" \
-H "X-Api-Key: sm_dalp_..." \
-H "Content-Type: application/json" \
-d '{"name": "EU transfer restrictions", "description": "Transfer restrictions for Northwind Coffee securities issued in the EU", "jurisdictions": ["EU"]}'
curl -X PUT "https://your-instance.example.com/api/v2/settings/compliance-templates/0193a1c2-7e4b-7a10-9c3d-5b2f8e6a1d40/publish" \
-H "X-Api-Key: sm_dalp_..."Both calls need a credential that holds the Permission manager or Compliance manager role. Link the published policy from Instrument templates.