Packets Failing During Biometric Verification with System Exception

@ashok,
Those are all the logs for a single packet, I will appreciate your response. Thank you.

Regards,

John George

SinglePacketLog

I also attached(kindly click on SinglePacketLog above) a link for you to download the logs for easy access

Regards,

John

Hi @Johnny
As per the below logs from data share :

“System Error: DAT-SER-001
Message: Not allowed to generate new key pair for other domains or not allowed to generate base key**“

It appears that the ABIS certificate may have expired. Could we please check the ABIS certificate in the Key Manager database? If it has expired, could you please renew it and then try processing the packet again.

Hello @ashok ,

Thank you so very much for your response, kindly find below what I found:

mosip_keymgr=# \dt
List of relations
Schema | Name | Type | Owner
--------±----------------------±------±---------
keymgr | ca_cert_store | table | postgres
keymgr | data_encrypt_keystore | table | postgres
keymgr | key_alias | table | postgres
keymgr | key_policy_def | table | postgres
keymgr | key_store | table | postgres
keymgr | licensekey_list | table | postgres
keymgr | licensekey_permission | table | postgres
keymgr | partner_cert_store | table | postgres
keymgr | tsp_licensekey_map | table | postgres
(9 rows)

mosip_keymgr=# \d keymgr.key_store
Table “keymgr.key_store”
Column | Type | Collation | Nullable | Default
------------------±----------------------------±----------±---------±--------
id | character varying(36) | | not null |
master_key | character varying(36) | | not null |
private_key | character varying(2500) | | not null |
certificate_data | character varying | | not null |
cr_by | character varying(256) | | not null |
cr_dtimes | timestamp without time zone | | not null |
upd_by | character varying(256) | | |
upd_dtimes | timestamp without time zone | | |
is_deleted | boolean | | | false
del_dtimes | timestamp without time zone | | |
Indexes:
“pk_keystr_id” PRIMARY KEY, btree (id)

mosip_keymgr=# \d keymgr.key_alias
Table “keymgr.key_alias”
Column | Type | Collation | Nullable | Default
-------------------±----------------------------±----------±---------±--------
id | character varying(36) | | not null |
app_id | character varying(36) | | not null |
ref_id | character varying(128) | | |
key_gen_dtimes | timestamp without time zone | | |
key_expire_dtimes | timestamp without time zone | | |
status_code | character varying(36) | | |
lang_code | character varying(3) | | |
cr_by | character varying(256) | | not null |
cr_dtimes | timestamp without time zone | | not null |
upd_by | character varying(256) | | |
upd_dtimes | timestamp without time zone | | |
is_deleted | boolean | | | false
del_dtimes | timestamp without time zone | | |
cert_thumbprint | character varying(100) | | |
uni_ident | character varying(50) | | |
Indexes:
“pk_keymals_id” PRIMARY KEY, btree (id)
“uni_ident_const” UNIQUE CONSTRAINT, btree (uni_ident)

mosip_keymgr=# SELECT
mosip_keymgr-# id,
mosip_keymgr-# app_id,
mosip_keymgr-# ref_id,
mosip_keymgr-# key_gen_dtimes,
mosip_keymgr-# key_expire_dtimes,
mosip_keymgr-# status_code,
mosip_keymgr-# cert_thumbprint
mosip_keymgr-# FROM keymgr.key_alias
mosip_keymgr-# WHERE ref_id LIKE ‘%abis%’
mosip_keymgr-# OR ref_id LIKE ‘%datashare%’
mosip_keymgr-# OR ref_id LIKE ‘%mpartner%’
mosip_keymgr-# OR app_id LIKE ‘%datashare%’;
id | app_id | ref_id | key_gen_dtimes | key_expire_dtimes | status_code |
cert_thumbprint
--------------------------------------±---------±--------------------------±---------------------------±---------------------------±------------±---------

cecb18d1-56a7-4fea-b5ad-e2c14b681645 | RESIDENT | mpartner-default-resident | 2025-10-18 19:40:16.917218 | 2027-10-18 19:40:16.917218 | | E3E29FEC2
75331EFE2BC9344AE1C0A6D1EE680258D75A4D5F83251A0D63C7FE2
(1 row)

