On May 30, 2025, the State Bank of Pakistan (SBP) issued a statement that should have ignited a national debate. Instead, it was received with relief.
In carefully measured prose, the SBP clarified that its 2018 circular restricting banks and financial service providers from engaging with virtual assets (VAs) such as cryptocurrencies did not, in fact, constitute a ban.
It simply instructed “regulated entities” to refrain from crypto-related business pending the development of a legal framework.
The statement further emphasised that it had never declared cryptocurrencies “illegal”, a clarification aimed at correcting what it called “inaccurate interpretations”. At first glance, this statement appears to be a progressive pivot, a subtle step towards rationalising digital asset policy in Pakistan.
But to any serious student of constitutional law, regulatory theory, or financial governance, this clarification is not a step forward, it is an admission of failure. It reflects the normalisation of a dangerous legal culture in Pakistan: one where national policy is shaped not in parliament but in PDF files uploaded to institutional websites, such as that of the SBP.
Let us be brutally clear: the SBP’s clarification does not legalise crypto. It does not regulate it. It does not protect consumers. It does not define obligations, create liabilities or establish rights. It merely changes the grammar of the regulatory vacuum that already exists. What was once seen as a “ban” is now framed as a “pause”. But a regulatory pause lasting over six years, without legislation, consultative white papers and parliamentary debate, is no restraint. It is abdication — and this abdication is not harmless. It is unconstitutional.
Pakistan’s financial regulators, including the SBP and the Securities and Exchange Commission of Pakistan (SECP), derive their powers from delegated authority, not divine right. The power to create law belongs to Parliament and is codified in Article 142 of the Constitution.
The SBP is empowered to enforce laws, not to invent them. By issuing a clarification that implicitly re-characterises the legal status of an entire asset class without any reference to an enabling statute, the SBP has once again demonstrated what scholars of post-colonial governance have long lamented: that in Pakistan, the state rules more often by notification than by legislation.
What does this mean for the citizen? It means that ordinary people, tech entrepreneurs, freelancers, crypto miners and remittance processors have operated under legal fog for six years. They have watched as their bank accounts were frozen, their mobile wallets flagged, and their exchanges shut down, all on the strength of a document that had no binding legal force beyond its regulatory boundaries, and now, with the stroke of a press note, that same document is being reinterpreted to suggest that the state never banned anything at all.
This is more than legal inconsistency, but institutional gaslighting.
Between 2018 and 2024, Pakistani authorities reportedly froze over 11,000 bank accounts linked to cryptocurrency transactions. In 2021 alone, the Federal Investigation Agency (FIA) froze the accounts of 1,064 individuals involved in crypto trading, processing transactions worth approximately Rs51 million (around $288,000) through platforms like Binance and Coinbase.
Despite the absence of any explicit legal prohibition on crypto ownership or trading, these enforcement actions were grounded almost entirely in the SBP’s 2018 circular, which merely advised financial institutions to avoid crypto-related activity pending future regulation.
The deeper constitutional failure here lies not in the SBP’s actions alone but in the complete absence of legislative engagement. In jurisdictions with comparable legal traditions, such as India, the UK and the EU, questions of digital assets have become matters of parliamentary urgency. The Indian parliament has repeatedly debated the status of crypto, even tabling draft legislation.
The European Union has enacted the landmark MiCA Regulation, a 400-page regulatory framework that licences crypto providers, protects consumers, and aligns with FATF guidelines. Even China and Russia have passed formal legislation, either to ban crypto outright or to regulate it within national security parameters.
Pakistan, in contrast, has done nothing. There is no Digital Assets Bill. There is no policy paper circulated for public consultation. There is no parliamentary standing committee on blockchain or fintech. There is no inter-agency protocol to determine which state institution owns the crypto question — SBP, SECP, FBR or MoITT. In fact, there is no clear national vision at all.
The only policy document in circulation is a working group draft from 2021, gathering dust in institutional inboxes. Now, into this vacuum, the Pakistan Crypto Council, a body reportedly tasked with helping the government develop its crypto roadmap. Among its recent announcements is a proposal to create a “Strategic Bitcoin Reserve”.
If this sounds like a parody of policy, that’s because it is. How can a country with no legal framework, licensing regime and custodial infrastructure entertain the idea of placing public funds into a volatile, decentralised, unregulated digital asset? This is not just poor financial judgment. It is potentially unconstitutional behaviour.
Public funds in Pakistan are governed by Articles 78 through 84 of the constitution and the Fiscal Responsibility and Debt Limitation Act, 2005. These frameworks mandate that all federal government expenditures, reserves or financial holdings must be subjected to parliamentary appropriation, audit by the auditor general, and reporting to the Public Accounts Committee.
There is no provision under which the federal government or any of its agencies may invest national wealth in a volatile digital asset like Bitcoin without clear statutory authority. Any attempt to do so would amount to an illegal transfer of public risk to private platforms and a violation of fiduciary duties owed to the Pakistani public. Yet the SBP remains silent. The Ministry of Finance is mute. Parliament is missing.
What is needed is not a clarification. What is needed is a constitutional reckoning.
Pakistan must immediately initiate a national process to create a Digital Assets Governance Act — a comprehensive, multi-sectoral framework that defines what digital assets are, how they are classified (commodity, currency, security, property), who is licensed to deal in them, what taxes apply, how foreign exchange flows are regulated, how AML/CFT protocols are enforced, and what judicial remedies exist for fraud, loss, or cybercrime. This law must be introduced not by bureaucrats, but by members of parliament. It must undergo public consultation. It must be debated, revised, passed and owned by the democratic process. Anything less than that is not reform. It is an illusion.
The SBP’s clarification, then, is not merely a statement about crypto. It is a mirror held up to the state, revealing a governance structure that remains more comfortable with advisories than accountability. It tells us that in the most foundational questions of economic sovereignty, we have built a regulatory state without a republic.
If Pakistan is to be serious about financial modernisation, it must first be serious about constitutional modernisation. It must be remembered that law is not a suggestion. It is the lifeblood of a republic, and no amount of clarification can substitute for legislation.
Until that lesson is learned, every press note we issue will be just that: a note. Typed. Posted. Forgotten. But the law remembers what the people do not. And one day, it will return for an accounting.
The writer is the director of the Centre for Law, Justice & Policy (CLJP) at Denning Law School. He holds an LLM in Negotiation and Dispute Resolution from Washington University.
Disclaimer: The viewpoints expressed in this piece are the writer’s own and don’t necessarily reflect Geo.tv’s editorial policy.
Originally published in The News
setTimeout(function(){
var scriptElement=document.createElement(‘script’);
scriptElement.type=”text/javascript”;
scriptElement.setAttribute=”async”;
scriptElement.src=”https://www.geo.tv/assets/front/js/lazysizes.min.js”;
document.body.appendChild(scriptElement);
}, 1000);
//setTimeout(function(){ $(‘.medium-insert-images’).find(‘figure’).show() }, 3000);
var loadDeferredJS = function() {
var lazyloadjs = [‘https://www.geo.tv/assets/front/js/lazysizes.min.js’];
var alljs = [‘https://www.geo.tv/assets/front/js/ui/thirdparty.js?ver=133’];
var jqueryjs = [‘https://www.geo.tv/assets/front/js/ui/jquery.min_new.js?ver=43’];
var bootstrapjs = [‘https://www.geo.tv/assets/front/js/ui/bootstarp.js?ver=55’];
var sliderjs = [‘https://www.geo.tv/assets/front/js/ui/swiper.min.js’];
var firebaseappjs = [‘https://www.gstatic.com/firebasejs/8.10.1/firebase-app.js’];
var firebasejs = [‘https://www.gstatic.com/firebasejs/8.10.1/firebase-analytics.js’,’https://www.gstatic.com/firebasejs/8.10.1/firebase-messaging.js’];
var firebasejs_tokenjs = [‘https://www.geo.tv/assets/front/js/push_notification.js?v=1.511’];
var alljscustom = [‘https://www.geo.tv/assets/front/js/ui/my.js?ver=232366′,’https://www.geo.tv/assets/front/js/mycustom.js?ver=646’];
/*setTimeout(function(){
lazyloadjs.forEach(function (item,index) {
var scriptElement=document.createElement(‘script’);
scriptElement.type=”text/javascript”;
scriptElement.src = item;
document.body.appendChild(scriptElement);
});
}, 500);*/
setTimeout(function(){
jqueryjs.forEach(function (item,index) {
var scriptElement=document.createElement(‘script’);
scriptElement.type=”text/javascript”;
scriptElement.src = item;
document.body.appendChild(scriptElement);
});
}, 1000);
// setTimeout(function(){
// bootstrapjs.forEach(function (item,index) {
// var scriptElement=document.createElement(‘script’);
// scriptElement.type=”text/javascript”;
// scriptElement.src = item;
// document.body.appendChild(scriptElement);
// });
// }, 2000);
const jqueryIntervalcheck = setInterval(function () {
if(typeof jQuery !== “undefined”){
clearInterval(jqueryIntervalcheck);
setTimeout(function(){
sliderjs.forEach(function (item,index) {
if(item == ‘https://www.geo.tv/assets/front/js/ui/swiper.min.js’){
var story_embed_gallery = $(‘.story-area’).find(‘.embedgallery’).length;
//var story_embed_gallery = 0;
if(parseInt(story_embed_gallery) > 0){
var scriptElement=document.createElement(‘script’);
scriptElement.type=”text/javascript”;
scriptElement.src = item;
document.body.appendChild(scriptElement);
}
}
});
}, 100);
setTimeout(function(){
alljscustom.forEach(function (item,index) {
var scriptElement=document.createElement(‘script’);
scriptElement.type=”text/javascript”;
scriptElement.src = item;
document.body.appendChild(scriptElement);
});
}, 1300);
/*const jqueryIntervalcount = setInterval(function () {
if(typeof jQuery !== “undefined”){
clearInterval(jqueryIntervalcount);*/
if($(‘.infogram-embed’).length > 0 || $(’embedinfogram’).length > 0)
{
!function (e, t, n, s) {
var i = “InfogramEmbeds”, o = e.getElementsByTagName(t)[0], d = /^http:/.test(e.location) ? “http:” : “https:”;
if (/^/{2}/.test(s) && (s = d + s), window[i] && window[i].initialized)window[i].process && window[i].process(); else if (!e.getElementById(n)) {
var a = e.createElement(t);
a.async = 1, a.id = n, a.src = s, o.parentNode.insertBefore(a, o)
}
}(document, “script”, “infogram-async”, “https://e.infogram.com/js/dist/embed-loader-min.js”);
}
if($(‘.flourishClass’).length > 0)
{
var scriptElement=document.createElement(‘script’);
scriptElement.type=”text/javascript”;
scriptElement.setAttribute=”async”;
scriptElement.src=”https://public.flourish.studio/resources/embed.js”;
document.body.appendChild(scriptElement);
}
if($(‘.apester-media’).length > 0)
{
var scriptElement=document.createElement(‘script’);
scriptElement.type=”text/javascript”;
scriptElement.setAttribute=”async”;
scriptElement.src=”https://static.apester.com/js/sdk/latest/apester-sdk.js”;
document.body.appendChild(scriptElement);
}
if($(‘.twitter-tweet’).length > 0)
{
var tweetObj = document.getElementsByClassName(‘tweetPost’);
var counter_tweet = 0;
if (tweetObj.length == 0) {
tweetObj = document.getElementsByClassName(‘twitter-tweet’);
$.each(tweetObj, function (i, v) {
$(this).attr(‘id’, ‘twitter-post-widget-‘ + i);
});
} else {
$.each(tweetObj, function (i, v) {
if($(this).find(‘.twitter-tweet’).length > 0){
$(this).find(‘.twitter-tweet’).attr(‘id’, ‘twitter-post-widget-‘ + counter_tweet);
counter_tweet++;
}
});
}
$.getScript(‘https://platform.twitter.com/widgets.js’, function () {
var k = 0;
var tweet = document.getElementById(‘twitter-post-widget-‘ + k);
var tweetParent, tweetID;
while (tweet) {
tweetParent = tweet.parentNode;
//tweetID = tweet.dataset.tweetId;
tweetID = tweetParent.getAttribute(“id”);
if(tweetID === null){
tweetID = tweet.dataset.tweetId;
}
//var tweetVideoClass = tweet.getAttribute(‘class’).split(‘ ‘)[0];
$(tweet).remove();
twttr.widgets.createTweet(
tweetID,
tweetParent
);
k++;
tweet = document.getElementById(‘twitter-post-widget-‘ + k);
}
});
/*==============*/
var tweetObjVid = document.getElementsByClassName(‘tweetVideo’);
var counter_tweet = 0;
if (tweetObjVid.length == 0) {
tweetObjVid = document.getElementsByClassName(‘twitter-video’);
$.each(tweetObjVid, function (i, v) {
$(this).attr(‘id’, ‘twitter-vid-widget-‘ + i);
});
} else {
$.each(tweetObjVid, function (i, v) {
if($(this).find(‘.twitter-video’).length > 0){
$(this).find(‘.twitter-tweet’).attr(‘id’, ‘twitter-vid-widget-‘ + counter_tweet);
counter_tweet++;
}
});
}
$.getScript(‘//platform.twitter.com/widgets.js’, function () {
var v = 0;
var tweetVid = document.getElementById(‘twitter-vid-widget-‘ + v);
var tweetParentVid, tweetIDVid;
while (tweetVid) {
tweetParentVid = tweetVid.parentNode;
//tweetIDVid = tweetVid.dataset.tweetId;
tweetIDVid = tweetParentVid.getAttribute(“id”);
if(tweetIDVid === null){
tweetIDVid = tweet.dataset.tweetId;
}
$(tweetVid).remove();
twttr.widgets.createVideo(
tweetIDVid,
tweetParentVid
);
v++;
tweetVid = document.getElementById(‘twitter-vid-widget-‘ + v);
}
});
}
if($(‘.instagram-media’).length > 0){
var scriptElement=document.createElement(‘script’);
scriptElement.type=”text/javascript”;
scriptElement.setAttribute=”async”;
scriptElement.src=”https://platform.instagram.com/en_US/embeds.js”;
document.body.appendChild(scriptElement);
}
if($(‘.tiktok-embed’).length > 0){
var scriptElement=document.createElement(‘script’);
scriptElement.type=”text/javascript”;
scriptElement.setAttribute=”async”;
scriptElement.src=”https://www.tiktok.com/embed.js”;
document.body.appendChild(scriptElement);
}
if($(‘.threadsPost’).length > 0){
var scriptElement=document.createElement(‘script’);
scriptElement.type=”text/javascript”;
scriptElement.setAttribute=”async”;
scriptElement.src=”https://www.threads.net/embed.js”;
document.body.appendChild(scriptElement);
}
if($(‘.fb-video’).length > 0 || $(‘.fb-post’).length > 0){
var container_width = $(window).width();
if(container_width 0){
let embed_url = $(‘.fb-video’).attr(‘data-href’);
let htmla=”
‘;
$(‘.fb-video’).parent(‘.embed_external_url’).html(htmla);
}
else{
let embed_url = $(‘.fb-post’).attr(‘data-href’);
let htmla=”
‘;
}
}
$(‘body’).prepend(‘
‘);
var scriptElement=document.createElement(‘script’);
scriptElement.type=”text/javascript”;
scriptElement.setAttribute=”async”;
scriptElement.src=”https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.11&appId=580305968816694″;
document.body.appendChild(scriptElement);
}
var scriptElement=document.createElement(‘script’);
scriptElement.type=”text/javascript”;
scriptElement.setAttribute=”async”;
scriptElement.src=”https://dcc4iyjchzom0.cloudfront.net/widget/loader.js”;
document.body.appendChild(scriptElement);
/*}
},100);*/ }
},100);
};
var raf = window.requestAnimationFrame || window.mozRequestAnimationFrame ||
window.webkitRequestAnimationFrame || window.msRequestAnimationFrame;
var loadDeferredJSCaptcha = function() {
var addJSNode = document.getElementById(“captchejs”);
var replacement = document.createElement(“div”);
replacement.innerHTML = addJSNode.textContent;
document.body.appendChild(replacement);
addJSNode.parentElement.removeChild(addJSNode);
};
window.addEventListener(‘load’, loadDeferredJS);
//window.addEventListener(‘load’, loadDeferredJSCaptcha);
#crypto #delusion