{"_id":"@bakissation/tasdid","_rev":"16-85be893f5343ce09d0d5adc231ac591e","name":"@bakissation/tasdid","dist-tags":{"latest":"1.4.0","dev":"1.3.0-alpha.2","staging":"1.3.0-beta.2"},"versions":{"1.0.0":{"name":"@bakissation/tasdid","version":"1.0.0","keywords":["algeria","satim","cib","edahabia","payment","checkout","payment-orchestration","idempotency","reconciliation","refund","dinar","fintech","typescript"],"author":{"url":"@bakissation","name":"Abdelbaki Berkati"},"license":"MIT","_id":"@bakissation/tasdid@1.0.0","maintainers":[{"name":"bakissation","email":"abdelbaki.berkati@gmail.com"}],"homepage":"https://github.com/bakissation/tasdid#readme","bugs":{"url":"https://github.com/bakissation/tasdid/issues"},"dist":{"shasum":"eaa747198b99654d1349fdbeb846449cfbd50e1d","tarball":"https://registry.npmjs.org/@bakissation/tasdid/-/tasdid-1.0.0.tgz","fileCount":9,"integrity":"sha512-woU1A7adevzf+m1sJJBYWiEvWcUchTX/+ckNXI++r/81vJssonQWF1A5rJoT/gcIymnR6QjCrtBy1W8Wlmf9XQ==","signatures":[{"sig":"MEUCIQCmQW+PGQGc1G2krkDzuiSCOQv9K7nwWHvRV5/wH0SyiQIgb0qfMgH9fhWBAEC+2F2iSx1p1EmoP2FnS/dkPqQ/BjM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":179094},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"e4a1fd2e5b946633cae885c9d7a7e6b260576bf6","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"bakissation","email":"abdelbaki.berkati@gmail.com"},"repository":{"url":"git+https://github.com/bakissation/tasdid.git","type":"git"},"_npmVersion":"10.9.3","description":"Headless SATIM (CIB/Edahabia) payment-lifecycle orchestration for Algeria — register, reconcile, refund — with a guarded state machine, idempotency, pluggable storage and events. Direct-integration model, dinar-backed.","directories":{},"sideEffects":false,"_nodeVersion":"22.19.0","dependencies":{"@bakissation/dinar":"^1.1.0","@bakissation/satim":"^2.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.1","eslint":"^9.18.0","vitest":"^1.2.0","@eslint/js":"^9.18.0","typescript":"^5.3.3","@types/node":"^20.10.0","semantic-release":"^25.0.3","typescript-eslint":"^8.20.0"},"_npmOperationalInternal":{"tmp":"tmp/tasdid_1.0.0_1779501326007_0.9598184326852621","host":"s3://npm-registry-packages-npm-production"}},"1.1.0-alpha.1":{"name":"@bakissation/tasdid","version":"1.1.0-alpha.1","keywords":["algeria","satim","cib","edahabia","payment","checkout","payment-orchestration","idempotency","reconciliation","refund","dinar","fintech","typescript"],"author":{"url":"@bakissation","name":"Abdelbaki Berkati"},"license":"MIT","_id":"@bakissation/tasdid@1.1.0-alpha.1","maintainers":[{"name":"bakissation","email":"abdelbaki.berkati@gmail.com"}],"homepage":"https://github.com/bakissation/tasdid#readme","bugs":{"url":"https://github.com/bakissation/tasdid/issues"},"dist":{"shasum":"1e6fa696741128898b00e03d89e072c3fdaf8195","tarball":"https://registry.npmjs.org/@bakissation/tasdid/-/tasdid-1.1.0-alpha.1.tgz","fileCount":9,"integrity":"sha512-hOXpvsRmYKAE1JfKipwn1xlNWd8ygqsdNks+pbivliDdX4U+Jgiz3YaMQ3tP3dKPhjd0eFJN7oWH0eJZ+oHBEQ==","signatures":[{"sig":"MEYCIQCVaHgKC6ZtLLC/jwxQ80JeUHSVzcWac9vCzL6B2v4UtwIhAMPOU4wfhK0fk+P1Fc2Px3ZOzLegz2ojUadq+KhP+B6s","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bakissation%2ftasdid@1.1.0-alpha.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180820},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"ebf137d78f1aed8abbf82a1dacb175d092a80f88","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:15bfdca5-7722-456a-ad3c-6d0bbefd27d6"}},"repository":{"url":"git+https://github.com/bakissation/tasdid.git","type":"git"},"_npmVersion":"11.15.0","description":"Headless SATIM (CIB/Edahabia) payment-lifecycle orchestration for Algeria — register, reconcile, refund — with a guarded state machine, idempotency, pluggable storage and events. Direct-integration model, dinar-backed.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","dependencies":{"@bakissation/dinar":"^1.1.0","@bakissation/satim":"^2.0.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsup":"^8.0.1","eslint":"^9.18.0","vitest":"^1.2.0","@eslint/js":"^9.18.0","typescript":"^5.3.3","@types/node":"^20.10.0","semantic-release":"^25.0.3","typescript-eslint":"^8.20.0"},"_npmOperationalInternal":{"tmp":"tmp/tasdid_1.1.0-alpha.1_1779501588830_0.41639692452905575","host":"s3://npm-registry-packages-npm-production"}},"1.1.0-beta.1":{"name":"@bakissation/tasdid","version":"1.1.0-beta.1","keywords":["algeria","satim","cib","edahabia","payment","checkout","payment-orchestration","idempotency","reconciliation","refund","dinar","fintech","typescript"],"author":{"url":"@bakissation","name":"Abdelbaki Berkati"},"license":"MIT","_id":"@bakissation/tasdid@1.1.0-beta.1","maintainers":[{"name":"bakissation","email":"abdelbaki.berkati@gmail.com"}],"homepage":"https://github.com/bakissation/tasdid#readme","bugs":{"url":"https://github.com/bakissation/tasdid/issues"},"dist":{"shasum":"f4ade5116d03a7b853f555cc0786a0edfcb269f5","tarball":"https://registry.npmjs.org/@bakissation/tasdid/-/tasdid-1.1.0-beta.1.tgz","fileCount":9,"integrity":"sha512-1SwA1Hhu2OhVRJuWZQjfukQYY4uJTUIejgeNlNQXmb3MFLxVxXRbbRK5VN4H+RwtADF9nxqMgBymSaPI8ue3gQ==","signatures":[{"sig":"MEQCIF2UHSRB38WtncxmWpM0MTU7AmfyUZGPQNQlUP/OPYoJAiBgdmMomJXaqslRF8On66qJXWlVzgbyfJgBVvXtxCk1xA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bakissation%2ftasdid@1.1.0-beta.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180819},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"26ad57c0832facabf21e30f944d00ac9efbd94a5","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:15bfdca5-7722-456a-ad3c-6d0bbefd27d6"}},"repository":{"url":"git+https://github.com/bakissation/tasdid.git","type":"git"},"_npmVersion":"11.15.0","description":"Headless SATIM (CIB/Edahabia) payment-lifecycle orchestration for Algeria — register, reconcile, refund — with a guarded state machine, idempotency, pluggable storage and events. Direct-integration model, dinar-backed.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","dependencies":{"@bakissation/dinar":"^1.1.0","@bakissation/satim":"^2.0.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsup":"^8.0.1","eslint":"^9.18.0","vitest":"^1.2.0","@eslint/js":"^9.18.0","typescript":"^5.3.3","@types/node":"^20.10.0","semantic-release":"^25.0.3","typescript-eslint":"^8.20.0"},"_npmOperationalInternal":{"tmp":"tmp/tasdid_1.1.0-beta.1_1779501630254_0.2584235952586187","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@bakissation/tasdid","version":"1.1.0","keywords":["algeria","satim","cib","edahabia","payment","checkout","payment-orchestration","idempotency","reconciliation","refund","dinar","fintech","typescript"],"author":{"url":"@bakissation","name":"Abdelbaki Berkati"},"license":"MIT","_id":"@bakissation/tasdid@1.1.0","maintainers":[{"name":"bakissation","email":"abdelbaki.berkati@gmail.com"}],"homepage":"https://github.com/bakissation/tasdid#readme","bugs":{"url":"https://github.com/bakissation/tasdid/issues"},"dist":{"shasum":"e27e1e0fbb1c431c998930209d61e9ec9643c45c","tarball":"https://registry.npmjs.org/@bakissation/tasdid/-/tasdid-1.1.0.tgz","fileCount":9,"integrity":"sha512-B5xM5YVlaRyWuOZKn3sYy9yH/1IDKOZk9UsGSMAWMW/ty4t3T6g+ZGehpixWR9MLyL72BLMOfUV8POtxEnQ8nw==","signatures":[{"sig":"MEYCIQCzcn8/QK4E2td8b8X1zL4qwut+bATAR/f7UiLKK5RShwIhAOZgxqJ7NgovIoqDjTJFw1wtToi8Ltl07+k+OGekHJHh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bakissation%2ftasdid@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180812},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"bb62d62b39c71c9b5ab1775b9d8e72a658601e0e","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:15bfdca5-7722-456a-ad3c-6d0bbefd27d6"}},"repository":{"url":"git+https://github.com/bakissation/tasdid.git","type":"git"},"_npmVersion":"11.15.0","description":"Headless SATIM (CIB/Edahabia) payment-lifecycle orchestration for Algeria — register, reconcile, refund — with a guarded state machine, idempotency, pluggable storage and events. Direct-integration model, dinar-backed.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","dependencies":{"@bakissation/dinar":"^1.1.0","@bakissation/satim":"^2.0.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.1","eslint":"^9.18.0","vitest":"^1.2.0","@eslint/js":"^9.18.0","typescript":"^5.3.3","@types/node":"^20.10.0","semantic-release":"^25.0.3","typescript-eslint":"^8.20.0"},"_npmOperationalInternal":{"tmp":"tmp/tasdid_1.1.0_1779501679886_0.37784217112207874","host":"s3://npm-registry-packages-npm-production"}},"1.1.0-alpha.2":{"name":"@bakissation/tasdid","version":"1.1.0-alpha.2","keywords":["algeria","satim","cib","edahabia","payment","checkout","payment-orchestration","idempotency","reconciliation","refund","dinar","fintech","typescript"],"author":{"url":"@bakissation","name":"Abdelbaki Berkati"},"license":"MIT","_id":"@bakissation/tasdid@1.1.0-alpha.2","maintainers":[{"name":"bakissation","email":"abdelbaki.berkati@gmail.com"}],"homepage":"https://github.com/bakissation/tasdid#readme","bugs":{"url":"https://github.com/bakissation/tasdid/issues"},"dist":{"shasum":"db7b13f3954adef54736994781f75b7e5adabec1","tarball":"https://registry.npmjs.org/@bakissation/tasdid/-/tasdid-1.1.0-alpha.2.tgz","fileCount":9,"integrity":"sha512-KYIxaEnxQyMWorzVqTEyqFwu13VUML36nF00bu8hr21U2uOg4st+Yda8mRBtO0RmjdcA+Kg0anpnUMO/486lUA==","signatures":[{"sig":"MEYCIQD4ECkbfmxj5E3AR8JWm4kvhdz5VXl5AqNTwTWDpuHTHgIhAPdn72aqzr0whJx2Acwmulb2ZBHXeKzm8oAYs9oIAbjC","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bakissation%2ftasdid@1.1.0-alpha.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180969},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"d435f917416c34306d8d2009a51a5c6471e6eb52","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:15bfdca5-7722-456a-ad3c-6d0bbefd27d6"}},"repository":{"url":"git+https://github.com/bakissation/tasdid.git","type":"git"},"_npmVersion":"11.15.0","description":"Headless SATIM (CIB/Edahabia) payment-lifecycle orchestration for Algeria — register, reconcile, refund — with a guarded state machine, idempotency, pluggable storage and events. Direct-integration model, dinar-backed.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","dependencies":{"@bakissation/dinar":"^1.1.0","@bakissation/satim":"^2.0.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsup":"^8.0.1","eslint":"^9.18.0","vitest":"^1.2.0","@eslint/js":"^9.18.0","typescript":"^5.3.3","@types/node":"^20.10.0","semantic-release":"^25.0.3","typescript-eslint":"^8.20.0"},"_npmOperationalInternal":{"tmp":"tmp/tasdid_1.1.0-alpha.2_1779501964881_0.8822019501578844","host":"s3://npm-registry-packages-npm-production"}},"1.1.0-beta.2":{"name":"@bakissation/tasdid","version":"1.1.0-beta.2","keywords":["algeria","satim","cib","edahabia","payment","checkout","payment-orchestration","idempotency","reconciliation","refund","dinar","fintech","typescript"],"author":{"url":"@bakissation","name":"Abdelbaki Berkati"},"license":"MIT","_id":"@bakissation/tasdid@1.1.0-beta.2","maintainers":[{"name":"bakissation","email":"abdelbaki.berkati@gmail.com"}],"homepage":"https://github.com/bakissation/tasdid#readme","bugs":{"url":"https://github.com/bakissation/tasdid/issues"},"dist":{"shasum":"c53e65b676dfc07d158c25e98974068297e09a72","tarball":"https://registry.npmjs.org/@bakissation/tasdid/-/tasdid-1.1.0-beta.2.tgz","fileCount":9,"integrity":"sha512-A3se0pTGeYvblyi2e0OFZo+DJDPnY1nN/cwZRQfls/+dwGTCBfl/eE37jd4vxVposiRQ5WKaImG75Zj4fmg3lg==","signatures":[{"sig":"MEQCIDpc2tLxYysEf+HP2ubECC/2a6ltJL/PfsgsuDvdMeUPAiAMwHGdjonZX2tAyTP2KJwmb1Jzv1cXpR1XGXBKfeoPgg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bakissation%2ftasdid@1.1.0-beta.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180968},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"754b9e1776ee3697beefa5a0e5b8ab3e8099a0be","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:15bfdca5-7722-456a-ad3c-6d0bbefd27d6"}},"repository":{"url":"git+https://github.com/bakissation/tasdid.git","type":"git"},"_npmVersion":"11.15.0","description":"Headless SATIM (CIB/Edahabia) payment-lifecycle orchestration for Algeria — register, reconcile, refund — with a guarded state machine, idempotency, pluggable storage and events. Direct-integration model, dinar-backed.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","dependencies":{"@bakissation/dinar":"^1.1.0","@bakissation/satim":"^2.0.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsup":"^8.0.1","eslint":"^9.18.0","vitest":"^1.2.0","@eslint/js":"^9.18.0","typescript":"^5.3.3","@types/node":"^20.10.0","semantic-release":"^25.0.3","typescript-eslint":"^8.20.0"},"_npmOperationalInternal":{"tmp":"tmp/tasdid_1.1.0-beta.2_1779502005494_0.9138793559431126","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@bakissation/tasdid","version":"1.1.1","keywords":["algeria","satim","cib","edahabia","payment","checkout","payment-orchestration","idempotency","reconciliation","refund","dinar","fintech","typescript"],"author":{"url":"@bakissation","name":"Abdelbaki Berkati"},"license":"MIT","_id":"@bakissation/tasdid@1.1.1","maintainers":[{"name":"bakissation","email":"abdelbaki.berkati@gmail.com"}],"homepage":"https://github.com/bakissation/tasdid#readme","bugs":{"url":"https://github.com/bakissation/tasdid/issues"},"dist":{"shasum":"7b5835373f74d36f9e99f63a0efe722d9626b2ac","tarball":"https://registry.npmjs.org/@bakissation/tasdid/-/tasdid-1.1.1.tgz","fileCount":9,"integrity":"sha512-H+83tNI2mHXeFL37DrAKgch8VYQg5/nzAOWSz0DXnA0VGBBgBr5D6ByTkhhvNba5ysNmOMUdtSx1vD/vocWgYA==","signatures":[{"sig":"MEYCIQD2rZ+IC94leFA68mhBrLOWLQhxFuqpY1XeRy2t1Bm+vQIhALxhh8w0Ccg3puEOMOfr6khwgxVAffIwqGbeDqfCLd24","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bakissation%2ftasdid@1.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180961},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"b000574943afb1c0f55aca5b68f07edd4a4072af","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:15bfdca5-7722-456a-ad3c-6d0bbefd27d6"}},"repository":{"url":"git+https://github.com/bakissation/tasdid.git","type":"git"},"_npmVersion":"11.15.0","description":"Headless SATIM (CIB/Edahabia) payment-lifecycle orchestration for Algeria — register, reconcile, refund — with a guarded state machine, idempotency, pluggable storage and events. Direct-integration model, dinar-backed.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","dependencies":{"@bakissation/dinar":"^1.1.0","@bakissation/satim":"^2.0.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.1","eslint":"^9.18.0","vitest":"^1.2.0","@eslint/js":"^9.18.0","typescript":"^5.3.3","@types/node":"^20.10.0","semantic-release":"^25.0.3","typescript-eslint":"^8.20.0"},"_npmOperationalInternal":{"tmp":"tmp/tasdid_1.1.1_1779502047153_0.8331166760088204","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.1":{"name":"@bakissation/tasdid","version":"1.2.0-alpha.1","keywords":["algeria","satim","cib","edahabia","payment","checkout","payment-orchestration","idempotency","reconciliation","refund","dinar","fintech","typescript"],"author":{"url":"@bakissation","name":"Abdelbaki Berkati"},"license":"MIT","_id":"@bakissation/tasdid@1.2.0-alpha.1","maintainers":[{"name":"bakissation","email":"abdelbaki.berkati@gmail.com"}],"homepage":"https://github.com/bakissation/tasdid#readme","bugs":{"url":"https://github.com/bakissation/tasdid/issues"},"dist":{"shasum":"f058999abc9290e51c0cadb4de09eeec710d6ff3","tarball":"https://registry.npmjs.org/@bakissation/tasdid/-/tasdid-1.2.0-alpha.1.tgz","fileCount":9,"integrity":"sha512-mOkTjqbipRwF5yusgcPe5XCZjaYbWpUmcPvvFgnhRssqlafQA87utcFlto1XLqWbw6t/qfXKE2rFqFdUPo81GQ==","signatures":[{"sig":"MEYCIQDZaFeg4XqpWSPEP9bCEs+pu2iNUksLii0zavZl+u6NNQIhAMvB9+bWQShyXkDOwVHjKRMnIPIfQGuZOrbUEsyJcWyG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bakissation%2ftasdid@1.2.0-alpha.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":209887},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"33923a9683e274c1df6b48d15b708aceb8f1418d","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:15bfdca5-7722-456a-ad3c-6d0bbefd27d6"}},"repository":{"url":"git+https://github.com/bakissation/tasdid.git","type":"git"},"_npmVersion":"11.15.0","description":"Headless SATIM (CIB/Edahabia) payment-lifecycle orchestration for Algeria — register, reconcile, refund — with a guarded state machine, idempotency, pluggable storage and events. Direct-integration model, dinar-backed.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","dependencies":{"@bakissation/dinar":"^1.1.0","@bakissation/satim":"^2.0.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsup":"^8.0.1","eslint":"^9.18.0","vitest":"^1.2.0","@eslint/js":"^9.18.0","typescript":"^5.3.3","@types/node":"^20.10.0","semantic-release":"^25.0.3","typescript-eslint":"^8.20.0"},"_npmOperationalInternal":{"tmp":"tmp/tasdid_1.2.0-alpha.1_1779504659397_0.796443783621021","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-beta.1":{"name":"@bakissation/tasdid","version":"1.2.0-beta.1","keywords":["algeria","satim","cib","edahabia","payment","checkout","payment-orchestration","idempotency","reconciliation","refund","dinar","fintech","typescript"],"author":{"url":"@bakissation","name":"Abdelbaki Berkati"},"license":"MIT","_id":"@bakissation/tasdid@1.2.0-beta.1","maintainers":[{"name":"bakissation","email":"abdelbaki.berkati@gmail.com"}],"homepage":"https://github.com/bakissation/tasdid#readme","bugs":{"url":"https://github.com/bakissation/tasdid/issues"},"dist":{"shasum":"41d5f924bcd55cc4c1d5ba0cc4b6e1bf28fc73a4","tarball":"https://registry.npmjs.org/@bakissation/tasdid/-/tasdid-1.2.0-beta.1.tgz","fileCount":9,"integrity":"sha512-biDCa1ugbreXcIiAWrXzhTbr2mYjaB3qlVX3P2bLnl2lIama/BkqAKnUxT7dwXzKpCG4WhDvygdkmTRZQTg6mw==","signatures":[{"sig":"MEUCICw2D0vOPkV8HzDY69eN5O+WkvWKkIvQDxtI7F9ghvB7AiEAq8uSvr1lDZyArKIr4Jfb9cTvOPcHn2Ji4DquUHa7BGs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bakissation%2ftasdid@1.2.0-beta.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":209886},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"f126a7a61e6f9d39397e5d1199885bcb5954ee02","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:15bfdca5-7722-456a-ad3c-6d0bbefd27d6"}},"repository":{"url":"git+https://github.com/bakissation/tasdid.git","type":"git"},"_npmVersion":"11.15.0","description":"Headless SATIM (CIB/Edahabia) payment-lifecycle orchestration for Algeria — register, reconcile, refund — with a guarded state machine, idempotency, pluggable storage and events. Direct-integration model, dinar-backed.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","dependencies":{"@bakissation/dinar":"^1.1.0","@bakissation/satim":"^2.0.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsup":"^8.0.1","eslint":"^9.18.0","vitest":"^1.2.0","@eslint/js":"^9.18.0","typescript":"^5.3.3","@types/node":"^20.10.0","semantic-release":"^25.0.3","typescript-eslint":"^8.20.0"},"_npmOperationalInternal":{"tmp":"tmp/tasdid_1.2.0-beta.1_1779504716252_0.2164110946345934","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@bakissation/tasdid","version":"1.2.0","keywords":["algeria","satim","cib","edahabia","payment","checkout","payment-orchestration","idempotency","reconciliation","refund","dinar","fintech","typescript"],"author":{"url":"@bakissation","name":"Abdelbaki Berkati"},"license":"MIT","_id":"@bakissation/tasdid@1.2.0","maintainers":[{"name":"bakissation","email":"abdelbaki.berkati@gmail.com"}],"homepage":"https://github.com/bakissation/tasdid#readme","bugs":{"url":"https://github.com/bakissation/tasdid/issues"},"dist":{"shasum":"35e0f71906084b5d34664965c0b4dfc086bb7183","tarball":"https://registry.npmjs.org/@bakissation/tasdid/-/tasdid-1.2.0.tgz","fileCount":9,"integrity":"sha512-zcZ3binvD7PKvNEFAHWzftSBzxQi6d2MPMoPzMDNhp3JKHT45A8cecWAQLL4TCJll8MpYiOzrN1YKHcI8/E+Kw==","signatures":[{"sig":"MEQCIH0X69vpQ03XuXKlfRNnPpwL7nI8uoNUQjhAy3PuHx8UAiAS2+CpAFWRUy5CU1zGJ2N9HZUPjzH+StvqaoT0LOP/vg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bakissation%2ftasdid@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":209879},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"f5cdcc55061b0d616e7df35c134c46de7712223c","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:15bfdca5-7722-456a-ad3c-6d0bbefd27d6"}},"repository":{"url":"git+https://github.com/bakissation/tasdid.git","type":"git"},"_npmVersion":"11.15.0","description":"Headless SATIM (CIB/Edahabia) payment-lifecycle orchestration for Algeria — register, reconcile, refund — with a guarded state machine, idempotency, pluggable storage and events. Direct-integration model, dinar-backed.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","dependencies":{"@bakissation/dinar":"^1.1.0","@bakissation/satim":"^2.0.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.1","eslint":"^9.18.0","vitest":"^1.2.0","@eslint/js":"^9.18.0","typescript":"^5.3.3","@types/node":"^20.10.0","semantic-release":"^25.0.3","typescript-eslint":"^8.20.0"},"_npmOperationalInternal":{"tmp":"tmp/tasdid_1.2.0_1779504766718_0.33928254166799676","host":"s3://npm-registry-packages-npm-production"}},"1.3.0-alpha.1":{"name":"@bakissation/tasdid","version":"1.3.0-alpha.1","keywords":["algeria","satim","cib","edahabia","payment","checkout","payment-orchestration","idempotency","reconciliation","refund","dinar","fintech","typescript"],"author":{"url":"@bakissation","name":"Abdelbaki Berkati"},"license":"MIT","_id":"@bakissation/tasdid@1.3.0-alpha.1","maintainers":[{"name":"bakissation","email":"abdelbaki.berkati@gmail.com"}],"homepage":"https://github.com/bakissation/tasdid#readme","bugs":{"url":"https://github.com/bakissation/tasdid/issues"},"dist":{"shasum":"ffaaa2bee6276314cd20786c0ac5028b79c51ae8","tarball":"https://registry.npmjs.org/@bakissation/tasdid/-/tasdid-1.3.0-alpha.1.tgz","fileCount":9,"integrity":"sha512-Yqkjpu+m7PhBYwM7Kvr3LEhGqIeTGS4jrjF/XAtPcVrw+12Ik9ylye1ltRg7d/ZUxN9sgAXj9t+JEx4RmIzs2g==","signatures":[{"sig":"MEUCIQCZ4CDdoIsxMQ0l1JpcN7rXAlmyh0vvgzGVovlmQ0pRjwIgGFmD9YbBDAXUIsz0ntur+mM6LItaicKtLWAHcbS7fhI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bakissation%2ftasdid@1.3.0-alpha.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":219521},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"8a6237559919bbfb399d3bdc553a4119f3599ef2","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:15bfdca5-7722-456a-ad3c-6d0bbefd27d6"}},"repository":{"url":"git+https://github.com/bakissation/tasdid.git","type":"git"},"_npmVersion":"11.15.0","description":"Headless SATIM (CIB/Edahabia) payment-lifecycle orchestration for Algeria — register, reconcile, refund — with a guarded state machine, idempotency, pluggable storage and events. Direct-integration model, dinar-backed.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","dependencies":{"@bakissation/dinar":"^1.1.0","@bakissation/satim":"^2.0.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsup":"^8.0.1","eslint":"^9.18.0","vitest":"^1.2.0","@eslint/js":"^9.18.0","typescript":"^5.3.3","@types/node":"^20.10.0","semantic-release":"^25.0.3","typescript-eslint":"^8.20.0"},"_npmOperationalInternal":{"tmp":"tmp/tasdid_1.3.0-alpha.1_1779550178861_0.33809438309878637","host":"s3://npm-registry-packages-npm-production"}},"1.3.0-beta.1":{"name":"@bakissation/tasdid","version":"1.3.0-beta.1","keywords":["algeria","satim","cib","edahabia","payment","checkout","payment-orchestration","idempotency","reconciliation","refund","dinar","fintech","typescript"],"author":{"url":"@bakissation","name":"Abdelbaki Berkati"},"license":"MIT","_id":"@bakissation/tasdid@1.3.0-beta.1","maintainers":[{"name":"bakissation","email":"abdelbaki.berkati@gmail.com"}],"homepage":"https://github.com/bakissation/tasdid#readme","bugs":{"url":"https://github.com/bakissation/tasdid/issues"},"dist":{"shasum":"03b27f7fa92cb8633e4b93eab7faab72d7a67b5f","tarball":"https://registry.npmjs.org/@bakissation/tasdid/-/tasdid-1.3.0-beta.1.tgz","fileCount":9,"integrity":"sha512-0I6ZVBniuMCTU2ZJCZmuwl7PEZp0uZvFPxj38zMPzC3FzGaKJWzdFUSoxuOAjvX8cPMjtq0rb/M9TmPfyXKkiQ==","signatures":[{"sig":"MEUCIQD5arTG5GJiCuHDS9ktnzM2vVHaocqCZYyNgfrd996fDQIgA1EXkRsAzyjTrm9CTtkFdgI4HdSP2KLwOfYYRw3tZcA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bakissation%2ftasdid@1.3.0-beta.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":219520},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"55f0c85fc3e3becd6f1d6204d0113c89821c9810","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:15bfdca5-7722-456a-ad3c-6d0bbefd27d6"}},"repository":{"url":"git+https://github.com/bakissation/tasdid.git","type":"git"},"_npmVersion":"11.15.0","description":"Headless SATIM (CIB/Edahabia) payment-lifecycle orchestration for Algeria — register, reconcile, refund — with a guarded state machine, idempotency, pluggable storage and events. Direct-integration model, dinar-backed.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","dependencies":{"@bakissation/dinar":"^1.1.0","@bakissation/satim":"^2.0.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsup":"^8.0.1","eslint":"^9.18.0","vitest":"^1.2.0","@eslint/js":"^9.18.0","typescript":"^5.3.3","@types/node":"^20.10.0","semantic-release":"^25.0.3","typescript-eslint":"^8.20.0"},"_npmOperationalInternal":{"tmp":"tmp/tasdid_1.3.0-beta.1_1779550575570_0.08844770952737391","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@bakissation/tasdid","version":"1.3.0","keywords":["algeria","satim","cib","edahabia","payment","checkout","payment-orchestration","idempotency","reconciliation","refund","dinar","fintech","typescript"],"author":{"url":"@bakissation","name":"Abdelbaki Berkati"},"license":"MIT","_id":"@bakissation/tasdid@1.3.0","maintainers":[{"name":"bakissation","email":"abdelbaki.berkati@gmail.com"}],"homepage":"https://github.com/bakissation/tasdid#readme","bugs":{"url":"https://github.com/bakissation/tasdid/issues"},"dist":{"shasum":"cc8792df22807620e9fd991b8339a6e14efbb501","tarball":"https://registry.npmjs.org/@bakissation/tasdid/-/tasdid-1.3.0.tgz","fileCount":9,"integrity":"sha512-EZZXquicIGp/lolYj2ov56qevpK0WRrgmxbkRfdi/G3aSaZoeDpsbpT32mo6fbW5ejH7ghbOvyPA8scPnyH6Lw==","signatures":[{"sig":"MEUCIQCtsokKLkP11/j81oCqqmuCJMzuK5CxJMaWIk1R16pDhAIgc/2JpsRUPNvXR4e7EiC4aSfm6vwU/RF9Iyc8K/QeSVY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bakissation%2ftasdid@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":219513},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"bc1b254494bc6033bca2ad35b9960340c7372a10","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:15bfdca5-7722-456a-ad3c-6d0bbefd27d6"}},"repository":{"url":"git+https://github.com/bakissation/tasdid.git","type":"git"},"_npmVersion":"11.15.0","description":"Headless SATIM (CIB/Edahabia) payment-lifecycle orchestration for Algeria — register, reconcile, refund — with a guarded state machine, idempotency, pluggable storage and events. Direct-integration model, dinar-backed.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","dependencies":{"@bakissation/dinar":"^1.1.0","@bakissation/satim":"^2.0.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.1","eslint":"^9.18.0","vitest":"^1.2.0","@eslint/js":"^9.18.0","typescript":"^5.3.3","@types/node":"^20.10.0","semantic-release":"^25.0.3","typescript-eslint":"^8.20.0"},"_npmOperationalInternal":{"tmp":"tmp/tasdid_1.3.0_1779550655862_0.6357377475926793","host":"s3://npm-registry-packages-npm-production"}},"1.3.0-alpha.2":{"name":"@bakissation/tasdid","version":"1.3.0-alpha.2","keywords":["algeria","satim","cib","edahabia","payment","checkout","payment-orchestration","idempotency","reconciliation","refund","dinar","fintech","typescript"],"author":{"url":"@bakissation","name":"Abdelbaki Berkati"},"license":"MIT","_id":"@bakissation/tasdid@1.3.0-alpha.2","maintainers":[{"name":"bakissation","email":"abdelbaki.berkati@gmail.com"}],"homepage":"https://github.com/bakissation/tasdid#readme","bugs":{"url":"https://github.com/bakissation/tasdid/issues"},"dist":{"shasum":"aa95b8be0bc9d60fd3b5c14666777c402e454dec","tarball":"https://registry.npmjs.org/@bakissation/tasdid/-/tasdid-1.3.0-alpha.2.tgz","fileCount":9,"integrity":"sha512-gVXwelv3N8z/3EF+aNMHpYZT5diBR8QY02/+vSsXubRxrFhI9JQsxc1jzLlHLLUBIO1Mh7/z/imNVCvTtvh3dA==","signatures":[{"sig":"MEUCIQDgSSxrQiAek9c+6ujxoKhTeCEqChdg1cg90u/9Ty2oPAIgNf7Bhwh4aQDKAlz8YGPnc7GqxXJ0aM+zITu9qabaPzU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bakissation%2ftasdid@1.3.0-alpha.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":224291},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"19a2f860371fde394431f78061e8b327499a2d5b","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:15bfdca5-7722-456a-ad3c-6d0bbefd27d6"}},"repository":{"url":"git+https://github.com/bakissation/tasdid.git","type":"git"},"_npmVersion":"11.15.0","description":"Headless SATIM (CIB/Edahabia) payment-lifecycle orchestration for Algeria — register, reconcile, refund — with a guarded state machine, idempotency, pluggable storage and events. Direct-integration model, dinar-backed.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","dependencies":{"@bakissation/dinar":"^1.1.0","@bakissation/satim":"^2.0.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsup":"^8.0.1","eslint":"^9.18.0","vitest":"^1.2.0","@eslint/js":"^9.18.0","typescript":"^5.3.3","@types/node":"^20.10.0","semantic-release":"^25.0.3","typescript-eslint":"^8.20.0"},"_npmOperationalInternal":{"tmp":"tmp/tasdid_1.3.0-alpha.2_1779551908530_0.34998085245841004","host":"s3://npm-registry-packages-npm-production"}},"1.3.0-beta.2":{"name":"@bakissation/tasdid","version":"1.3.0-beta.2","keywords":["algeria","satim","cib","edahabia","payment","checkout","payment-orchestration","idempotency","reconciliation","refund","dinar","fintech","typescript"],"author":{"url":"@bakissation","name":"Abdelbaki Berkati"},"license":"MIT","_id":"@bakissation/tasdid@1.3.0-beta.2","maintainers":[{"name":"bakissation","email":"abdelbaki.berkati@gmail.com"}],"homepage":"https://github.com/bakissation/tasdid#readme","bugs":{"url":"https://github.com/bakissation/tasdid/issues"},"dist":{"shasum":"79eb58dd3be18497c07fcd00869a6060bd109602","tarball":"https://registry.npmjs.org/@bakissation/tasdid/-/tasdid-1.3.0-beta.2.tgz","fileCount":9,"integrity":"sha512-sbouKolTHGDqHHYcA3HG3vhIfoeSo1smFxhM6N7IbPH20kaz5mXdiUwwHI0FTwADrM1VRGunROwii3E/2upNnQ==","signatures":[{"sig":"MEYCIQC0oCf0ovQes/FttH2Afz7wKEOuo+SU1CN8S1sVARN74AIhANlsPyMDITqu7ywlY5ABDQUztmf8p7bt7L1mAE8ZLP7u","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bakissation%2ftasdid@1.3.0-beta.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":224290},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"0fc4619f48ca4de80f633a8f684c83c554662842","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:15bfdca5-7722-456a-ad3c-6d0bbefd27d6"}},"repository":{"url":"git+https://github.com/bakissation/tasdid.git","type":"git"},"_npmVersion":"11.15.0","description":"Headless SATIM (CIB/Edahabia) payment-lifecycle orchestration for Algeria — register, reconcile, refund — with a guarded state machine, idempotency, pluggable storage and events. Direct-integration model, dinar-backed.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","dependencies":{"@bakissation/dinar":"^1.1.0","@bakissation/satim":"^2.0.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsup":"^8.0.1","eslint":"^9.18.0","vitest":"^1.2.0","@eslint/js":"^9.18.0","typescript":"^5.3.3","@types/node":"^20.10.0","semantic-release":"^25.0.3","typescript-eslint":"^8.20.0"},"_npmOperationalInternal":{"tmp":"tmp/tasdid_1.3.0-beta.2_1779552018638_0.9721158839187483","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@bakissation/tasdid","version":"1.4.0","description":"Headless SATIM (CIB/Edahabia) payment-lifecycle orchestration for Algeria — register, reconcile, refund — with a guarded state machine, idempotency, pluggable storage and events. Direct-integration model, dinar-backed.","author":{"name":"Abdelbaki Berkati","url":"@bakissation"},"license":"MIT","type":"module","main":"./dist/index.cjs","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"sideEffects":false,"engines":{"node":">=18"},"scripts":{"build":"tsup","dev":"tsup --watch","test":"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage","lint":"eslint .","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"dependencies":{"@bakissation/dinar":"^1.1.0","@bakissation/satim":"^2.0.0"},"devDependencies":{"@eslint/js":"^9.18.0","@types/node":"^20.10.0","eslint":"^9.18.0","semantic-release":"^25.0.3","tsup":"^8.0.1","typescript":"^5.3.3","typescript-eslint":"^8.20.0","vitest":"^1.2.0"},"keywords":["algeria","satim","cib","edahabia","payment","checkout","payment-orchestration","idempotency","reconciliation","refund","dinar","fintech","typescript"],"publishConfig":{"access":"public","provenance":true},"repository":{"type":"git","url":"git+https://github.com/bakissation/tasdid.git"},"bugs":{"url":"https://github.com/bakissation/tasdid/issues"},"homepage":"https://github.com/bakissation/tasdid#readme","gitHead":"35565c95197a0b884edc191bfeede2b270d180fd","_id":"@bakissation/tasdid@1.4.0","_nodeVersion":"24.15.0","_npmVersion":"11.15.0","dist":{"integrity":"sha512-yU1HcAVBp1rpN4AUhgA91ly0yrBaWLwwTDEsqU0Oo7umMl3lTuEsYQ3npVGktWDuq7o7asQZIELF2RUYumkxcg==","shasum":"509e2b978c9f3b6e66ccfa06b0e3d9b7420ea8c1","tarball":"https://registry.npmjs.org/@bakissation/tasdid/-/tasdid-1.4.0.tgz","fileCount":9,"unpackedSize":224283,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bakissation%2ftasdid@1.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIDeuIjFRwks2/zAao1iYPDU9HTUz6eoIH50j4Q1ewZkWAiBkVaCa/fuSxCXTeqFJkuYlJtAyWccJ6dOP6jUNZRpgTw=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:15bfdca5-7722-456a-ad3c-6d0bbefd27d6"}},"directories":{},"maintainers":[{"name":"bakissation","email":"abdelbaki.berkati@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/tasdid_1.4.0_1779552074819_0.6044023877654083"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-23T01:55:25.857Z","modified":"2026-05-23T16:01:15.323Z","1.0.0":"2026-05-23T01:55:26.145Z","1.1.0-alpha.1":"2026-05-23T01:59:48.963Z","1.1.0-beta.1":"2026-05-23T02:00:30.423Z","1.1.0":"2026-05-23T02:01:20.021Z","1.1.0-alpha.2":"2026-05-23T02:06:05.028Z","1.1.0-beta.2":"2026-05-23T02:06:45.668Z","1.1.1":"2026-05-23T02:07:27.321Z","1.2.0-alpha.1":"2026-05-23T02:50:59.539Z","1.2.0-beta.1":"2026-05-23T02:51:56.414Z","1.2.0":"2026-05-23T02:52:46.873Z","1.3.0-alpha.1":"2026-05-23T15:29:39.027Z","1.3.0-beta.1":"2026-05-23T15:36:15.732Z","1.3.0":"2026-05-23T15:37:36.022Z","1.3.0-alpha.2":"2026-05-23T15:58:28.747Z","1.3.0-beta.2":"2026-05-23T16:00:18.804Z","1.4.0":"2026-05-23T16:01:14.999Z"},"bugs":{"url":"https://github.com/bakissation/tasdid/issues"},"author":{"name":"Abdelbaki Berkati","url":"@bakissation"},"license":"MIT","homepage":"https://github.com/bakissation/tasdid#readme","keywords":["algeria","satim","cib","edahabia","payment","checkout","payment-orchestration","idempotency","reconciliation","refund","dinar","fintech","typescript"],"repository":{"type":"git","url":"git+https://github.com/bakissation/tasdid.git"},"description":"Headless SATIM (CIB/Edahabia) payment-lifecycle orchestration for Algeria — register, reconcile, refund — with a guarded state machine, idempotency, pluggable storage and events. Direct-integration model, dinar-backed.","maintainers":[{"name":"bakissation","email":"abdelbaki.berkati@gmail.com"}],"readme":"# @bakissation/tasdid\n\n**Headless SATIM (CIB/Edahabia) payment-lifecycle orchestration for Algeria.** Register → redirect → reconcile → refund, behind a guarded state machine with idempotency, pluggable storage, and events. The *direct-integration* model — the merchant's own SATIM creds, money settles to their own bank. `Dinar`-backed.\n\n[![npm](https://img.shields.io/npm/v/@bakissation/tasdid?label=npm&color=cb3837)](https://www.npmjs.com/package/@bakissation/tasdid)\n[![CI](https://github.com/bakissation/tasdid/actions/workflows/ci.yml/badge.svg)](https://github.com/bakissation/tasdid/actions/workflows/ci.yml)\n[![license](https://img.shields.io/badge/license-MIT-blue)](./LICENSE)\n\n```bash\nnpm install @bakissation/tasdid\n```\n\n`@bakissation/satim` and `@bakissation/dinar` come with it (dependencies).\n\n## Why\n\n`@bakissation/satim` is one call per gateway endpoint. Real apps need the *whole lifecycle* — and SATIM has **no webhooks** and **auto-cancels orders you don't confirm**, so reconciliation isn't optional. `tasdid` makes register → confirm → reconcile → refund one coherent, persisted, typed flow, and gets the parts everyone hand-rolls wrong (idempotency, reconciliation, double-refund guards) right.\n\n## Usage\n\n```ts\nimport { createSatimClient, fromEnv } from '@bakissation/satim';\nimport { Dinar } from '@bakissation/dinar';\nimport { createCheckout, createMemoryStore } from '@bakissation/tasdid';\n\nconst checkout = createCheckout({\n  satim: createSatimClient(fromEnv()),   // the merchant's own creds\n  store: createMemoryStore(),            // bring your own (Prisma/Postgres/Redis) in prod\n  onPaid: (p) => console.log('paid', p.orderNumber),\n});\n\n// 1. Start — register + get the SATIM redirect URL\nconst { paymentId, redirectUrl } = await checkout.start({\n  orderNumber: 'ORD-1001',\n  amount: Dinar.fromDinars(5000),\n  returnUrl: 'https://shop.dz/checkout/return',\n});\n// → redirect the buyer to redirectUrl (SATIM hosted page, independent browser context)\n\n// 2. On the return URL — verify against the gateway (never trust the redirect)\nconst result = await checkout.handleReturn({ orderId: req.query.orderId });\nif (result.paid) { /* fulfill */ }\n\n// 3. Buyer never came back? Reconcile (cron/queue) — getOrderStatus is the source of truth\nawait checkout.reconcile(paymentId);\n\n// 4. Refund (full or partial)\nawait checkout.refund(paymentId, Dinar.fromDinars(2000));\n```\n\n## The model (non-negotiable)\n\n- **Direct integration** — the merchant's own SATIM client/creds; money settles to the merchant. No fund pooling, no hosted multi-tenant service. Self-hosted only.\n- **Reconciliation is the source of truth** — SATIM has no webhooks; the return URL is only a *signal to verify*. State advances solely on server-confirmed `getOrderStatus`.\n- **Redirect, never iframe** — SATIM requires an \"independent browser context\", which also keeps the merchant in **PCI-DSS SAQ-A** (the card is only ever entered on SATIM's page; tasdid never sees a PAN).\n\n## State machine\n\n```\ncreated → pending → paid | failed | expired\npaid → partially_refunded → refunded\n```\nTerminal states are immutable (no double-charge, no double-refund); illegal transitions throw.\n\n## API\n\n| Method | Does |\n|---|---|\n| `createCheckout({ satim, store, language?, onPaid?/…, onTransition?, logger?, now? })` | Build a checkout |\n| `start(order)` | Idempotently register + return `{ paymentId, redirectUrl }` |\n| `handleReturn({ orderId \\| paymentId })` | Match the return → reconcile |\n| `reconcile(paymentId)` | Poll `getOrderStatus`, converge state, fire events |\n| `refund(paymentId, amount?)` | Full/partial refund (≤ deposited) |\n| `get(paymentId)` | Read current state — no gateway call (`PaymentResult \\| null`) |\n| `reconcilePending(checkout, store)` | Sweep all pending payments (cron/queue) |\n| `createMemoryStore()` / `createPostgresStore(db)` / `createRedisStore(client)` / `createPrismaStore(delegate)` | Bundled `PaymentStore` implementations |\n| `PaymentStore` | Interface to implement your own |\n\nAmounts are `Dinar` in and out. Every method returns a `PaymentResult`.\n\n## Storage\n\nFour stores ship in the box — **all dependency-free** (you pass your own client; tasdid never depends on `pg`/`ioredis`/`@prisma/client`):\n\n```ts\nimport {\n  createMemoryStore, createPostgresStore, postgresDDL,\n  createRedisStore, createPrismaStore, prismaSchema,\n} from '@bakissation/tasdid';\n\ncreateMemoryStore();                  // dev/test\ncreatePostgresStore(pgPool);          // your node-postgres Pool — run postgresDDL() once\ncreateRedisStore(ioredisClient);      // your ioredis-compatible client\ncreatePrismaStore(prisma.tasdidPayment); // your Prisma delegate — add prismaSchema() to your schema\n```\n\nOr implement `PaymentStore` yourself — just make `claim` atomic (`INSERT … ON CONFLICT`). Reconcile abandoned payments from a cron with `reconcilePending(checkout, store)`.\n\n## Correctness extras\n\n- **Expiry** — SATIM auto-cancels an unconfirmed order after **20 minutes**; tasdid mirrors that (`expiresInMinutes`, default 20) so abandoned payments reach `expired` on a clock, not just on a gateway error.\n- **Refund idempotency** — `refund(id, amount?, { idempotencyKey })`; retrying with the same key is a no-op (no double-refund).\n- **Audit history** — every payment carries a `history` of state transitions (and `refunds`), for disputes/debugging.\n- **Refund reconciliation** — `reconcile` re-checks `paid` payments and converges to `refunded` if the gateway reports a refund tasdid never recorded (a refund done directly at SATIM, or a crash after the gateway refund succeeded). It never downgrades a paid payment otherwise, and warns if the gateway's amount disagrees with the recorded one.\n- **Sweep report** — `reconcilePending` returns a classified `SweepSummary` (`paid`/`failed`/`expired`/`refunded`/`stillPending` counts + a `failures` list) so a cron can alert on what didn't settle — the only real window into health when the gateway has no webhooks.\n\n## Observability\n\n- **`onTransition(event)`** fires on *every* state change (`TransitionRecord & { paymentId, orderNumber }`) — the superset of the typed `onPaid`/`onFailed`/`onRefunded`/`onExpired` events. It's the seam for durable, at-least-once delivery (wire it to an outbox/queue).\n- **`logger`** — pass any structural logger (`console`, pino, winston…); tasdid logs each transition and gateway call with correlation fields (`paymentId`/`orderNumber`/`orderId`). It **never logs a PAN or credentials**. Defaults to a no-op.\n- **`now`** — inject a clock (`() => Date`) to make the 20-minute expiry deterministic in tests.\n\n```ts\ncreateCheckout({\n  satim, store,\n  logger: console,\n  onTransition: (e) => queue.publish('payment.transition', e), // outbox seam\n});\n```\n\n## Not tax/PCI advice\nKeeps you in SAQ-A *by construction* (redirect-only, never touches card data), but you're still responsible for your site's SAQ-A obligations and SATIM certification (SSL, prominent amount, captcha, CIB logo, receipt) — see the satim-ts certification docs.\n\n## License\n\nMIT © Abdelbaki Berkati\n\n## Credits\n\nBuilt and maintained by **Abdelbaki Berkati** — [berkati.xyz](https://berkati.xyz) · [@bakissation](https://github.com/bakissation).\n","readmeFilename":"README.md"}