mosip_keymgr=# SELECT
mosip_keymgr-# app_id,
mosip_keymgr-# ref_id,
mosip_keymgr-# key_gen_dtimes,
mosip_keymgr-# key_expire_dtimes,
mosip_keymgr-# status_code,
mosip_keymgr-# cert_thumbprint
mosip_keymgr-# FROM keymgr.key_alias
mosip_keymgr-# WHERE ref_id = ‘mpartner-default-abis’;
app_id | ref_id | key_gen_dtimes | key_expire_dtimes | status_code | cert_thumbprint
--------±-------±---------------±------------------±------------±----------------
(0 rows)

mosip_keymgr=# SELECT
mosip_keymgr-# app_id,
mosip_keymgr-# ref_id,
mosip_keymgr-# key_expire_dtimes,
mosip_keymgr-# CURRENT_TIMESTAMP as current_time,
mosip_keymgr-# CASE
mosip_keymgr-# WHEN key_expire_dtimes < CURRENT_TIMESTAMP THEN ‘EXPIRED’
mosip_keymgr-# WHEN key_expire_dtimes < CURRENT_TIMESTAMP + INTERVAL ‘30 days’ THEN ‘EXPIRING SOON’
mosip_keymgr-# ELSE ‘VALID’
mosip_keymgr-# END as status
mosip_keymgr-# FROM keymgr.key_alias
mosip_keymgr-# WHERE key_expire_dtimes < CURRENT_TIMESTAMP + INTERVAL ‘30 days’
mosip_keymgr-# ORDER BY key_expire_dtimes;
app_id | ref_id | key_expire_dtimes | current_time | status
---------±-------±---------------------------±------------------------------±--------
PARTNER | test | 2026-02-11 23:05:40.933001 | 2026-03-06 13:34:32.188637+00 | EXPIRED
(1 row)

mosip_keymgr=# SELECT
mosip_keymgr-# app_id,
mosip_keymgr-# ref_id,
mosip_keymgr-# key_gen_dtimes,
mosip_keymgr-# key_expire_dtimes,
mosip_keymgr-# status_code
mosip_keymgr-# FROM keymgr.key_alias
mosip_keymgr-# WHERE ref_id IS NOT NULL
mosip_keymgr-# LIMIT 20;
app_id | ref_id | key_gen_dtimes | key_expire_dtimes | status_code
------------------------±--------------------------±---------------------------±---------------------------±------------
ROOT | | 2025-10-18 19:38:59.354598 | 2033-10-16 19:38:59.354598 |
KERNEL | SIGN | 2025-10-18 19:38:59.923357 | 2028-10-17 19:38:59.923357 |
PRE_REGISTRATION | | 2025-10-18 19:39:00.39997 | 2028-10-17 19:39:00.39997 |
REGISTRATION | | 2025-10-18 19:39:01.121987 | 2028-10-17 19:39:01.121987 |
REGISTRATION_PROCESSOR | | 2025-10-18 19:39:02.021636 | 2028-10-17 19:39:02.021636 |
ID_REPO | | 2025-10-18 19:39:03.088481 | 2028-10-17 19:39:03.088481 |
KERNEL | IDENTITY_CACHE | 2025-10-18 19:39:04.020208 | 2030-10-17 19:39:04.020208 |
RESIDENT | | 2025-10-18 19:40:06.801408 | 2028-10-17 19:40:06.801408 |
PMS | | 2025-10-18 19:40:08.210785 | 2029-10-17 19:40:08.210785 |
ADMIN_SERVICES | | 2025-10-18 19:40:09.622212 | 2028-10-17 19:40:09.622212 |
DIGITAL_CARD | | 2025-10-18 19:40:11.585608 | 2028-10-17 19:40:11.585608 |
COMPLIANCE_TOOLKIT | | 2025-10-18 19:40:13.693484 | 2028-10-17 19:40:13.693484 |
RESIDENT | mpartner-default-resident | 2025-10-18 19:40:16.917218 | 2027-10-18 19:40:16.917218 |
COMPLIANCE_TOOLKIT | COMP-FIR | 2025-10-18 19:40:17.833941 | 2027-10-18 19:40:17.833941 |
PRE_REGISTRATION | INDIVIDUAL | 2025-10-21 18:20:47.83145 | 2027-10-21 18:20:47.83145 |
REGISTRATION | 10001_10000 | 2026-01-30 11:25:13.336085 | 2028-01-30 11:25:13.336085 |
PARTNER | userpartner | 2026-02-03 18:45:28 | 2027-02-03 18:45:28 |
REGISTRATION | 10001_10001 | 2026-02-11 21:36:48.536041 | 2028-02-11 21:36:48.536041 |
PARTNER | test | 2026-02-11 23:06:25 | 2026-02-11 23:05:40.933001 |
PARTNER | test | 2026-02-11 23:06:40 | 2027-02-11 23:06:40 |
(20 rows)

