{"_id":"@dodopayments/better-auth","_rev":"29-c8a696190327b352664fcb2b2708608c","name":"@dodopayments/better-auth","dist-tags":{"latest":"1.6.6"},"versions":{"0.1.1":{"name":"@dodopayments/better-auth","version":"0.1.1","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@0.1.1","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"dist":{"shasum":"3c5fe11b7f9d8a7dc7fcea0def5fb3d66f5a7d4b","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-0.1.1.tgz","fileCount":20,"integrity":"sha512-FSXQdBAW/2gUMusiO4+yac4XZAUL5k9vHXt2WtrnC4VkJ0gFBXXctypWkA/Tut8sJrNTcdbaJZC1kQ6eV1nOAw==","signatures":[{"sig":"MEYCIQCuew46r1hsWRCkKGhLbU+0T/z9/5iIgTLMnASDSgWrcAIhAPGjFLzxPc4aVlppx/NbfZTmBA8RExoE0meEwOmN9yeH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3602287},"type":"module","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"ae9addb62ca49891ab399e9fecba634342ee8802","scripts":{"dev":"rollup -c -w","build":"rollup -c","format":"prettier --write .","check-types":"tsc --noEmit","check-format":"prettier --check ."},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"_npmVersion":"10.8.2","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"20.19.3","dependencies":{"@dodopayments/core":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","rollup":"^4.0.0","rollup-plugin-dts":"^6.1.0","@dodo/typescript-config":"*","@rollup/plugin-commonjs":"^25.0.0","@rollup/plugin-typescript":"^11.0.0","@rollup/plugin-node-resolve":"^15.0.0"},"peerDependencies":{"zod":"^3.25.73","dodopayments":"^1.42.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_0.1.1_1752845685575_0.9868236180649603","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@dodopayments/better-auth","version":"1.0.1","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.0.1","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"dist":{"shasum":"7378758b7aa72d34675c8d760621368d9dd7a4ce","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.0.1.tgz","fileCount":20,"integrity":"sha512-yBl1EyBzQoU+pyF+Gj6L6nQdkSAgttK80Xxe2WQ605t24zB05Wq5jtBoBSguKjcizNac5rab/lNxrwKGMqYNRQ==","signatures":[{"sig":"MEYCIQCHI3irSFPsyiDhr6MbfHzWCQ6zfIjRiC4C5mkZ48PfvQIhANw6f2nAppZQnG6xGTj3eZn28tbh3YtgQEHolzIdGlaH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4318786},"type":"module","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"904152255fd9b7dab8aab701401e8d1686b19061","scripts":{"dev":"rollup -c -w","build":"rollup -c","format":"prettier --write .","check-types":"tsc --noEmit","check-format":"prettier --check ."},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"_npmVersion":"10.8.2","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"20.19.4","dependencies":{"@dodopayments/core":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","rollup":"^4.0.0","rollup-plugin-dts":"^6.1.0","@dodo/typescript-config":"*","@rollup/plugin-commonjs":"^25.0.0","@rollup/plugin-typescript":"^11.0.0","@rollup/plugin-node-resolve":"^15.0.0"},"peerDependencies":{"zod":"^3.25.73","dodopayments":"^1.42.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.0.1_1753551693798_0.8376512425303848","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@dodopayments/better-auth","version":"1.0.2","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.0.2","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"dist":{"shasum":"304278d963c22036fee79b272fe2a8534c8f3eac","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.0.2.tgz","fileCount":16,"integrity":"sha512-Fc5gJU5XRAl9G5WzKK0LadxgQcoyQ++bMbfjXYo/qhTz2Zng0S3i3uc+BYrtzosMaoKkMlzCkihKKBwc6X0i2g==","signatures":[{"sig":"MEYCIQCIB8iXMJ+4GpBgQVd4bNHvQQvJM2z0DXjAYESuMwfsUQIhAMFQm1Vs8NCkljlsCxSz2kPlPz+3f46G26yn6T/fyypq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89895},"type":"module","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"f35d5b890804629a0769c8409d997e3437268d25","scripts":{"dev":"rollup -c -w","build":"tsc","format":"prettier --write .","check-types":"tsc --noEmit","check-format":"prettier --check ."},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"_npmVersion":"10.8.2","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"20.19.4","dependencies":{"@dodopayments/core":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","rollup":"^4.0.0","rollup-plugin-dts":"^6.1.0","@dodo/typescript-config":"*","@rollup/plugin-commonjs":"^25.0.0","@rollup/plugin-typescript":"^11.0.0","@rollup/plugin-node-resolve":"^15.0.0"},"peerDependencies":{"zod":"^3.25.73","dodopayments":"^1.42.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.0.2_1753558239118_0.930506104133844","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@dodopayments/better-auth","version":"1.1.0","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.1.0","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"dist":{"shasum":"0d1cd457c23c794458d1a006357daf4c93ae7422","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.1.0.tgz","fileCount":16,"integrity":"sha512-ZBStbwfcxQCCAxcZji+f7aqvXqbu9k+lnFJvAz4exXsH1vB7D9MtJwn88Y7sm8xXZqV0cYvQVNe7qu0QjeY6EQ==","signatures":[{"sig":"MEUCIQDSNWSZi4Qbs/RgVd2kFjuisDpRUWjwVEtaPWHMqiuHqAIgdP9Cv2m7vlecQVTe1+r+o1JT9zTjd4qqFVEapZCrnNc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89901},"type":"module","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"011e7cda892f6f685fb04563d9aa008a7c7c2f2f","scripts":{"dev":"rollup -c -w","build":"tsc","format":"prettier --write .","check-types":"tsc --noEmit","check-format":"prettier --check ."},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"_npmVersion":"10.9.2","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"22.17.1","dependencies":{"@dodopayments/core":"^0.1.14"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","rollup":"^4.0.0","rollup-plugin-dts":"^6.1.0","@dodo/typescript-config":"*","@rollup/plugin-commonjs":"^25.0.0","@rollup/plugin-typescript":"^11.0.0","@rollup/plugin-node-resolve":"^15.0.0"},"peerDependencies":{"zod":"^3.25.73","dodopayments":"^1.42.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.1.0_1753559220383_0.7403229667160536","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@dodopayments/better-auth","version":"1.1.1","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.1.1","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"dist":{"shasum":"68c337808b87489aa60d7cb14700aaab54f13294","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.1.1.tgz","fileCount":16,"integrity":"sha512-lEaIIGZoMCdPfBbZAU5QCuWyij4I38tcI8WdQdQONY7WFEL+neZYow2PnpnPMlj7EyZHnyzejeqmFcmvAvKawg==","signatures":[{"sig":"MEUCIQDryw+ZmfzyBRjA2ESXMsMPFPoxIGU/tHlzTrc4Irs5qAIgWuZ/GBKvTvQSbsfyUStQOt/90do9DOse0pnjP1AJuKM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89960},"type":"module","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"7aabf8973bdb8dbe4f7fd3961505156ec64153c6","scripts":{"dev":"rollup -c -w","build":"tsc","format":"prettier --write .","check-types":"tsc --noEmit","check-format":"prettier --check ."},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"_npmVersion":"10.9.2","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"22.17.1","dependencies":{"@dodopayments/core":"^0.1.14"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","rollup":"^4.0.0","rollup-plugin-dts":"^6.1.0","@dodo/typescript-config":"*","@rollup/plugin-commonjs":"^25.0.0","@rollup/plugin-typescript":"^11.0.0","@rollup/plugin-node-resolve":"^15.0.0"},"peerDependencies":{"zod":"^3.25.73","dodopayments":"^1.42.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.1.1_1753617809764_0.6319461378951783","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@dodopayments/better-auth","version":"1.1.2","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.1.2","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"dist":{"shasum":"157d8ad0b1d0d83571027350a42e61a2678453c9","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.1.2.tgz","fileCount":16,"integrity":"sha512-cD5hCadUVxsoaqjpYwg/BeA0gG9EEOyuI8dSOjYQl43qMssbKLHiRAd4TaYlpQfRTgSD3qS5tNnBoHCOLmm+DA==","signatures":[{"sig":"MEUCIALbAwwY19/aUiCXXY2Z8avzDUH446CdBGlL16epUdmwAiEAgCmnIpSe294mrQnWLwmwq1UTNfOYd9cm5lt1gHtYWLg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":90037},"type":"module","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"49a3f121bb5837026ce4204d5d6a87db9df27c60","scripts":{"dev":"rollup -c -w","build":"tsc","format":"prettier --write .","check-types":"tsc --noEmit","check-format":"prettier --check ."},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"_npmVersion":"10.9.3","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"22.18.0","dependencies":{"@dodopayments/core":"^0.1.14"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","rollup":"^4.0.0","rollup-plugin-dts":"^6.1.0","@dodo/typescript-config":"*","@rollup/plugin-commonjs":"^25.0.0","@rollup/plugin-typescript":"^11.0.0","@rollup/plugin-node-resolve":"^15.0.0"},"peerDependencies":{"zod":"^3.0.0","dodopayments":"^1.42.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.1.2_1756737038176_0.306653781528035","host":"s3://npm-registry-packages-npm-production"}},"1.1.3":{"name":"@dodopayments/better-auth","version":"1.1.3","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.1.3","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"dist":{"shasum":"ee5d9271ce8d4a771d29a88b2b3d2efb0188d856","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.1.3.tgz","fileCount":16,"integrity":"sha512-YjzALbE5JKG2uLWRZ9TLi9NJ7mcEPzot5rLg81e1qASAQ0yNzi/KuBiVRwPVS0nW41HQroXcknoKq2Av7FrpvQ==","signatures":[{"sig":"MEUCIQDCrpR1ztCQ/RI7b4/oh7uwFynsNFlikGnMtTk3j6V0tQIgXKS1wtzAVot1Z8NliPBFCpw6N/QyjGp233zMokfmCVs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89769},"type":"module","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"dfdbb500c7d0e1b5544bfc5553a2125359db95d3","scripts":{"dev":"rollup -c -w","build":"tsc","format":"prettier --write .","check-types":"tsc --noEmit","check-format":"prettier --check ."},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"_npmVersion":"10.9.3","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"@dodopayments/core":"^0.1.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","rollup":"^4.0.0","rollup-plugin-dts":"^6.1.0","@dodo/typescript-config":"*","@rollup/plugin-commonjs":"^25.0.0","@rollup/plugin-typescript":"^11.0.0","@rollup/plugin-node-resolve":"^15.0.0"},"peerDependencies":{"zod":"^3.0.0","dodopayments":"^1.53.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.1.3_1758529718017_0.7044751081628087","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@dodopayments/better-auth","version":"1.2.0","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.2.0","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"dist":{"shasum":"0b7b1a85c85610fdbc1424b135b95d77373b3c0c","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.2.0.tgz","fileCount":16,"integrity":"sha512-30IKJ6Vv4O08BQcLRn4hA7nvJhvz7fLBZxYZt1Lws/bVuYqjjaHLf7jHFXMpeDywTj468CEoZUhZSgn67X5q7w==","signatures":[{"sig":"MEUCIF0JO6DHwEMD+ByA486Q2np04y5oyvjhq8DxAURR6PMqAiEA9pnqBsT9eD8GStPObv5KYzqIz6aIlzXUkl85Mb1oOBI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89659},"type":"module","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"fcfc0788c0030e8c50679587be9aea297ffc0c16","scripts":{"dev":"rollup -c -w","build":"tsc","check-types":"tsc --noEmit"},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"_npmVersion":"10.9.3","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"@dodopayments/core":"^0.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","rollup":"^4.0.0","rollup-plugin-dts":"^6.1.0","@dodo/typescript-config":"*","@rollup/plugin-commonjs":"^25.0.0","@rollup/plugin-typescript":"^11.0.0","@rollup/plugin-node-resolve":"^15.0.0"},"peerDependencies":{"zod":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.2.0_1758800369673_0.10043238097285179","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@dodopayments/better-auth","version":"1.3.0","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.3.0","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"dist":{"shasum":"cd915b4d73340c78699306ce97b3de5d76bca030","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.3.0.tgz","fileCount":16,"integrity":"sha512-mEvF7l0P8XowJmZ41TQRoHH+C9gsSvDX3jAmLpvhBhqT5j0e3zxiJbxumlYzGzq7Kwz43bhprmFs4z7PerUWrQ==","signatures":[{"sig":"MEUCIQDefbkMEbDOb74/a6kZpDyGzms4WUmFLqk5odOWinECugIgSyx1TaQ/cDa5IZ+DFK0QilO4/GbjDo6KB4kmEVJzzBI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":119899},"type":"module","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"8417eee312bad2ef5ed26659bdb33dfe633bcf65","scripts":{"dev":"rollup -c -w","build":"tsc","check-types":"tsc --noEmit"},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"_npmVersion":"10.9.3","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"22.20.0","dependencies":{"@dodopayments/core":"^0.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","rollup":"^4.0.0","rollup-plugin-dts":"^6.1.0","@dodo/typescript-config":"*","@rollup/plugin-commonjs":"^25.0.0","@rollup/plugin-typescript":"^11.0.0","@rollup/plugin-node-resolve":"^15.0.0"},"peerDependencies":{"zod":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.3.0_1761335965251_0.7270928158958687","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"@dodopayments/better-auth","version":"1.3.1","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.3.1","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"dist":{"shasum":"249586a91a3b2c391fb69e444e8b62e36588b212","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.3.1.tgz","fileCount":16,"integrity":"sha512-NBn4qZVDpjqwT8vEsuPvI8LcV3LMbk+vGXWg0Kuzvyg4vJalglFcoNicWLeDlAICgoQzZQAho5+3Iobz4s4tCA==","signatures":[{"sig":"MEUCIQDbsQ1LQ3gvt7JCLkaiAkaLqLwIiqSyzMh97QEWv0pDwQIgUKaXbZU2GpGp/KNXfkUegTFSNH8NrLsC/AKyI165zYE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":120747},"type":"module","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"e93aa83a053713257140d1fef64cb1d751db99a2","scripts":{"dev":"rollup -c -w","build":"tsc","check-types":"tsc --noEmit"},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"_npmVersion":"10.9.3","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"22.20.0","dependencies":{"@dodopayments/core":"^0.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","rollup":"^4.0.0","rollup-plugin-dts":"^6.1.0","@dodo/typescript-config":"*","@rollup/plugin-commonjs":"^25.0.0","@rollup/plugin-typescript":"^11.0.0","@rollup/plugin-node-resolve":"^15.0.0"},"peerDependencies":{"zod":"^3.25.0 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.3.1_1761731959074_0.3762135545861116","host":"s3://npm-registry-packages-npm-production"}},"1.3.2":{"name":"@dodopayments/better-auth","version":"1.3.2","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.3.2","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"dist":{"shasum":"4c6d03dc7d45431a97b32e2f135aabd9e16eaa25","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.3.2.tgz","fileCount":16,"integrity":"sha512-Fd3Pej1GuC0EkZG0iUibgwfILB+PvmiqipmQ98IxulMTOgSCPhvDzE0NqsJqr0gqar908T5XGYtBsZIf3C6Vww==","signatures":[{"sig":"MEUCIQCorFdvo+nmu+HPhWc4RmQ1yqW3xX8BekWBOkuNS16TiwIgZSs7oevcH2pS5Xjx5z+7UYGVw6DTJGXVrqCiDQ/CNdM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":120807},"type":"module","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"6bd3eb8eee742388441ed6fe6f2564f8561733fe","scripts":{"dev":"rollup -c -w","build":"tsc","check-types":"tsc --noEmit"},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"_npmVersion":"10.9.3","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"22.20.0","dependencies":{"@dodopayments/core":"^0.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","rollup":"^4.0.0","rollup-plugin-dts":"^6.1.0","@dodo/typescript-config":"*","@rollup/plugin-commonjs":"^25.0.0","@rollup/plugin-typescript":"^11.0.0","@rollup/plugin-node-resolve":"^15.0.0"},"peerDependencies":{"zod":"^3.25.0 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.3.2_1761808807978_0.2496754010074862","host":"s3://npm-registry-packages-npm-production"}},"1.3.3":{"name":"@dodopayments/better-auth","version":"1.3.3","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.3.3","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"dist":{"shasum":"3ce4c0cc67ee17a9c374ded97c175c83df7c218c","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.3.3.tgz","fileCount":16,"integrity":"sha512-cWENociU8+CNjpUPiGVQjouUVhgqeI/NRYUyj3Sg0uSP4FAAYW2SOT2XxM+gflgP4XDANoTnMNG5m00jvUrDdw==","signatures":[{"sig":"MEYCIQCFX1XftlBnXafD/XlQSakJmhZd6GUGs8dUGMw62dSc7QIhAORxviK7Xzq0EaKwQy2kgPyMwkg+AWUy2IV1hAMKkP/P","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":120807},"type":"module","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"47c52df4967b70405df44559129c6c8c6c0cf5f8","scripts":{"dev":"rollup -c -w","build":"tsc","check-types":"tsc --noEmit"},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"_npmVersion":"10.9.3","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"22.20.0","dependencies":{"@dodopayments/core":"^0.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","rollup":"^4.0.0","rollup-plugin-dts":"^6.1.0","@dodo/typescript-config":"*","@rollup/plugin-commonjs":"^25.0.0","@rollup/plugin-typescript":"^11.0.0","@rollup/plugin-node-resolve":"^15.0.0"},"peerDependencies":{"zod":"^3.25.0 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.3.3_1761910554812_0.5187326687200704","host":"s3://npm-registry-packages-npm-production"}},"1.3.4":{"name":"@dodopayments/better-auth","version":"1.3.4","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.3.4","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"dist":{"shasum":"66de256c8472f8485d81ce1f9a1d74fbd22031f2","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.3.4.tgz","fileCount":60,"integrity":"sha512-NAixFvKhchEJlkVE4Oa4Oqw/dmByS7PbwgyFRR7LD3lQZYDA7owLxFZbZGC099TY4bgBHo4znmbcazAHanWm2A==","signatures":[{"sig":"MEUCIQCDDzLIMnAfPltSs2VPJTNeIsXHdEy3Li15Jd6p47mutQIgH/FckuAkSRTabOIfVtmoa2aqHY6Js/uGeuxCa30H3IA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11030934},"type":"module","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"8cf4d0ee72a224ea3f6884316778dfcf81ba95b7","scripts":{"dev":"npm run build -- --watch","build":"tsup src/ --format cjs,esm --dts --clean --sourcemap","check-types":"tsc --noEmit"},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"_npmVersion":"10.9.3","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"22.20.0","dependencies":{"@dodopayments/core":"^0.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","@dodo/typescript-config":"*"},"peerDependencies":{"zod":"^3.25.0 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.3.4_1761916807449_0.8496593256304172","host":"s3://npm-registry-packages-npm-production"}},"1.3.5":{"name":"@dodopayments/better-auth","version":"1.3.5","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.3.5","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"dist":{"shasum":"237f03812357e125b16ba78c91b3b1e34fc869b9","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.3.5.tgz","fileCount":56,"integrity":"sha512-8TD4Uq3vFDCJh2Umb5M1FNOhFq70v/7CGtgu4QK5A2y8yKxW0weYx5Zt0DzO00foaTxiwlk3fN21T4Ilseqf2A==","signatures":[{"sig":"MEUCIDVmZ9EW84nBBie1P6LxXIRZ3lEcSAnhBufRmiSWGP71AiEA1ZMP3uYy39zoQ8zEv6F/rCKIRqC9nhf+7fTJcc1W51I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":360104},"type":"module","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"20c3a0a1b81a9cfa39220b2e6fc26d26a6c4f504","scripts":{"dev":"npm run build -- --watch","build":"tsup --config tsup.config.ts","check-types":"tsc --noEmit"},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"_npmVersion":"10.9.4","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"22.21.1","dependencies":{"@dodopayments/core":"^0.3.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","@dodo/typescript-config":"*"},"peerDependencies":{"zod":"^3.25.0 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.3.5_1763209012093_0.7289244951470322","host":"s3://npm-registry-packages-npm-production"}},"1.3.6":{"name":"@dodopayments/better-auth","version":"1.3.6","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.3.6","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"dist":{"shasum":"c1f355c72fb33f1f3593c9628ea3682827e3ee09","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.3.6.tgz","fileCount":56,"integrity":"sha512-YVovLOk/jCmgzOJ/rqIcLjweiI5OxR++kVp/dSq7/ZPzEli0VegOhjRMl38ctDF37uPMwlPxUezBl/c0BI3d6A==","signatures":[{"sig":"MEUCIQDRWkV4H1/fRBRnE0X/erwi3ntw2V6QrnKFe/e2wuWW0wIgB0//CoC9tonFdsrqHJzoCl2XXOy3BGDOq0nJeW4F1nY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":359954},"type":"module","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"6a186120c684af7e28775f8b8a00adbd7c8df261","scripts":{"dev":"npm run build -- --watch","build":"tsup --config tsup.config.ts","check-types":"tsc --noEmit"},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"_npmVersion":"10.9.4","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"22.21.1","dependencies":{"@dodopayments/core":"^0.3.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","@dodo/typescript-config":"*"},"peerDependencies":{"zod":"^3.25.0 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.3.6_1763209516628_0.8666800149701899","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@dodopayments/better-auth","version":"1.4.0","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.4.0","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"dist":{"shasum":"73a9f3acbd0e43882a7470281efaba36eda1a54f","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.4.0.tgz","fileCount":64,"integrity":"sha512-MZIEsAhMGCmxATGWpIdz0AB0uPtIhtc7Ol6BJGC7LJG6sPcOtOO1ZHMRdiNS5jOyXXG2LRvlh5FcAH4glP6+1w==","signatures":[{"sig":"MEUCIQCveyvH6QJlinHdkw7sbCdUpdCJf+EMokAKIIpCaY0h0QIgeOJFFVCxM4AGKNOx1oKXi5RXUFRmFkMMvv3bb4bi7BU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":429289},"type":"module","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"92557352725c8f0df5aaf6411f2c300c57401182","scripts":{"dev":"npm run build -- --watch","build":"tsup --config tsup.config.ts","check-types":"tsc --noEmit"},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"_npmVersion":"10.9.4","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"22.21.1","dependencies":{"@dodopayments/core":"^0.3.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","@dodo/typescript-config":"*"},"peerDependencies":{"zod":"^3.25.0 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.4.0_1763918982986_0.2071892969863336","host":"s3://npm-registry-packages-npm-production"}},"1.4.1":{"name":"@dodopayments/better-auth","version":"1.4.1","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.4.1","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"homepage":"https://github.com/dodopayments/dodo-adapters#readme","bugs":{"url":"https://github.com/dodopayments/dodo-adapters/issues"},"dist":{"shasum":"c06920d1d5a44ba7853dc5e3214acead52b251d3","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.4.1.tgz","fileCount":64,"integrity":"sha512-MFZsP2x2ob+oHXnXOpyoHdDT6SDbiAGqNl7McrVydLKq090WYRhhrjP64x4XgLwDweQhsBEVJVNfHFAmnQKi9g==","signatures":[{"sig":"MEUCIFOC6Ex67NQf6JHpuBEHeIuWw7lzH/jzgdMwXAifrlDiAiEA5jiJmhWMQXxoUctaTkSUPqtLE6QNn235CGfIgaQRsnY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dodopayments%2fbetter-auth@1.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":442238},"type":"module","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"6c72b878bf48288230bf8a62298720d85088dc3d","scripts":{"dev":"npm run build -- --watch","build":"tsup --config tsup.config.ts","check-types":"tsc --noEmit"},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"repository":{"url":"git+https://github.com/dodopayments/dodo-adapters.git","type":"git"},"_npmVersion":"10.9.4","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"22.21.1","dependencies":{"@dodopayments/core":"^0.3.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","@dodo/typescript-config":"*"},"peerDependencies":{"zod":"^3.25.0 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.4.1_1765626977565_0.249752855205031","host":"s3://npm-registry-packages-npm-production"}},"1.4.2":{"name":"@dodopayments/better-auth","version":"1.4.2","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.4.2","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"homepage":"https://github.com/dodopayments/dodo-adapters#readme","bugs":{"url":"https://github.com/dodopayments/dodo-adapters/issues"},"dist":{"shasum":"8cac8c031a969e8674584cc2cee80cfaf57234ab","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.4.2.tgz","fileCount":64,"integrity":"sha512-RrQXBg8exg43b7eafMeDuBkdLSxxkwxfdr1VAGzaoY28w2Sbc8pgQ8zrnhbzTEjmN97doCRp+9lACj0UdobWxQ==","signatures":[{"sig":"MEQCIGKukMEcSd48noaEQ378c0vHDw4xfsFYg5lBw1PICS07AiAeBhXFeaaNK414ibin/I6SrdZFPyVOEkPc4jnTp323dg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dodopayments%2fbetter-auth@1.4.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":370923},"type":"module","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"7c8934402c90dd20b8585de4aae2c12f36c6c7f8","scripts":{"dev":"npm run build -- --watch","build":"tsup --config tsup.config.ts","check-types":"tsc --noEmit"},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"repository":{"url":"git+https://github.com/dodopayments/dodo-adapters.git","type":"git"},"_npmVersion":"10.9.4","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"22.21.1","dependencies":{"@dodopayments/core":"^0.3.8"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","@dodo/typescript-config":"*"},"peerDependencies":{"zod":"^3.25.0 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.4.2_1766074620780_0.9152384752349203","host":"s3://npm-registry-packages-npm-production"}},"1.4.3":{"name":"@dodopayments/better-auth","version":"1.4.3","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.4.3","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"homepage":"https://github.com/dodopayments/dodo-adapters#readme","bugs":{"url":"https://github.com/dodopayments/dodo-adapters/issues"},"dist":{"shasum":"4c384514451a3e6d0894f9a9cc94072c42f76ac4","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.4.3.tgz","fileCount":64,"integrity":"sha512-kzDS57MFKbJt8cfsFHKGgQ7x8x3zM/cMpf8oWiLIbxqPBhf8tmJTLVQvlOYatLQQu+RrVqNVNAQf1i0D71En7A==","signatures":[{"sig":"MEUCIQCT+M2JyO5t34/40e/ICuSf1gBeDDovI8+T5+5NkWOloAIgUdyopIQSD9Peu9YyYe4/D9MggGS2oCHmucBEg/TnLa0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dodopayments%2fbetter-auth@1.4.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":369982},"type":"module","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"d27cf0836cb00e979b0d359d520ec601d763dd90","scripts":{"dev":"npm run build -- --watch","build":"tsup --config tsup.config.ts","check-types":"tsc --noEmit"},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"repository":{"url":"git+https://github.com/dodopayments/dodo-adapters.git","type":"git"},"_npmVersion":"10.9.4","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"22.22.0","dependencies":{"@dodopayments/core":"^0.3.8"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","@dodo/typescript-config":"*"},"peerDependencies":{"zod":"^3.25.0 || ^4.0.0","better-auth":"^1.4.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.4.3_1772628886605_0.8077538387373548","host":"s3://npm-registry-packages-npm-production"}},"1.4.4":{"name":"@dodopayments/better-auth","version":"1.4.4","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.4.4","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"homepage":"https://github.com/dodopayments/dodo-adapters#readme","bugs":{"url":"https://github.com/dodopayments/dodo-adapters/issues"},"dist":{"shasum":"f0f042bbe1483b0f5fa5cb1bfa155ef461669843","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.4.4.tgz","fileCount":64,"integrity":"sha512-pxJ9hS1NsGRbuRTyuFulZggP6Qd8dBKIJoRqnjrob6sm7EQQr9VKQdZTQTMZTsCKJj8unrRYQix8xVxJhzYSKA==","signatures":[{"sig":"MEYCIQDajN8MaOPpXyIwzkS64oqXwft5mxXfvFiyDwgExFy2owIhAJPnZtjsrvn3bhroviDsVFXlDhdkovPIKlcCGaCxElEU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dodopayments%2fbetter-auth@1.4.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":369983},"type":"module","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"e8e4e9656366356f40c7da6b92e392cec360ff18","scripts":{"dev":"npm run build -- --watch","build":"tsup --config tsup.config.ts","check-types":"tsc --noEmit"},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"repository":{"url":"git+https://github.com/dodopayments/dodo-adapters.git","type":"git"},"_npmVersion":"10.9.4","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"@dodopayments/core":"^0.3.10"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","@dodo/typescript-config":"*"},"peerDependencies":{"zod":"^3.25.0 || ^4.0.0","better-auth":"^1.4.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.4.4_1774416997650_0.5772590807834577","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@dodopayments/better-auth","version":"1.5.0","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.5.0","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"homepage":"https://github.com/dodopayments/dodo-adapters#readme","bugs":{"url":"https://github.com/dodopayments/dodo-adapters/issues"},"dist":{"shasum":"636c16fbb9e496fca51b0469d6f79fac92a2d167","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.5.0.tgz","fileCount":72,"integrity":"sha512-83ksGh/wVm0NnPmBtFOd/4uUkNUu1uduH7mokYAQqI15OPez9XIKhowvhuN52oOzzihGsYx4zihfIxAHmOlNzg==","signatures":[{"sig":"MEQCIDXfSf/Iag1B4N32eWF0gYV4066gIZjOKwgJxMjdf2iBAiB+92ohmqChXv8tFrirGSVD4LrCBKiEct/n13M6xivDkg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dodopayments%2fbetter-auth@1.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":378810},"type":"module","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"b48f788077c8093072b91f9d7fd425fb7f533257","scripts":{"dev":"npm run build -- --watch","build":"tsup --config tsup.config.ts","check-types":"tsc --noEmit"},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"repository":{"url":"git+https://github.com/dodopayments/dodo-adapters.git","type":"git"},"_npmVersion":"10.9.4","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"@dodopayments/core":"^0.3.10"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","@dodo/typescript-config":"*"},"peerDependencies":{"zod":"^3.25.0 || ^4.0.0","better-auth":"^1.4.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.5.0_1774718712701_0.5424431348128256","host":"s3://npm-registry-packages-npm-production"}},"1.6.1":{"name":"@dodopayments/better-auth","version":"1.6.1","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.6.1","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"homepage":"https://github.com/dodopayments/dodo-adapters#readme","bugs":{"url":"https://github.com/dodopayments/dodo-adapters/issues"},"dist":{"shasum":"972e48eb381c9ee15c55a7a7bcfd22dbaddd5f8d","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.6.1.tgz","fileCount":72,"integrity":"sha512-+tpTC1kYG+8MR3lO3VV86Xp9lCRV+ftqMrgGMQRwBgW615GnVJPCNCyY1x9myaHNg+lRvi7Cf6/dEGFNRfyOiw==","signatures":[{"sig":"MEYCIQD0N1od5Nk6lRF2MhpSPbt3dj/idchGWS3P/udEyxfAMwIhAPwu3+JE6dP55JWLrEm0FKDJ82Y4kUAEUGDpl6KfXzx5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dodopayments%2fbetter-auth@1.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":386431},"type":"module","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"136bdbffe92fcdb306045e4a1eaccc697ccf7b12","scripts":{"dev":"npm run build -- --watch","build":"tsup --config tsup.config.ts","check-types":"tsc --noEmit"},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"repository":{"url":"git+https://github.com/dodopayments/dodo-adapters.git","type":"git"},"_npmVersion":"10.9.7","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"@dodopayments/core":"^0.3.10"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","@dodo/typescript-config":"*"},"peerDependencies":{"zod":"^3.25.0 || ^4.0.0","better-auth":"^1.4.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.6.1_1776680745362_0.40738567259754155","host":"s3://npm-registry-packages-npm-production"}},"1.6.2":{"name":"@dodopayments/better-auth","version":"1.6.2","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.6.2","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"homepage":"https://github.com/dodopayments/dodo-adapters#readme","bugs":{"url":"https://github.com/dodopayments/dodo-adapters/issues"},"dist":{"shasum":"2f9d4ee69550b9f3b780233f436aad33c93b8f24","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.6.2.tgz","fileCount":72,"integrity":"sha512-kOBs+uwOYFa7PbVsGaE2iYGV5EiVUGlv2DV0GxX5ZqSXt38tJzfdyHRYuT2+0cQRZ3Z6097inNdF4YvRRDNuUQ==","signatures":[{"sig":"MEUCIQDA5fm8Gn85ww2BgJGpDfmeW6l3NLYji8UINpnlVM1Q5AIgQlsi1cJRe06bia8+3Sfk4zp30iEvs+qhT4XiAgAp5I4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dodopayments%2fbetter-auth@1.6.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":392113},"type":"module","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"5410c52610dc9aaf62c7fad7eff43acbfb74da0a","scripts":{"dev":"npm run build -- --watch","build":"tsup --config tsup.config.ts","check-types":"tsc --noEmit"},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"repository":{"url":"git+https://github.com/dodopayments/dodo-adapters.git","type":"git"},"_npmVersion":"10.9.7","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"@dodopayments/core":"^0.3.10"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","@dodo/typescript-config":"*"},"peerDependencies":{"zod":"^3.25.0 || ^4.0.0","better-auth":"^1.4.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.6.2_1776680836324_0.930451322283484","host":"s3://npm-registry-packages-npm-production"}},"1.6.3":{"name":"@dodopayments/better-auth","version":"1.6.3","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.6.3","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"homepage":"https://github.com/dodopayments/dodo-adapters#readme","bugs":{"url":"https://github.com/dodopayments/dodo-adapters/issues"},"dist":{"shasum":"5d4f05f34f0b70634ad86b1848ec8172b19bf0e8","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.6.3.tgz","fileCount":72,"integrity":"sha512-UIcfcpV5MFJ90heJ1rdo7Fxnows/6wFyv1hDBNwB1qUNGfrqdL/7WrHdQ1dVHBmL/kZ68OXIDokCxjSGzJqRwA==","signatures":[{"sig":"MEQCIE4TzEcxefsJbvIBpokPO/2PMNEvJ2N4LOxNuehpHnN2AiAynWhyHBNyGYUg1B3URbXhKo01Q3qmYFOkm/xOR1fqTw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dodopayments%2fbetter-auth@1.6.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":399618},"type":"module","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"}},"gitHead":"f066446928e6bed33873f7d51de57ec571684e9a","scripts":{"dev":"npm run build -- --watch","build":"tsup --config tsup.config.ts","check-types":"tsc --noEmit"},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"repository":{"url":"git+https://github.com/dodopayments/dodo-adapters.git","type":"git"},"_npmVersion":"10.9.7","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"@dodopayments/core":"^0.3.10"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","@dodo/typescript-config":"*"},"peerDependencies":{"zod":"^3.25.0 || ^4.0.0","better-auth":"^1.4.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.6.3_1779108521467_0.724354992736782","host":"s3://npm-registry-packages-npm-production"}},"1.6.4":{"name":"@dodopayments/better-auth","version":"1.6.4","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.6.4","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"homepage":"https://github.com/dodopayments/dodo-adapters#readme","bugs":{"url":"https://github.com/dodopayments/dodo-adapters/issues"},"dist":{"shasum":"f44cb87b102b849a3ab283c1ac0f491cf63dcc0b","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.6.4.tgz","fileCount":72,"integrity":"sha512-6tetpuxC8uFwNEZs2botuDl8NiWgtrWFdE4LZT3C7ekXteVBoo6mUt52IFQMuP0yKpBGe+DBSYVphhYUkqfCPQ==","signatures":[{"sig":"MEUCIC89V30tRwjy9jf6H+rMv5V2Sgts4DWqJds0ZMAjZc2zAiEAoc+HbzrE6iyC20b22aewiwwQPknK/5PJ0M02bId99Vs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dodopayments%2fbetter-auth@1.6.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":546878},"type":"module","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"}},"gitHead":"bce5b851f79a0159ff3285056d164a7cbfe11cd6","scripts":{"dev":"npm run build -- --watch","build":"tsup --config tsup.config.ts","check-types":"tsc --noEmit"},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"repository":{"url":"git+https://github.com/dodopayments/dodo-adapters.git","type":"git"},"_npmVersion":"10.9.8","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"@dodopayments/core":"^0.3.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","@dodo/typescript-config":"*"},"peerDependencies":{"zod":"^3.25.0 || ^4.0.0","better-auth":"^1.4.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.6.4_1784463866784_0.948093637895213","host":"s3://npm-registry-packages-npm-production"}},"1.6.5":{"name":"@dodopayments/better-auth","version":"1.6.5","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"url":"https://dodopayments.com","name":"Dodo Payments","email":"support@dodopayments.com"},"_id":"@dodopayments/better-auth@1.6.5","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"homepage":"https://github.com/dodopayments/dodo-adapters#readme","bugs":{"url":"https://github.com/dodopayments/dodo-adapters/issues"},"dist":{"shasum":"8a12a7c80a7023bfcea8747510e593de22cf390e","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.6.5.tgz","fileCount":72,"integrity":"sha512-4PhRByCrCQuEQq1wluJ0MS2b5k6LGjcTmKDofFxt/Kb7Hhg53hOFpfurjzOkKdLqumht4WeXWWnucAA6O0ZXqA==","signatures":[{"sig":"MEYCIQDm+baRa5ogw1b2T0BzmdPMbY3ZvKJQz+vsfPpjOq7ufQIhAKegPmM3I5OzvhrPvmDrWICL3yu3RugDuAjpOxXFXkwP","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dodopayments%2fbetter-auth@1.6.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":546878},"type":"module","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"}},"gitHead":"484b9c3a79753e5c0eed1bae8e11aaa378ea4d9c","scripts":{"dev":"npm run build -- --watch","build":"tsup --config tsup.config.ts","check-types":"tsc --noEmit"},"_npmUser":{"name":"dodopayments","email":"ayush@dodopayments.com"},"repository":{"url":"git+https://github.com/dodopayments/dodo-adapters.git","type":"git"},"_npmVersion":"10.9.8","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"@dodopayments/core":"^0.3.14"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.0","@dodo/typescript-config":"*"},"peerDependencies":{"zod":"^3.25.0 || ^4.0.0","better-auth":"^1.4.0"},"_npmOperationalInternal":{"tmp":"tmp/better-auth_1.6.5_1786793869475_0.333746147375229","host":"s3://npm-registry-packages-npm-production"}},"1.6.6":{"name":"@dodopayments/better-auth","version":"1.6.6","publishConfig":{"access":"public"},"scripts":{"build":"tsup --config tsup.config.ts","dev":"npm run build -- --watch","check-types":"tsc --noEmit"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"}},"types":"./dist/index.d.ts","dependencies":{"@dodopayments/core":"^0.3.14"},"engines":{"node":">=16.0.0"},"keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"author":{"name":"Dodo Payments","email":"support@dodopayments.com","url":"https://dodopayments.com"},"devDependencies":{"@dodo/typescript-config":"*","rimraf":"^5.0.0"},"peerDependencies":{"better-auth":"^1.4.0","zod":"^3.25.0 || ^4.0.0"},"type":"module","repository":{"type":"git","url":"git+https://github.com/dodopayments/dodo-adapters.git"},"gitHead":"12f9bb69df5f1b6e8e18cc7167f93b1c64063691","_id":"@dodopayments/better-auth@1.6.6","description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","bugs":{"url":"https://github.com/dodopayments/dodo-adapters/issues"},"homepage":"https://github.com/dodopayments/dodo-adapters#readme","_nodeVersion":"22.23.2","_npmVersion":"11.6.2","dist":{"integrity":"sha512-J4wxmKIdK6bxLz/MqM8/mH6ZwApsURjLGPzA9GNHkorxYF60cLfc1R8um2lPLoobnw2QY4+McicG4COuzDmuzQ==","shasum":"39853940cf3a4e63e1910890532b51e0f2f369f1","tarball":"https://registry.npmjs.org/@dodopayments/better-auth/-/better-auth-1.6.6.tgz","fileCount":72,"unpackedSize":546878,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dodopayments%2fbetter-auth@1.6.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCICrkUCF3R3ETqQ0XkRJXMAiEyls/T6MztqtrapJrIOMKAiEAqxXoBRqtYP5zUZWqeJE2CkPlvtqSjR1BsgRn0r606Do="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f0e753bc-9790-48b7-b71f-5198e73e72c1"}},"directories":{},"maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/better-auth_1.6.6_1787557353760_0.3283034864021992"},"_hasShrinkwrap":false}},"time":{"created":"2025-07-18T13:34:45.472Z","modified":"2026-08-24T07:42:34.227Z","0.1.1":"2025-07-18T13:34:45.830Z","1.0.0":"2025-07-25T09:54:35.099Z","1.0.1":"2025-07-26T17:41:34.105Z","1.0.2":"2025-07-26T19:30:39.295Z","1.1.0":"2025-07-26T19:47:00.561Z","1.1.1":"2025-07-27T12:03:29.946Z","1.1.2":"2025-09-01T14:30:38.366Z","1.1.3":"2025-09-22T08:28:38.188Z","1.2.0":"2025-09-25T11:39:29.866Z","1.3.0":"2025-10-24T19:59:25.470Z","1.3.1":"2025-10-29T09:59:19.276Z","1.3.2":"2025-10-30T07:20:08.182Z","1.3.3":"2025-10-31T11:35:55.002Z","1.3.4":"2025-10-31T13:20:07.706Z","1.3.5":"2025-11-15T12:16:52.305Z","1.3.6":"2025-11-15T12:25:16.846Z","1.4.0":"2025-11-23T17:29:43.159Z","1.4.1":"2025-12-13T11:56:17.722Z","1.4.2":"2025-12-18T16:17:00.917Z","1.4.3":"2026-03-04T12:54:46.750Z","1.4.4":"2026-03-25T05:36:37.819Z","1.5.0":"2026-03-28T17:25:12.860Z","1.6.1":"2026-04-20T10:25:45.499Z","1.6.2":"2026-04-20T10:27:16.536Z","1.6.3":"2026-05-18T12:48:41.672Z","1.6.4":"2026-07-19T12:24:26.958Z","1.6.5":"2026-08-15T11:37:49.633Z","1.6.6":"2026-08-24T07:42:33.922Z"},"bugs":{"url":"https://github.com/dodopayments/dodo-adapters/issues"},"author":{"name":"Dodo Payments","email":"support@dodopayments.com","url":"https://dodopayments.com"},"homepage":"https://github.com/dodopayments/dodo-adapters#readme","keywords":["dodopayments","better-auth","payments","webhooks","checkout","api","typescript"],"repository":{"type":"git","url":"git+https://github.com/dodopayments/dodo-adapters.git"},"description":"A Better Auth plugin for integrating Dodo Payments into your authentication flow.","maintainers":[{"name":"dodopayments","email":"ayush@dodopayments.com"}],"readme":"# @dodopayments/better-auth\n\nA Better Auth plugin for integrating Dodo Payments into your authentication flow.\n\n## Features\n\n- **Automatic Customer Management** - Creates Dodo Payments customers when users sign up\n- **Secure Checkout Integration** - Type-safe checkout flows with product slug mapping\n- **Customer Portal Access** - Self-service portal for subscription and payment management\n- **Webhook Event Handling** - Real-time payment event processing with signature verification\n- **TypeScript Support** - Full type safety with TypeScript definitions\n\n## Installation\n\n```bash\nnpm install @dodopayments/better-auth dodopayments better-auth zod\n```\n\n## Setup\n\n### 1. Environment Variables\n\nAdd the required environment variables to your `.env` file:\n\n```env\n# Get this from your Dodo Payments Dashboard > Developer > API Keys\nDODO_PAYMENTS_API_KEY=your_api_key_here\n# use the webhook endpoint `/api/auth/dodopayments/webhooks` to generate a webhook secret\n# from Dodo Payments Dashboard > Developer > Webhooks\nDODO_PAYMENTS_WEBHOOK_SECRET=your_webhook_secret_here # Use\nBETTER_AUTH_URL=http://localhost:3000\nBETTER_AUTH_SECRET=your_better_auth_secret_here\n```\n\n### 2. Server Configuration\n\n```typescript\n// src/lib/auth.ts\nimport { BetterAuth } from \"better-auth\";\nimport {\n  dodopayments,\n  checkout,\n  portal,\n  webhooks,\n} from \"@dodopayments/better-auth\";\nimport DodoPayments from \"dodopayments\";\n\n// Create a DodoPayments client instance\nexport const dodoPayments = new DodoPayments({\n  bearerToken: process.env.DODO_PAYMENTS_API_KEY!,\n  environment: \"test_mode\", // or \"live_mode\" for production\n});\n\n// Configure the dodopayments adapter\nexport const { auth, endpoints, client } = BetterAuth({\n  plugins: [\n    dodopayments({\n      client: dodoPayments,\n      createCustomerOnSignUp: true, // Auto-create customers on user signup\n      use: [\n        checkout({\n          products: [\n            {\n              productId: \"pdt_xxxxxxxxxxxxxxxxxxxxx\", // Your product ID\n              slug: \"premium-plan\", // Friendly slug for checkout\n            },\n          ],\n          successUrl: \"/dashboard/success\",\n          authenticatedUsersOnly: true, // Require login for checkout\n        }),\n        portal(),\n        webhooks({\n          webhookKey: process.env.DODO_PAYMENTS_WEBHOOK_SECRET!,\n          onPayload: async (payload) => {\n            // Handle all webhook payloads\n            console.log(\"Received webhook:\", payload.event_type);\n          },\n          // ...or use one of the other granular event handlers\n        }),\n      ],\n    }),\n  ],\n});\n```\n\n### 3. Client Configuration\n\nInitialize the client in your application to interact with the payment endpoints:\n\n```typescript\n// src/lib/auth-client.ts\nimport { createAuthClient } from \"better-auth/react\";\nimport { dodopaymentsClient } from \"@dodopayments/better-auth/client\";\n\nexport const authClient = createAuthClient({\n  baseURL: process.env.BETTER_AUTH_URL || \"http://localhost:3000\",\n  plugins: [dodopaymentsClient()],\n});\n```\n\n## Usage\n\n### Creating a Checkout Session\n\n```typescript\n// Create checkout with customer details\nconst { data: checkout, error } = await authClient.dodopayments.checkout({\n  slug: \"premium-plan\", // The slug you provided in the checkout configuration\n  // product_id: \"pdt_xxxxxxxxxxxxxxxxxxxxx\", // Alternatively, use the product ID\n  customer: {\n    email: \"customer@example.com\",\n    name: \"John Doe\",\n  },\n  billing: {\n    city: \"San Francisco\",\n    country: \"US\",\n    state: \"CA\",\n    street: \"123 Market St\",\n    zipcode: \"94103\",\n  },\n  referenceId: \"order_123\", // Optional reference for your records\n});\n\n// Redirect to checkout URL\nwindow.location.href = checkout.url;\n```\n\n### Accessing Customer Portal\n\n```typescript\n// Redirect to customer portal (requires authentication)\nconst { data: customerPortal, error } =\n  await authClient.dodopayments.customer.portal();\nif (customerPortal && customerPortal.redirect) {\n  window.location.href = customerPortal.url;\n}\n```\n\n### Listing Customer Data\n\n```typescript\n// Get customer's subscriptions\nconst { data: subscriptions, error } =\n  await authClient.dodopayments.customer.subscriptions.list({\n    query: {\n      limit: 10,\n      page: 1,\n      active: true, // Filter for active subscriptions only\n    },\n  });\n\n// Get customer's payment history\nconst { data: payments, error } =\n  await authClient.dodopayments.customer.payments.list({\n    query: {\n      limit: 10,\n      page: 1,\n      status: \"succeeded\", // Filter by payment status\n    },\n  });\n```\n\n## Webhooks\n\nThe webhooks plugin handles real-time payment events from Dodo Payments with secure signature verification. If you followed the default better-auth setup, the webhook endpoint will be `/api/auth/dodopayments/webhooks`. Generate a webhook secret for the URL `https://<your-domain>/api/auth/dodopayments/webhooks` and set it in your ENV as follows and use it in the `webhooks` plugin setup.\n\n```env\nDODO_PAYMENTS_WEBHOOK_SECRET=your_webhook_secret_here\n```\n\n### Event Handlers\n\n```typescript\nwebhooks({\n  webhookKey: process.env.DODO_PAYMENTS_WEBHOOK_SECRET!,\n  // Generic handler for all webhook payloads\n  onPayload: async (payload) => {\n    console.log(\"Received webhook:\", payload.event_type);\n  },\n  // Specific event handlers\n});\n```\n\n## Configuration\n\n### Plugin Options\n\n- **`client`** (required) - DodoPayments client instance\n- **`createCustomerOnSignUp`** (optional) - Auto-create customers on user signup\n- **`use`** (required) - Array of plugins to enable (checkout, portal, webhooks)\n- **`getCustomerParams`** (optional) - Function that receives the BetterAuth `User` and returns extra fields to attach to the DodoPayments customer on creation and update (e.g. `metadata`, `phone_number`)\n\n```typescript\ndodopayments({\n  client: dodoPayments,\n  createCustomerOnSignUp: true,\n  use: [portal()],\n  getCustomerParams: (user) => ({\n    metadata: { userId: user.id },\n    phone_number: user.phoneNumber ?? null,\n  }),\n})\n```\n\n### Checkout Plugin Options\n\n- **`products`** - Array of products or async function returning products\n- **`successUrl`** - URL to redirect after successful payment\n- **`authenticatedUsersOnly`** - Require user authentication (default: false)\n\n## Prompt for LLMs\n\n```\nYou are a skilled developer helping to integrate the @dodopayments/better-auth adapter into a typescript web application with better-auth. This adapter enables seamless payment processing through Dodo Payments with automatic customer management, checkout flows, and webhook handling.\n\nSTAGE 1: BASIC SETUP\n\nThis stage covers the foundational setup needed before implementing any plugins. Complete this stage first.\n\nSTEP 1: Installation\nInstall the required dependencies:\nnpm install @dodopayments/better-auth dodopayments better-auth zod\n\nSTEP 2: Environment Variables Setup\nYou will need to complete these external setup tasks. You will provide the user with a TODO list for the actions they need to take outside of the code:\n\nTODO LIST FOR USER:\n1. Generate Dodo Payments API Key:\n   - Go to your Dodo Payments Dashboard > Developer > API Keys\n   - Create a new API key (or use existing)\n   - Copy the API key value\n   - Set environment variable: DODO_PAYMENTS_API_KEY=your_api_key_here\n\n2. Generate Better Auth Secret:\n   - Generate a random secret key (32+ characters)\n   - Set environment variable: BETTER_AUTH_SECRET=your_better_auth_secret_here\n\n3. Set Application URL:\n   - For development: BETTER_AUTH_URL=http://localhost:3000\n   - For production: BETTER_AUTH_URL=https://your-domain.com\n\n4. Webhook Secret (only if implementing webhooks plugin):\n   - This will be provided after you specify your domain name in Stage 2\n   - Set environment variable: DODO_PAYMENTS_WEBHOOK_SECRET=your_webhook_secret_here\n\nAdd these environment variables to your .env file:\nDODO_PAYMENTS_API_KEY=your_api_key_here\nDODO_PAYMENTS_WEBHOOK_SECRET=your_webhook_secret_here\nBETTER_AUTH_URL=http://localhost:3000\nBETTER_AUTH_SECRET=your_better_auth_secret_here\n\nSTEP 3: Server Configuration\nCreate or update your better-auth setup file (src/lib/auth.ts):\n\nimport { BetterAuth } from \"better-auth\";\nimport { dodopayments } from \"@dodopayments/better-auth\";\nimport DodoPayments from \"dodopayments\";\n\n// Create DodoPayments client\nexport const dodoPayments = new DodoPayments({\n  bearerToken: process.env.DODO_PAYMENTS_API_KEY!,\n  environment: \"test_mode\", // Change to \"live_mode\" for production\n});\n\n// Configure better-auth with dodopayments adapter\nexport const { auth, endpoints, client } = BetterAuth({\n  plugins: [\n    dodopayments({\n      client: dodoPayments,\n      createCustomerOnSignUp: true, // Auto-create customers on signup\n      use: [], // We'll add plugins here in Stage 2\n      // Optional: attach metadata or phone_number to DodoPayments customer records\n      // getCustomerParams: (user) => ({\n      //   metadata: { userId: user.id },\n      //   phone_number: user.phoneNumber ?? null,\n      // }),\n    }),\n  ],\n});\n\nSTEP 4: Client Configuration\nCreate or update your auth client file (src/lib/auth-client.ts):\n\nimport { createAuthClient } from \"better-auth/react\";\nimport { dodopaymentsClient } from \"@dodopayments/better-auth/client\";\n\nexport const authClient = createAuthClient({\n  baseURL: process.env.BETTER_AUTH_URL || \"http://localhost:3000\",\n  plugins: [dodopaymentsClient()],\n});\n\nSTAGE 2: PLUGIN IMPLEMENTATION\n\nAfter completing Stage 1, you can selectively implement any of these plugins based on your needs. Each plugin is independent and can be added or removed as needed.\n\nPLUGIN SELECTION:\nBefore implementing any plugins, ask the user which plugins they want to implement:\n\n\"Which plugins would you like to implement? You can choose any combination of:\n1. CHECKOUT - Enables secure payment processing and checkout flows\n2. PORTAL - Provides customer self-service portal for subscriptions and payments\n3. WEBHOOKS - Handles real-time payment events from Dodo Payments\n\nPlease specify which plugins you want (e.g., 'checkout and webhooks', 'all three', 'just portal', etc.)\"\n\nIf the user doesn't respond or you cannot prompt the user, implement all three plugins by default.\n\nBased on the user's selection, implement only the requested plugins from the sections below:\n\nCHECKOUT PLUGIN\n\nPurpose: Enables secure payment processing with product slug mapping and session integration.\n\nSETUP TODO LIST FOR USER:\n1. Create products in Dodo Payments Dashboard:\n   - Go to Dodo Payments Dashboard > Products\n   - Create your products (e.g., subscription plans, one-time purchases)\n   - Copy each product ID (starts with \"pdt_\")\n   - Note down the product names for creating friendly slugs\n\n2. Plan your checkout URLs:\n   - Decide on your success URL (e.g., \"/dashboard/success\", \"/thank-you\")\n   - Ensure this URL exists in your application\n\nConfiguration:\nAdd checkout to your imports in src/lib/auth.ts:\nimport { dodopayments, checkout } from \"@dodopayments/better-auth\";\n\nAdd checkout plugin to the use array in your dodopayments configuration:\nuse: [\n  checkout({\n    products: [\n      {\n        productId: \"pdt_xxxxxxxxxxxxxxxxxxxxx\", // Your actual product ID from Dodo Payments\n        slug: \"premium-plan\", // Friendly slug for checkout\n      },\n      // Add more products as needed\n    ],\n    successUrl: \"/dashboard/success\", // Your success page URL\n    authenticatedUsersOnly: true, // Require login for checkout\n  }),\n],\n\nUsage Example:\nconst { data: checkout, error } = await authClient.dodopayments.checkout({\n  slug: \"premium-plan\", // Use the slug from your configuration\n  customer: {\n    email: \"customer@example.com\",\n    name: \"John Doe\",\n  },\n  billing: {\n    city: \"San Francisco\",\n    country: \"US\",\n    state: \"CA\",\n    street: \"123 Market St\",\n    zipcode: \"94103\",\n  },\n  referenceId: \"order_123\", // Optional reference\n});\n\nif (checkout) {\n  window.location.href = checkout.url;\n}\n\nOptions:\n- products: Array of products or async function returning products\n- successUrl: URL to redirect after successful payment\n- authenticatedUsersOnly: Require user authentication (default: false)\n\nPORTAL PLUGIN\n\nPurpose: Provides customer self-service capabilities for managing subscriptions and viewing payment history.\n\nConfiguration:\nAdd portal to your imports in src/lib/auth.ts:\nimport { dodopayments, portal } from \"@dodopayments/better-auth\";\n\nAdd portal plugin to the use array in your dodopayments configuration:\nuse: [\n  portal(),\n],\n\nUsage Examples:\n// Access customer portal\nconst { data: customerPortal, error } = await authClient.dodopayments.customer.portal();\nif (customerPortal && customerPortal.redirect) {\n  window.location.href = customerPortal.url;\n}\n\n// List customer subscriptions\nconst { data: subscriptions, error } = await authClient.dodopayments.customer.subscriptions.list({\n  query: {\n    limit: 10,\n    page: 1,\n    active: true,\n  },\n});\n\n// List customer payments\nconst { data: payments, error } = await authClient.dodopayments.customer.payments.list({\n  query: {\n    limit: 10,\n    page: 1,\n    status: \"succeeded\",\n  },\n});\n\nNote: All portal methods require user authentication.\n\nWEBHOOKS PLUGIN\n\nPurpose: Handles real-time payment events from Dodo Payments with secure signature verification.\n\nBEFORE CONFIGURATION - Setup Webhook URL:\nFirst, you need the user's domain name to generate the webhook URL and provide them with setup instructions.\n\nSTEP 1: Domain Name Input\nAsk the user: What is your domain name? Please provide:\n- For production: your domain name (e.g., \"myapp.com\", \"api.mycompany.com\")\n- For staging: your staging domain (e.g., \"staging.myapp.com\")\n- For development: use \"localhost:3000\" (or your local port)\n\nSTEP 2: After receiving the user's domain name, you will:\n- Generate their webhook URL: https://[USER-DOMAIN]/api/auth/dodopayments/webhooks\n- Provide them with a TODO list for webhook setup in Dodo Payments dashboard\n- Give them the exact environment variable setup instructions\n\nWEBHOOK SETUP TODO LIST (provide this after domain input):\n1. Configure webhook in Dodo Payments Dashboard:\n   - Go to Dodo Payments Dashboard > Developer > Webhooks\n   - Click \"Add Webhook\" or \"Create Webhook\"\n   - Enter webhook URL: https://[USER-DOMAIN]/api/auth/dodopayments/webhooks\n   - Select events you want to receive (or select all)\n   - Copy the generated webhook secret\n\n2. Set webhook secret in your environment:\n   - For production: Set DODO_PAYMENTS_WEBHOOK_SECRET in your hosting provider environment\n   - For staging: Set DODO_PAYMENTS_WEBHOOK_SECRET in your staging environment\n   - For development: Add DODO_PAYMENTS_WEBHOOK_SECRET=your_webhook_secret_here to your .env file\n\n3. Deploy your application with the webhook secret configured\n\nSTEP 3: Add webhooks to your imports in src/lib/auth.ts:\nimport { dodopayments, webhooks } from \"@dodopayments/better-auth\";\n\nSTEP 4: Add webhooks plugin to the use array in your dodopayments configuration:\nuse: [\n  webhooks({\n    webhookKey: process.env.DODO_PAYMENTS_WEBHOOK_SECRET!,\n    // Generic handler for all webhook events\n    onPayload: async (payload) => {\n      console.log(\"Received webhook:\", payload.event_type);\n    },\n    // Payment event handlers\n    onPaymentSucceeded: async (payload) => {\n      console.log(\"Payment succeeded:\", payload);\n    },\n    onPaymentFailed: async (payload) => {\n      console.log(\"Payment failed:\", payload);\n    },\n    onPaymentProcessing: async (payload) => {\n      console.log(\"Payment processing:\", payload);\n    },\n    onPaymentCancelled: async (payload) => {\n      console.log(\"Payment cancelled:\", payload);\n    },\n    // Refund event handlers\n    onRefundSucceeded: async (payload) => {\n      console.log(\"Refund succeeded:\", payload);\n    },\n    onRefundFailed: async (payload) => {\n      console.log(\"Refund failed:\", payload);\n    },\n    // Dispute event handlers\n    onDisputeOpened: async (payload) => {\n      console.log(\"Dispute opened:\", payload);\n    },\n    onDisputeExpired: async (payload) => {\n      console.log(\"Dispute expired:\", payload);\n    },\n    onDisputeAccepted: async (payload) => {\n      console.log(\"Dispute accepted:\", payload);\n    },\n    onDisputeCancelled: async (payload) => {\n      console.log(\"Dispute cancelled:\", payload);\n    },\n    onDisputeChallenged: async (payload) => {\n      console.log(\"Dispute challenged:\", payload);\n    },\n    onDisputeWon: async (payload) => {\n      console.log(\"Dispute won:\", payload);\n    },\n    onDisputeLost: async (payload) => {\n      console.log(\"Dispute lost:\", payload);\n    },\n    // Subscription event handlers\n    onSubscriptionActive: async (payload) => {\n      console.log(\"Subscription active:\", payload);\n    },\n    onSubscriptionOnHold: async (payload) => {\n      console.log(\"Subscription on hold:\", payload);\n    },\n    onSubscriptionRenewed: async (payload) => {\n      console.log(\"Subscription renewed:\", payload);\n    },\n    onSubscriptionPlanChanged: async (payload) => {\n      console.log(\"Subscription plan changed:\", payload);\n    },\n    onSubscriptionCancelled: async (payload) => {\n      console.log(\"Subscription cancelled:\", payload);\n    },\n    onSubscriptionFailed: async (payload) => {\n      console.log(\"Subscription failed:\", payload);\n    },\n    onSubscriptionExpired: async (payload) => {\n      console.log(\"Subscription expired:\", payload);\n    },\n    onSubscriptionUpdated: async (payload) => {\n      console.log(\"Subscription updated:\", payload);\n    },\n    // License key event handlers\n    onLicenseKeyCreated: async (payload) => {\n      console.log(\"License key created:\", payload);\n    },\n    // Abandoned checkout event handlers\n    onAbandonedCheckoutDetected: async (payload) => {\n      console.log(\"Abandoned checkout detected:\", payload);\n    },\n    onAbandonedCheckoutRecovered: async (payload) => {\n      console.log(\"Abandoned checkout recovered:\", payload);\n    },\n    // Dunning event handlers\n    onDunningStarted: async (payload) => {\n      console.log(\"Dunning started:\", payload);\n    },\n    onDunningRecovered: async (payload) => {\n      console.log(\"Dunning recovered:\", payload);\n    },\n    // Credit event handlers\n    onCreditAdded: async (payload) => {\n      console.log(\"Credit added:\", payload);\n    },\n    onCreditDeducted: async (payload) => {\n      console.log(\"Credit deducted:\", payload);\n    },\n    onCreditExpired: async (payload) => {\n      console.log(\"Credit expired:\", payload);\n    },\n    onCreditRolledOver: async (payload) => {\n      console.log(\"Credit rolled over:\", payload);\n    },\n    onCreditRolloverForfeited: async (payload) => {\n      console.log(\"Credit rollover forfeited:\", payload);\n    },\n    onCreditOverageCharged: async (payload) => {\n      console.log(\"Credit overage charged:\", payload);\n    },\n    onCreditManualAdjustment: async (payload) => {\n      console.log(\"Credit manual adjustment:\", payload);\n    },\n    onCreditBalanceLow: async (payload) => {\n      console.log(\"Credit balance low:\", payload);\n    },\n  }),\n],\n\nSupported Webhook Event Handlers:\n- onPayload: Generic handler for all webhook events\n- onPaymentSucceeded: Payment completed successfully\n- onPaymentFailed: Payment failed\n- onPaymentProcessing: Payment is being processed\n- onPaymentCancelled: Payment was cancelled\n- onRefundSucceeded: Refund completed successfully\n- onRefundFailed: Refund failed\n- onDisputeOpened: Dispute was opened\n- onDisputeExpired: Dispute expired\n- onDisputeAccepted: Dispute was accepted\n- onDisputeCancelled: Dispute was cancelled\n- onDisputeChallenged: Dispute was challenged\n- onDisputeWon: Dispute was won\n- onDisputeLost: Dispute was lost\n- onSubscriptionActive: Subscription became active\n- onSubscriptionOnHold: Subscription was put on hold\n- onSubscriptionRenewed: Subscription was renewed\n- onSubscriptionPlanChanged: Subscription plan was changed\n- onSubscriptionCancelled: Subscription was cancelled\n- onSubscriptionFailed: Subscription failed\n- onSubscriptionExpired: Subscription expired\n- onSubscriptionUpdated: Subscription was updated\n- onLicenseKeyCreated: License key was created\n- onAbandonedCheckoutDetected: Abandoned checkout was detected\n- onAbandonedCheckoutRecovered: Abandoned checkout was recovered\n- onDunningStarted: Dunning process started\n- onDunningRecovered: Dunning process recovered\n- onCreditAdded: Credit was added\n- onCreditDeducted: Credit was deducted\n- onCreditExpired: Credit expired\n- onCreditRolledOver: Credit was rolled over\n- onCreditRolloverForfeited: Credit rollover was forfeited\n- onCreditOverageCharged: Credit overage was charged\n- onCreditManualAdjustment: Credit manual adjustment was made\n- onCreditBalanceLow: Credit balance is low\n\nCOMBINING SELECTED PLUGINS:\n\nAfter implementing the user's selected plugins, update your src/lib/auth.ts file to include all chosen plugins in the imports and use array:\n\nExample for all three plugins:\nimport { dodopayments, checkout, portal, webhooks } from \"@dodopayments/better-auth\";\n\nuse: [\n  checkout({\n    // checkout configuration\n  }),\n  portal(),\n  webhooks({\n    // webhook configuration\n  }),\n],\n\nExample for just checkout and portal:\nimport { dodopayments, checkout, portal } from \"@dodopayments/better-auth\";\n\nuse: [\n  checkout({\n    // checkout configuration\n  }),\n  portal(),\n],\n\nExample for just webhooks:\nimport { dodopayments, webhooks } from \"@dodopayments/better-auth\";\n\nuse: [\n  webhooks({\n    // webhook configuration\n  }),\n],\n\nIMPORTANT NOTES:\n1. Complete Stage 1 before implementing any plugins\n2. Ask the user which plugins they want to implement, or implement all three if no response\n3. Only implement the plugins the user specifically requested\n4. ALWAYS provide TODO lists for external actions the user needs to complete:\n   - API key generation and environment variable setup\n   - Product creation in Dodo Payments dashboard (for checkout plugin)\n   - Webhook setup in Dodo Payments dashboard (for webhooks plugin)\n   - Domain name collection for webhook URL generation\n5. For webhook plugin: Ask for the user's domain name and generate the exact webhook URL: https://[user-domain]/api/auth/dodopayments/webhooks\n6. All client methods return { data, error } objects for proper error handling\n7. Use test_mode for development and live_mode for production\n8. The webhook endpoint is automatically created and secured with signature verification (if webhooks plugin is selected)\n9. Customer portal and subscription listing require user authentication (if portal plugin is selected)\n10. Handle errors appropriately and test webhook functionality in development before going live\n11. Use getCustomerParams to attach metadata or phone_number to DodoPayments customer records — the function receives the BetterAuth User object and runs on every customer creation and update\n12. Present all external setup tasks as clear TODO lists with specific environment variable names\n```\n","readmeFilename":"README.md"}