mosip_keymgr=# \d keymgr.partner_cert_store
Table “keymgr.partner_cert_store”
Column | Type | Collation | Nullable | Default
-------------------±----------------------------±----------±---------±--------
cert_id | character varying(36) | | not null |
cert_subject | character varying(500) | | not null |
cert_issuer | character varying(500) | | not null |
issuer_id | character varying(36) | | not null |
cert_not_before | timestamp without time zone | | |
cert_not_after | timestamp without time zone | | |
partner_domain | character varying(36) | | |
cert_data | character varying | | |
signed_cert_data | character varying | | |
key_usage | character varying(150) | | |
organization_name | character varying(120) | | |
cert_thumbprint | character varying(100) | | |
cert_serial_no | character varying(50) | | |
cr_by | character varying(256) | | |
cr_dtimes | timestamp without time zone | | |
upd_by | character varying(256) | | |
upd_dtimes | timestamp without time zone | | |
is_deleted | boolean | | | false
del_dtimes | timestamp without time zone | | |
Indexes:
“pk_parcs_id” PRIMARY KEY, btree (cert_id)

mosip_keymgr=# SELECT
mosip_keymgr-# cert_id,
mosip_keymgr-# organization_name,
mosip_keymgr-# partner_domain,
mosip_keymgr-# cert_subject,
mosip_keymgr-# cert_issuer,
mosip_keymgr-# cert_not_before,
mosip_keymgr-# cert_not_after,
mosip_keymgr-# cert_thumbprint
mosip_keymgr-# FROM keymgr.partner_cert_store
mosip_keymgr-# WHERE organization_name LIKE ‘%abis%’
mosip_keymgr-# OR partner_domain = ‘ABIS’
mosip_keymgr-# OR organization_name LIKE ‘%mpartner%’
mosip_keymgr-# OR cert_subject LIKE ‘%abis%’;
cert_id | organization_name | partner_domain | cert_subject | cert_issuer | cert_not_before | cert_not_after | cert_thumbprint
---------±------------------±---------------±-------------±------------±----------------±---------------±----------------
(0 rows)

mosip_keymgr=# SELECT
mosip_keymgr-# organization_name,
mosip_keymgr-# partner_domain,
mosip_keymgr-# cert_not_after,
mosip_keymgr-# cr_dtimes
mosip_keymgr-# FROM keymgr.partner_cert_store
mosip_keymgr-# ORDER BY cr_dtimes DESC
mosip_keymgr-# LIMIT 10;
organization_name | partner_domain | cert_not_after | cr_dtimes
-------------------±---------------±--------------------±---------------------------
identiko | DEVICE | 2028-11-07 22:42:56 | 2026-02-11 23:06:40.842283
identiko | DEVICE | 2028-11-07 22:42:56 | 2026-02-11 23:06:26.079488
devicepartner1 | DEVICE | 2028-10-30 18:27:40 | 2026-02-03 18:45:28.629278
(3 rows)

mosip_keymgr=# SELECT
mosip_keymgr-# organization_name,
mosip_keymgr-# partner_domain,
mosip_keymgr-# cert_not_after,
mosip_keymgr-# CURRENT_TIMESTAMP as current_time
mosip_keymgr-# FROM keymgr.partner_cert_store
mosip_keymgr-# WHERE cert_not_after < CURRENT_TIMESTAMP
mosip_keymgr-# ORDER BY cert_not_after;
organization_name | partner_domain | cert_not_after | current_time
-------------------±---------------±---------------±-------------
(0 rows)

mosip_keymgr=# SELECT
mosip_keymgr-# organization_name,
mosip_keymgr-# partner_domain,
mosip_keymgr-# cert_not_after,
mosip_keymgr-# cert_subject
mosip_keymgr-# FROM keymgr.partner_cert_store
mosip_keymgr-# WHERE organization_name LIKE ‘%mpartner%’ OR cert_subject LIKE ‘%mpartner%’;
organization_name | partner_domain | cert_not_after | cert_subject
-------------------±---------------±---------------±-------------
(0 rows)

mosip_keymgr=# \c mosip_master
You are now connected to database “mosip_master” as user “postgres”.
mosip_master=# \d master.ca_cert_store
Table “master.ca_cert_store”
Column | Type | Collation | Nullable | Default
-----------------±----------------------------±----------±---------±--------
cert_id | character varying(36) | | not null |
cert_subject | character varying(500) | | not null |
cert_issuer | character varying(500) | | not null |
issuer_id | character varying(36) | | not null |
cert_not_before | timestamp without time zone | | |
cert_not_after | timestamp without time zone | | |
crl_uri | character varying(120) | | |
cert_data | character varying | | |
cert_thumbprint | character varying(100) | | |
cert_serial_no | character varying(50) | | |
partner_domain | character varying(36) | | |
cr_by | character varying(256) | | not null |
cr_dtimes | timestamp without time zone | | not null |
upd_by | character varying(256) | | |
upd_dtimes | timestamp without time zone | | |
is_deleted | boolean | | |
del_dtimes | timestamp without time zone | | |
Indexes:
“ca_cert_store_pk” PRIMARY KEY, btree (cert_id)
“pk_cacs_id” btree (cert_id)

  1. No ABIS-related certificates found in any of the key store tables

  2. The only expired certificate found is for PARTNER/test (expired on Feb 11, 2026), which is unrelated to ABIS

  3. Other certificates are valid including mpartner-default-resident (expires 2027)

  4. Query for mpartner-default-abis returned 0 rows

Regards,

John George

You can find a link to an attached file showing clearly the query result I executed:

Key Manager Database

Regards,

John George

Hi @ashok ,

Trust you are good, just following up, if there is any update.

Regards,

John

Hi @Johnny

As per the data shared, the below query is executed which limit the data set to 20 rows. This could be the reason for not getting the abis certificate related details.

SELECT app_id, ref_id, key_gen_dtimes,key_expire_dtimes,status_code FROM keymgr.key_alias WHERE ref_id IS NOT NULL LIMIT 20;

Please execute the below query and check whether we have abis related certificate in the key manager database:

SELECT * FROM keymgr.key_alias WHERE ref_id = 'mpartner-default-abis';

Hello @ashok ,

Thank you for your response.

I’ve run the exact queries you suggested and other queries also, and the results are conclusive:

segun@mosip-wireguardbastionhost1:~$ kubectl exec -n postgres -it postgres-postgresql-0 – psql -U postgres -d mosip_keymgr
Password for user postgres:
psql (15.4)
Type “help” for help.

mosip_keymgr=# SELECT * FROM keymgr.key_alias WHERE ref_id = ‘mpartner-default-abis’;
id | app_id | ref_id | key_gen_dtimes | key_expire_dtimes | status_code | lang_code | cr_by | cr_dtimes | upd_by | upd_dtimes | is_deleted | del_dtimes | cert_
thumbprint | uni_ident
----±-------±-------±---------------±------------------±------------±----------±------±----------±-------±-----------±-----------±-----------±-----
-----------±----------
(0 rows)

mosip_keymgr=# SELECT
mosip_keymgr-# app_id,
mosip_keymgr-# ref_id,
mosip_keymgr-# key_gen_dtimes,
mosip_keymgr-# key_expire_dtimes,
mosip_keymgr-# status_code
mosip_keymgr-# FROM keymgr.key_alias
mosip_keymgr-# WHERE ref_id LIKE ‘%abis%’
mosip_keymgr-# OR ref_id LIKE ‘%mpartner%’
mosip_keymgr-# OR app_id LIKE ‘%abis%’;
app_id | ref_id | key_gen_dtimes | key_expire_dtimes | status_code
----------±--------------------------±---------------------------±---------------------------±------------
RESIDENT | mpartner-default-resident | 2025-10-18 19:40:16.917218 | 2027-10-18 19:40:16.917218 |
(1 row)

mosip_keymgr=# SELECT
mosip_keymgr-# organization_name,
mosip_keymgr-# partner_domain,
mosip_keymgr-# cert_not_after,
mosip_keymgr-# cr_dtimes
mosip_keymgr-# FROM keymgr.partner_cert_store
mosip_keymgr-# WHERE organization_name LIKE ‘%abis%’
mosip_keymgr-# OR partner_domain = ‘ABIS’
mosip_keymgr-# OR organization_name LIKE ‘%mpartner%’;
organization_name | partner_domain | cert_not_after | cr_dtimes
-------------------±---------------±---------------±----------
(0 rows)

mosip_keymgr=# SELECT COUNT(*) FROM keymgr.key_alias;

count

20

(1 row)

Hi @Johnny
Looks like abis certificate is not configured in the environment. Please refer the below document:

Best regards,
MOSIP Team