{"_id":"@rytass/invoice-adapter-bank-pro","_rev":"33-29e67866a949121e1f7903d9affc039d","name":"@rytass/invoice-adapter-bank-pro","dist-tags":{"latest":"0.3.0"},"versions":{"0.1.0":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.1.0","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.1.0","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"bf7c25159e8afd9dbdca8779dc392996e8b19f91","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.1.0.tgz","fileCount":12,"integrity":"sha512-pk/AA2Kr/3EJn43ick6dxhT1kjlXhDJNDzmZOifVgSXd9SryySi6HzAx1ZU6BraOGob+QtEOQPQ9k0UmDxYMIg==","signatures":[{"sig":"MEQCIHBuQMonyZdXU1PTNWb/ZdmcW8p2W+e+0mL1bX8aX52pAiAOzRoXmqX6yQxas90Q1fNXBuHPKeHPZjRoFzT6D8vwzA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":29142},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.1.8/node@v22.4.1+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.4.1","dependencies":{"axios":"^1.7.2","luxon":"^3.4.4","validator":"^13.12.0","@rytass/invoice":"^0.3.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/luxon":"^3.4.2"},"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.1.0_1728285504274_0.7650427015361876","host":"s3://npm-registry-packages"}},"0.1.1":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.1.1","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.1.1","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"132b277e68378836705c7ddd0ddd3da1f94f8fe6","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.1.1.tgz","fileCount":12,"integrity":"sha512-0uedc+j/QUBNALWCOJt9PFhaV/SCc6+PPbYz6DbDdM0F1xjmEAY9pnp6NbC62mouDCQncE/gePpPhQhev2628g==","signatures":[{"sig":"MEYCIQDnRPl/8/PdKZgMuxJsz+agKkpfi7+4clEj7mEsWhpUSgIhAILAvYzQZ3HTwIrXROkf2igatsyHPWdICVkbEamW8z2J","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":29142},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.1.8/node@v22.4.1+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.4.1","dependencies":{"axios":"^1.7.2","luxon":"^3.4.4","validator":"^13.12.0","@rytass/invoice":"^0.3.1"},"_hasShrinkwrap":false,"devDependencies":{"@types/luxon":"^3.4.2"},"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.1.1_1728294976776_0.43456047231812844","host":"s3://npm-registry-packages"}},"0.1.2":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.1.2","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.1.2","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"b119aeb885b3220fd9a84035b4747d3cecaefaba","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.1.2.tgz","fileCount":12,"integrity":"sha512-1WhS/JgjBLBR8b+IxQIpWLiYrKRhdgRWaI+trnSJlTC3XXo6z7N2wunMSMbAGG7PxqwG2xa9M7VmgIgnR54tTw==","signatures":[{"sig":"MEUCIQDxLpIAj0fuK3kr6kdjsnhPsj5D8kIuP0GnZTsc+pMg4QIgVSamcRuh0L7yw+gRXAd/3Ql0syiZeeoNr+wibtYKEqA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":29370},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.1.8/node@v22.4.1+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.4.1","dependencies":{"axios":"^1.7.2","luxon":"^3.4.4","validator":"^13.12.0","@rytass/invoice":"^0.3.1"},"_hasShrinkwrap":false,"devDependencies":{"@types/luxon":"^3.4.2"},"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.1.2_1728471817786_0.2059237877984188","host":"s3://npm-registry-packages"}},"0.1.3":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.1.3","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.1.3","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"ed4b5401fdfedbc319f9bd6a6f3b86a3d3e699d8","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.1.3.tgz","fileCount":12,"integrity":"sha512-LBY1Gq70cMj3zz0NxWh825FYm/ktgLnTM3g7nMr5roueqKfryob0OMOTxYXCixELd052idHjofQJ2RLYH6bEkQ==","signatures":[{"sig":"MEUCIQDSRcjymir4Hqpm5QL8qV4ofc5SUVGpa4Dxsjm+Drvj1QIgefmR/kLpRods2rFy6KZqlANBwr/10TU+/0R9k06oAk4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":28133},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.1.8/node@v22.10.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.10.0","dependencies":{"axios":"^1.7.2","luxon":"^3.4.4","validator":"^13.12.0","@rytass/invoice":"^0.3.1"},"_hasShrinkwrap":false,"devDependencies":{"@types/luxon":"^3.4.2"},"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.1.3_1730810474237_0.8544307525205581","host":"s3://npm-registry-packages"}},"0.1.4":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.1.4","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.1.4","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"947614b5b7076b4628bada1e5413c0da7d43aa1a","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.1.4.tgz","fileCount":12,"integrity":"sha512-Me9xTzzcGBrbxFwcZzYUUtqDcMHBgStukWPsfEnYUbMN4btGVGZou0RQTgD1SyjT/YSuSGfkYJOqentOavHoNg==","signatures":[{"sig":"MEQCHxX6E5MQhFIWqdT3LUiIKTGKvcjerwEOaQUOj3d+DHoCIQDt4yP2/A4tuxP8esTw5yBM/2N9yg8bUfOR6jF/dEYXRg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":28133},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.1.8/node@v22.10.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.10.0","dependencies":{"axios":"^1.7.2","luxon":"^3.4.4","validator":"^13.12.0","@rytass/invoice":"^0.3.2"},"_hasShrinkwrap":false,"devDependencies":{"@types/luxon":"^3.4.2"},"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.1.4_1731175726411_0.8887843331211327","host":"s3://npm-registry-packages"}},"0.1.5":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.1.5","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.1.5","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"7760abead1ad3dea1b139f0071e94d3b80d9b414","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.1.5.tgz","fileCount":14,"integrity":"sha512-MU0q58AquRupGOJdgGXJb0RuaDJVZFkZbJsyUxMU2gGMXWuxmWQbu8cS0U8qDPZLs7ylIyj5vmt3+lQbtmUkOA==","signatures":[{"sig":"MEQCH1QysJ/t6/nx5SgpDpEyjaDqcgYoh7rYkhS7VXn/D5gCIQCcDYPKsvKMrAh/UcMCvpiUkyNWu1hG2U/IYGUwGjy2Tw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":57546},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.1.8/node@v22.10.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.10.0","dependencies":{"axios":"^1.7.2","luxon":"^3.4.4","validator":"^13.12.0","@rytass/invoice":"^0.3.2"},"_hasShrinkwrap":false,"devDependencies":{"@types/luxon":"^3.4.2"},"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.1.5_1731932442648_0.7326542831121614","host":"s3://npm-registry-packages"}},"0.1.6":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.1.6","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.1.6","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"6cd3bdec1e0811e880f23d90c6f6a1d32b76a5aa","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.1.6.tgz","fileCount":14,"integrity":"sha512-5gBjnDaw5dalVfCGJVi7Gzwn48m9D2UU2DD0d+bUuOKH9uFs7aCBm2DwvZ3Q7LkLBjWxPUOBbx4unA7OHOcQ2g==","signatures":[{"sig":"MEQCICCpakpBohEgHh9HzMSk2+1oLxuLHZ9GUW+nJ8ZIRx1iAiA1jhsm/RGLWV955fyz/04+1YX5348AzxVPRE8UfwddbA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":57542},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.1.9/node@v22.10.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.10.0","dependencies":{"axios":"^1.7.8","luxon":"^3.5.0","validator":"^13.12.0","@rytass/invoice":"^0.3.2"},"_hasShrinkwrap":false,"devDependencies":{"@types/luxon":"^3.4.2"},"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.1.6_1732881760700_0.81713046761299","host":"s3://npm-registry-packages"}},"0.1.7":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.1.7","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.1.7","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"abf1ee85e6cf407164a89e2b8f5c1dba83b8cfa4","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.1.7.tgz","fileCount":14,"integrity":"sha512-/P6nM+AKJnYKEOhnhXryMAn4hS+SxyNQCf6VptJOeJGYungz+pGXkhzx+uexFkc2dOnbhEDXsOcDBruBSWseAw==","signatures":[{"sig":"MEYCIQD+g5/ctbFk+RoQEhygq6tEwCUOR9FpGXmX42qqw4CYyQIhAL8j1rEvMKjjsBp5UTQYqVO/DaLRkUMg7/0CWJH80M6h","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57260},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.1.9/node@v22.13.1+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.13.1","dependencies":{"axios":"^1.7.8","luxon":"^3.5.0","validator":"^13.12.0","@rytass/invoice":"^0.3.2"},"_hasShrinkwrap":false,"devDependencies":{"@types/luxon":"^3.4.2"},"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.1.7_1739439511619_0.732385194342317","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.1.8","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.1.8","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"e26261446c08e6a778b18be9ec5542e28259aed9","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.1.8.tgz","fileCount":14,"integrity":"sha512-kKFWVKgt/7Q19Om6gZVTV4e5+nkIBKTc//fS43IQrl/05wEZAohLUk+2R6pzFm3mu6qkGQtQA2QxkaT1UEC4gg==","signatures":[{"sig":"MEUCIE/dKy7vHRuoOuMSc2ZwPtB6ERr9z3G1lcVplExnN/FDAiEAuZNQFSg7zn1PgZDdRmDdCxXBIEOgnZH7PiJ8DbvPRpA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57260},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.1.9/node@v22.15.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.15.0","dependencies":{"axios":"^1.7.8","luxon":"^3.5.0","validator":"^13.12.0","@rytass/invoice":"^0.3.3"},"_hasShrinkwrap":false,"devDependencies":{"@types/luxon":"^3.4.2"},"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.1.8_1749468618835_0.2789366245517979","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.1.9","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.1.9","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"a33ef76af83b99bc429b88304b2aa860d786873b","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.1.9.tgz","fileCount":14,"integrity":"sha512-FQrwmAX8CvQa7PD4r4rkobnYOIg3UpzOdnvczpSb6NUkGEbpXHy57pGmfVl/YpYCoNgoefrqcLAYbiaH+4G7dg==","signatures":[{"sig":"MEUCIQDNTKLSZCrqTpEzv8B68wkk5TgEzWUvpC8tDxyJqo/CswIgR1TvNYyO6Vw1WwldOBMSQT29UC8sZ9MPpNPbuINaGig=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57309},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.1.9/node@v22.15.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.15.0","dependencies":{"axios":"^1.7.8","luxon":"^3.5.0","validator":"^13.12.0","@rytass/invoice":"^0.3.3"},"_hasShrinkwrap":false,"devDependencies":{"@types/luxon":"^3.4.2"},"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.1.9_1749534311620_0.6663140427000427","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.1.10","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.1.10","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"0d8af9308e5666a34d0a0bca9f53f9ec1d298dfe","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.1.10.tgz","fileCount":14,"integrity":"sha512-Uqm4uPgw9KuSPMLxvpoge/rO5flvKXYkGuXHKzQmW1muPKQNjV5CTSV+zEYRGFb7gcY1r/wseVzt07x2t+HE7A==","signatures":[{"sig":"MEYCIQDKn0rOeFg51Zj+RnYEHIGAHTEP8x5nUf++aeyKKCpZGgIhALGyC8WmMKO+IEIaXzZywnWeU7R18OLm4+cSeZ475h9n","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57310},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","actor":{"name":"fantasywind","type":"user","email":"fantasyatelier@gmail.com"},"email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.1.9/node@v22.15.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.15.0","dependencies":{"axios":"^1.7.8","luxon":"^3.5.0","validator":"^13.12.0","@rytass/invoice":"^0.3.4"},"_hasShrinkwrap":false,"devDependencies":{"@types/luxon":"^3.4.2"},"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.1.10_1750845629775_0.2662239723287312","host":"s3://npm-registry-packages-npm-production"}},"0.1.11":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.1.11","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.1.11","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"6d1f6e2dcda9fce778b7094e1bd6bc8d8801f8dc","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.1.11.tgz","fileCount":14,"integrity":"sha512-Rys6pvtkimBO1K5KQX0Gdoa6rU0kYNuRohBb/ixAQQsORj6l/1A5JguYzqOcP/lWgWzUR53J2OuqJNnVISyubQ==","signatures":[{"sig":"MEUCIQC1MpK66FUl9Vo3bgir6ub1Zl5f+UuZsOud02nznKe1AgIgJxET1uPP2PTPIJwg2ZxTlN9gW+UAsEUIqNDfksj1v1M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57310},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","actor":{"name":"fantasywind","type":"user","email":"fantasyatelier@gmail.com"},"email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.1.9/node@v22.15.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.15.0","dependencies":{"axios":"^1.7.8","luxon":"^3.5.0","validator":"^13.12.0","@rytass/invoice":"^0.3.5"},"_hasShrinkwrap":false,"devDependencies":{"@types/luxon":"^3.4.2"},"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.1.11_1751088522448_0.3995041099073371","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.2.0","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.2.0","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"cbf216db3f4a44bee0e8b7ee881fe3de9898253f","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.2.0.tgz","fileCount":14,"integrity":"sha512-40c+Gk1mEawGQyxy+ttlA5DJ2bBwwkWb0HIIcHeUZrLmIa7Nr65eVowOqmzlZWWtwpqdayfUzGQPu9Ao2TSBnw==","signatures":[{"sig":"MEQCIAOe2CubGKhS8FVbxneGe4t8N3j6uuuwec3z8ygv4/lVAiBOhpcxVEi8mDQ7VW5xk4YvQ/HUisHBXvjzNOK7tMW8HA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57309},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.1.9/node@v22.17.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.17.0","dependencies":{"axios":"^1.7.8","luxon":"^3.5.0","validator":"^13.12.0","@rytass/invoice":"^0.4.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/luxon":"^3.4.2"},"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.2.0_1753701458927_0.8690639361048524","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.2.1","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.2.1","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"4af5969341818496f297c4e1678562cb29e3aed2","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.2.1.tgz","fileCount":14,"integrity":"sha512-q1D4GmA6q7Wb97wNmSK5Gn7JGtPP7UF8yHNZMCfHLBgxhZiEl70hg+TbYMxsLNmFBWGQzp5AX3aq0UDQAy6gLw==","signatures":[{"sig":"MEUCIQDizMEK1BQPznsSP/4m2xd64MUPGdmqnEo/HN2XFyzBGQIgfoeOq56yc6s9+JmqwGSwJO45J1Prubrnwqasw+A+LQc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57309},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.1.9/node@v22.17.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.17.0","dependencies":{"axios":"^1.7.8","luxon":"^3.5.0","validator":"^13.12.0","@rytass/invoice":"^0.4.1"},"_hasShrinkwrap":false,"devDependencies":{"@types/luxon":"^3.4.2"},"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.2.1_1753712562083_0.8374552144281606","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.2.2","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.2.2","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"134d9867327b23299d61cd809bffa26c25644534","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.2.2.tgz","fileCount":14,"integrity":"sha512-IVl/Rzj+ff+ZfAWPKmM/8v1r8lgqzQFHVwbtHXQ90kWtIm6DSza8FTG73ytEMEi8AHzZul9DUsB8Ran4iFJ0mg==","signatures":[{"sig":"MEQCIG4KtqXAMSgiq5DyOQn+DGNQwjXeWpq5Z+BkrLRWlbODAiAKeIZ05SKpy6qopVon6JmVvEvIZj2vrlw8jxz7EpHEWg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57309},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.1.9/node@v22.17.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.17.0","dependencies":{"axios":"^1.7.8","luxon":"^3.5.0","validator":"^13.12.0","@rytass/invoice":"^0.4.2"},"_hasShrinkwrap":false,"devDependencies":{"@types/luxon":"^3.4.2"},"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.2.2_1753860229287_0.8767513543162586","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.2.3","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.2.3","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"5d67ce3f7dab40b7c2098f135e5eea5fe5e31996","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.2.3.tgz","fileCount":14,"integrity":"sha512-5AFMZRbnl2vL2pD+QdtPyouYWJz4vNVG5x1namQMhScBSaXgJssjX0cY5WXSVJyz8GuIki2lkB3McdVneqMAAQ==","signatures":[{"sig":"MEUCIEnyIfJ48aAcRc2mYHNHK1uQYULGVx3tmOAozNqnDN3FAiEA0bto0Jr41Lrtl5X2y/A1F20TmBF8CCr9SfjSy+eeA0U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57315},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.1.9/node@v22.17.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.17.0","dependencies":{"axios":"^1.7.8","luxon":"^3.5.0","validator":"^13.12.0","@rytass/invoice":"^0.4.2"},"_hasShrinkwrap":false,"devDependencies":{"@types/luxon":"^3.4.2"},"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.2.3_1755510147883_0.3783615099127122","host":"s3://npm-registry-packages-npm-production"}},"0.2.4":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.2.4","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.2.4","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"506e327b12b5b75c68963a2a55c94efb1283a7f7","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.2.4.tgz","fileCount":14,"integrity":"sha512-lRH7J4zutq9NkwgON7B2oeNJV+BinxQuTPWKRXar6LC4V6A7BXNRIRZClr9gDtroI48MKkxxkcJ0LI7qB/in+A==","signatures":[{"sig":"MEQCICaD1KUL0DXf8clFN/J/+asY4R+4Dxf/fGXHj3m1y0KZAiBCcRllygEwrBVAt7ZBH5+qgb7gKyLToP3aTnPJn+/A5w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":83694},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.1.9/node@v22.17.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.17.0","dependencies":{"axios":"^1.7.8","luxon":"^3.5.0","validator":"^13.12.0","@rytass/invoice":"^0.4.3"},"_hasShrinkwrap":false,"devDependencies":{"@types/luxon":"^3.4.2"},"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.2.4_1755614354565_0.4701521153167538","host":"s3://npm-registry-packages-npm-production"}},"0.2.5":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.2.5","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.2.5","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"894cabf2a660437d3a52cadd962a546cc704e3e0","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.2.5.tgz","fileCount":14,"integrity":"sha512-bub0Pqp+REZ1EcLUXtrb9dL8TKpSbS49wvO9cgmTx97e9N/XGbvuO175oITW8H1BUIzIlBgTG2wKK3h/aCHlYQ==","signatures":[{"sig":"MEYCIQCA0LRUTXpI1h4wlap4ef/wcT7ziOStims+/26wEVDP2wIhAOSgqkwQQg/DT/uPEbgdCl8jzSzU6TxhiJiDxr09LAee","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":83514},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.2.4/node@v22.17.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.17.0","dependencies":{"axios":"^1.11.0","luxon":"^3.7.1","validator":"^13.15.15","@rytass/invoice":"^0.4.4"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.2.5_1757429146989_0.3481986072836256","host":"s3://npm-registry-packages-npm-production"}},"0.2.6":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.2.6","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.2.6","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"88d0640079eb4b15a98b626be0ddec7885d4d964","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.2.6.tgz","fileCount":14,"integrity":"sha512-G3v56G/adK26vEA9GsZ+rxSsbuOEz3br+q2hoXZk0zrBcR0ilddRi1Au67gIqxOBjOJoJZjZEqJCc6WgH7dIYg==","signatures":[{"sig":"MEQCIB9FB6h67GIJbgu8XD2exjxfNgoKRcZNeIWdROi8MG8rAiAb2wR25RWucJSWGG1jvd+oVUkW7tBPVhXCYM4fxbjQjA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":83484},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.2.4/node@v22.17.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.17.0","dependencies":{"axios":"^1.11.0","luxon":"^3.7.1","validator":"^13.15.15","@rytass/invoice":"^0.4.5"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.2.6_1757585689218_0.7199012798177056","host":"s3://npm-registry-packages-npm-production"}},"0.2.7":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.2.7","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.2.7","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"ac209568bae9bc3e703ddb113a439b1bf47047fe","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.2.7.tgz","fileCount":14,"integrity":"sha512-ZMjG01qXWwtUpUJLrU6cOvv/5Haay07ZIpIpLZynDlfwUMffpEvKnH5HPmMXHD4luSWO6MA+SHVTSuHyGQDcjQ==","signatures":[{"sig":"MEQCIEXazQ2TrwQVRj/cV5YFyAwm9ZITKJaRga3ktJOA54iIAiBT3U6EOID1D+qpBkfus5CDXB6Pl6Nkp77vl/42kTngdw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":83484},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.2.4/node@v22.17.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.17.0","dependencies":{"axios":"^1.11.0","luxon":"^3.7.1","validator":"^13.15.15","@rytass/invoice":"^0.4.6"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.2.7_1758555537281_0.5425574893565068","host":"s3://npm-registry-packages-npm-production"}},"0.2.8":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.2.8","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.2.8","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"b00f76d299e2fe13019ad269f4e6bbde2a9e8a1e","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.2.8.tgz","fileCount":14,"integrity":"sha512-zzWxwPWNpA0p5c/03S/QsWRgZFTNSm0w7F+Wo0DfQCvXvV2sAa87/G2FPDFFT3zNrwxjYPU7tV/zN6gzhg/8Rg==","signatures":[{"sig":"MEUCIQDLe074YYGlLRFmz+RStq8fTph7UhOj6FQEXCqzaPe1wAIgfsZQsCwBbGmB63KsvlVv1kAwtNyk67xMsNh+AFpAQfQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":83484},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.2.4/node@v22.17.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.17.0","dependencies":{"axios":"^1.11.0","luxon":"^3.7.1","validator":"^13.15.15","@rytass/invoice":"^0.4.8"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.2.8_1759413702828_0.4014633807215382","host":"s3://npm-registry-packages-npm-production"}},"0.2.9":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.2.9","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.2.9","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"a79654eb3a83a0e5ed06aa0f3bab3aa7d02ab4f8","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.2.9.tgz","fileCount":14,"integrity":"sha512-M+3gl0MoIHYPuxJ9ST+u7NClJtiYZGTM8wpEU3ESxDK839BGG+narDETG6JLBOrpNig3PaFE6Y9Aw51qZwGI5Q==","signatures":[{"sig":"MEYCIQDNvsZNHBCUUede93ORCo34reEBEVCTDzkoWLk28P2lGwIhAO1lOk6YHcNFYbbIY454pHf4bggWYDshZKeja/evBa6w","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":83486},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.2.4/node@v22.17.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.17.0","dependencies":{"axios":"^1.11.0","luxon":"^3.7.1","validator":"^13.15.15","@rytass/invoice":"^0.4.9"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.2.9_1760680864264_0.6885888862147376","host":"s3://npm-registry-packages-npm-production"}},"0.2.10":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.2.10","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.2.10","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"9a3e0d24d64eddcaf42d4abbbd406120a427e983","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.2.10.tgz","fileCount":14,"integrity":"sha512-I1RAUpxyd8hTS23g+rKJNM+Tb7RPoyZSly4Mx0FTVBEGjxaOoI6rr5mEC8X0JzXkVxucVEn61t2Ds+PFi2rXpA==","signatures":[{"sig":"MEUCIQCgTzai4W8I3PdV+ZbpEOfOqZzuppmY0gFBDAjIkw3g5QIgeRk58zmCqXOvsW9tm1APaL273OYWSo6SegEn3LfA6aU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":83531},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.2.4/node@v22.17.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.17.0","dependencies":{"axios":"^1.11.0","luxon":"^3.7.1","validator":"^13.15.15","@rytass/invoice":"^0.4.9"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.2.10_1764079730395_0.7118761245129597","host":"s3://npm-registry-packages-npm-production"}},"0.2.11":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.2.11","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.2.11","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"4772c45c20dc42982a12b953c084f210d8674890","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.2.11.tgz","fileCount":14,"integrity":"sha512-uypNgejVU+BxuI1Xj7YOYWEGSdJT9QtgpGbXYlNTaRPRyUaU8Yqphm5w+GH6JgYRRlyfiRcHAn5o9X0+dTEfjg==","signatures":[{"sig":"MEQCIAd/50plsKk7QDu95WdbpGbxCw6hSnhjLv5Vimxn0Nn3AiAt9UQ8f4hBxxb5OOl5+ra2Xc9BhbPCa/o+QB4WIqI/Tw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":83543},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.2.4/node@v22.17.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.17.0","dependencies":{"axios":"^1.11.0","luxon":"^3.7.1","validator":"^13.15.15","@rytass/invoice":"^0.4.10"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.2.11_1764138068429_0.6830149823892537","host":"s3://npm-registry-packages-npm-production"}},"0.2.12":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.2.12","keywords":["rytass","invoice","bank-pro"],"author":"Chia Yu Pai <fantasyatelier@gmail.com>","license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.2.12","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"c357a91c24b6d6ad603ab802ec872f9ee494b745","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.2.12.tgz","fileCount":14,"integrity":"sha512-sY8AFp+P1NoF+CvklvEpdKdSl7fgSFGN8EFeTBOsXj+0itwIH14uyucj6pCv1FOMezY/AsHJMe1T+9Y4I5tNaA==","signatures":[{"sig":"MEUCIQCvx2odACSIlLZaYpEF7F1wceS/7oWjTA96hzuGUVo3HAIgbXoOLtgInl8bP3mNefX9l3tfmt8zgdcjk0D8T1kpZxE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":83543},"main":"./index.cjs.js","module":"./index.js","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/8.2.4/node@v22.17.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.17.0","dependencies":{"axios":"^1.13.2","luxon":"^3.7.2","validator":"^13.15.23","@rytass/invoice":"^0.4.10"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.2.12_1764839901279_0.4428706963046978","host":"s3://npm-registry-packages-npm-production"}},"0.2.13":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.2.13","keywords":["rytass","invoice","bank-pro"],"author":{"name":"Chia Yu Pai","email":"fantasyatelier@gmail.com"},"license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.2.13","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"a3e3d1369eabcbb052c4d157a6392f465d2a14c0","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.2.13.tgz","fileCount":14,"integrity":"sha512-zInL5zaYvguQaH/lO+OKDoiCL2IpYmly2nfakcBuzzUOuauuMheKDQppiDYnMy6Vsuf7Mhg+CBiiSIK65eYQEg==","signatures":[{"sig":"MEUCIQCqVEjpRU/gInhEYyf2Wjq063zrac77KwuFUv1AVb0L1QIgM9xyy55twByMhq3geWq9HMRsw4+4tuBgxcQWVWX1Kb8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":83543},"main":"./index.cjs.js","module":"./index.js","gitHead":"6d64a59c8a66ddd5590d8ee96f1b4b9ed8bcf717","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.17.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.17.0","dependencies":{"axios":"^1.13.2","luxon":"^3.7.2","validator":"^13.15.23","@rytass/invoice":"^0.4.10"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.2.13_1764927206065_0.48546692150447535","host":"s3://npm-registry-packages-npm-production"}},"0.2.14":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.2.14","keywords":["rytass","invoice","bank-pro"],"author":{"name":"Chia Yu Pai","email":"fantasyatelier@gmail.com"},"license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.2.14","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"0f5381cfc6c788a77287c358c9056b79406da090","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.2.14.tgz","fileCount":14,"integrity":"sha512-p7sD1GLqusAKubXiHNV+o1C7eWkbGA9LyXLejhRyTbOgNU9W/vXNkE2zSYqtR62Y+3PfULObRgojo1toDvYsaQ==","signatures":[{"sig":"MEYCIQC6Pjtz+Db7/fRdZEiiSdiP85iyV8MeGv4KL25wRZ6m7AIhAJJcdaiOaXsDaalOknYW6ZLMFenW3Z+eIkkg2tdkvTiB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84298},"main":"./index.cjs.js","module":"./index.js","gitHead":"418b57c13a0c8d5d0524ea258e4625f5a594b596","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.17.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.17.0","dependencies":{"axios":"^1.13.2","luxon":"^3.7.2","validator":"^13.15.23","@rytass/invoice":"^0.4.10"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.2.14_1764932305619_0.6930316596625821","host":"s3://npm-registry-packages-npm-production"}},"0.2.15":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.2.15","keywords":["rytass","invoice","bank-pro"],"author":{"name":"Chia Yu Pai","email":"fantasyatelier@gmail.com"},"license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.2.15","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"a33782e87763fb3f74b8fc2e28fb3d77427396e2","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.2.15.tgz","fileCount":14,"integrity":"sha512-KRGD66+B4z22zsaqnOKAZmCtqA+iExBQgCf8TZIeSYspLlwWJiNez/fIhdUkRrWxPvhRSzk7+SAMYX3negefyw==","signatures":[{"sig":"MEYCIQCGmdZtDyJR9C21v3m+3hHMh4VjB9UKXNuyNb4utv9WcwIhANbUq0EJzoP6Ehc3CqeeHGtLr0xmluEWrrXDB7Ai9lqS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84298},"main":"./index.cjs.js","module":"./index.js","gitHead":"3874a0fe6fca55da4d3c16281cb41a49155d6ed0","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.17.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.17.0","dependencies":{"axios":"^1.13.2","luxon":"^3.7.2","validator":"^13.15.23","@rytass/invoice":"^0.4.10"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.2.15_1768385907875_0.03091835916125163","host":"s3://npm-registry-packages-npm-production"}},"0.2.16":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.2.16","keywords":["rytass","invoice","bank-pro"],"author":{"name":"Chia Yu Pai","email":"fantasyatelier@gmail.com"},"license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.2.16","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"c5c350d14d313f11e66bdddbcdacd2d9a28becb1","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.2.16.tgz","fileCount":14,"integrity":"sha512-3z4Po+7X73Vj5nnKxGArbXAOUlOr67Mn53FCvngI/5aMQpD2gfYDpZECgGLcbE843Ja2nzsEneA6fQHwWAazng==","signatures":[{"sig":"MEYCIQD984xZo34GwwT/hi8Qk8RePFWMW+Oa3KA54us1A+tRrQIhAKWMvUw5eXF/QAZVx9tiImkEzHzWfmiGszPg264wL10h","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84298},"main":"./index.cjs.js","module":"./index.js","gitHead":"90f416c963149ca24e008100c78c31d323b65374","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/9.0.4/node@v22.17.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.17.0","dependencies":{"axios":"^1.13.5","luxon":"^3.7.2","validator":"^13.15.26","@rytass/invoice":"^0.4.10"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.2.16_1771930022221_0.7986199484418866","host":"s3://npm-registry-packages-npm-production"}},"0.2.17":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.2.17","keywords":["rytass","invoice","bank-pro"],"author":{"name":"Chia Yu Pai","email":"fantasyatelier@gmail.com"},"license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.2.17","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"607628c01dccb5d64a5234a3573e5b7adea411f4","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.2.17.tgz","fileCount":14,"integrity":"sha512-GijqObmpilTrhOU2xqPTixTsp3zZW6ZcvftTatjzc4LWGh6qFp3PT9M8FqHXaFC62kQ7Rgr1rwmnti06AfZeRA==","signatures":[{"sig":"MEUCIAn2f7BhKhHz5Skfrs8qFYt47IgqF91yie/i+ZgpboZcAiEAoQSaMIfTjKoCbSYlCiYeAGVXZ3Bo9dLqADGly0UuzWQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84298},"main":"./index.cjs.js","module":"./index.js","gitHead":"b9633a854236afe6468d49d0a41d5593fee0249f","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/9.0.4/node@v22.17.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.17.0","dependencies":{"axios":"^1.16.1","luxon":"^3.7.2","validator":"^13.15.26","@rytass/invoice":"^0.4.10"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.2.17_1779093031506_0.7932924999914015","host":"s3://npm-registry-packages-npm-production"}},"0.2.18":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.2.18","keywords":["rytass","invoice","bank-pro"],"author":{"name":"Chia Yu Pai","email":"fantasyatelier@gmail.com"},"license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.2.18","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"f43434fe1283def4c1cecbe3f8a0d56e79d6325c","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.2.18.tgz","fileCount":14,"integrity":"sha512-TqWUCRfSDmtvqVm/9Io+JVL/f95bhYgFrH2VOE+gpzne9kiXJwdKzS79roLBzDLCTn37K3Oy7yt+W1maBg7pkw==","signatures":[{"sig":"MEUCIAd2CdbJgaWqoRgJs+CEBqsM3kdO/py9xTqpB1o6OkuOAiEA/uwNDhSN5UfJURpHy8aXQbe12GLSPO5bBWZbDQSJJSQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":85198},"main":"./index.cjs.js","module":"./index.js","gitHead":"6c32a49d633bf23941f172d57c6356c8f047467f","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/9.0.4/node@v22.22.3+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.22.3","dependencies":{"axios":"^1.16.1","luxon":"^3.7.2","validator":"^13.15.26","@rytass/invoice":"^0.4.10"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.2.18_1781004324053_0.38958669358061737","host":"s3://npm-registry-packages-npm-production"}},"0.2.19":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.2.19","keywords":["rytass","invoice","bank-pro"],"author":{"name":"Chia Yu Pai","email":"fantasyatelier@gmail.com"},"license":"MIT","_id":"@rytass/invoice-adapter-bank-pro@0.2.19","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"homepage":"https://github.com/Rytass/Utils#readme","bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dist":{"shasum":"ca6f36fe499bb9d181ad034691a0a045710bba90","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.2.19.tgz","fileCount":14,"integrity":"sha512-00snqIhbugh+3j793KChj7qE7vzxUYRVaXtSptCt4Knvo9muK2iyBzGU3DxEwq1sTWxvOhaOPWZyX/mGfChoZg==","signatures":[{"sig":"MEQCIDExJRtGfGiDkcdj3ngOkPlUO2mMJoaKdc9Rkw7f2/slAiBtDZkbReShpBdSvwH2PKT/zu2AFl7QqaJDDY9gSWC/IA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":85178},"main":"./index.cjs.js","module":"./index.js","gitHead":"80322dbee1ccc695a5b5c3ca6cfcf56011a96a8f","typings":"./index.d.ts","_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"repository":{"url":"git+https://github.com/Rytass/Utils.git","type":"git"},"_npmVersion":"lerna/9.0.4/node@v22.17.0+arm64 (darwin)","description":"Rytass Invoice Gateway - BankPro","directories":{},"_nodeVersion":"22.17.0","dependencies":{"axios":"^1.16.1","luxon":"^3.7.2","validator":"^13.15.26","@rytass/invoice":"^0.4.10"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/invoice-adapter-bank-pro_0.2.19_1783932747037_0.752569098257164","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@rytass/invoice-adapter-bank-pro","version":"0.3.0","description":"Rytass Invoice Gateway - BankPro","keywords":["rytass","invoice","bank-pro"],"author":{"name":"Chia Yu Pai","email":"fantasyatelier@gmail.com"},"homepage":"https://github.com/Rytass/Utils#readme","license":"MIT","repository":{"type":"git","url":"git+https://github.com/Rytass/Utils.git"},"bugs":{"url":"https://github.com/Rytass/Utils/issues"},"dependencies":{"@rytass/invoice":"^0.5.0","axios":"^1.16.1","luxon":"^3.7.2","validator":"^13.15.26"},"type":"module","main":"./index.cjs","module":"./index.js","types":"./index.d.ts","typings":"./index.d.ts","engines":{"node":">=20.19.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./index.js"},"require":{"types":"./index.d.cts","default":"./index.cjs"},"default":"./index.js"},"./package.json":"./package.json","./*.css":"./*.css","./*.json":"./*.json","./*.js":{"import":{"types":"./*.d.ts","default":"./*.js"},"require":{"types":"./*.d.cts","default":"./*.cjs"},"default":"./*.js"},"./*":{"import":{"types":"./*.d.ts","default":"./*.js"},"require":{"types":"./*.d.cts","default":"./*.cjs"},"default":"./*.js"}},"gitHead":"4e84d1f8fa0679df8809c6c03f1e11be5610c5e9","_id":"@rytass/invoice-adapter-bank-pro@0.3.0","_nodeVersion":"26.4.0","_npmVersion":"lerna/9.0.4/node@v26.4.0+arm64 (darwin)","dist":{"integrity":"sha512-oRDH2JNc0C7JaeVgXYeMLjIANJ1itO2OmIl5R0Cq8rgCrAipGogVvh/Y0DSgvZyp+hZVL2gZ0tvCPliJlvRj0A==","shasum":"1f499b53755597a07c3de4f338ebedb93f618495","tarball":"https://registry.npmjs.org/@rytass/invoice-adapter-bank-pro/-/invoice-adapter-bank-pro-0.3.0.tgz","fileCount":23,"unpackedSize":95961,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIBdopS4/yigXeAul+G5YizD3isCRGF4etuudO/y0fKigAiB9gUYXhwILSzRdqAMwn2xBcBkojIrEqmAhFEoucXoRVA=="}]},"_npmUser":{"name":"fantasywind","email":"fantasyatelier@gmail.com"},"directories":{},"maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/invoice-adapter-bank-pro_0.3.0_1785696835331_0.9998371854920525"},"_hasShrinkwrap":false}},"time":{"created":"2024-10-07T07:18:24.119Z","modified":"2026-08-02T18:53:55.649Z","0.1.0":"2024-10-07T07:18:24.489Z","0.1.1":"2024-10-07T09:56:16.946Z","0.1.2":"2024-10-09T11:03:37.941Z","0.1.3":"2024-11-05T12:41:14.400Z","0.1.4":"2024-11-09T18:08:46.593Z","0.1.5":"2024-11-18T12:20:42.824Z","0.1.6":"2024-11-29T12:02:40.869Z","0.1.7":"2025-02-13T09:38:31.840Z","0.1.8":"2025-06-09T11:30:19.012Z","0.1.9":"2025-06-10T05:45:11.796Z","0.1.10":"2025-06-25T10:00:29.957Z","0.1.11":"2025-06-28T05:28:42.619Z","0.2.0":"2025-07-28T11:17:39.101Z","0.2.1":"2025-07-28T14:22:42.246Z","0.2.2":"2025-07-30T07:23:49.461Z","0.2.3":"2025-08-18T09:42:28.073Z","0.2.4":"2025-08-19T14:39:14.824Z","0.2.5":"2025-09-09T14:45:47.186Z","0.2.6":"2025-09-11T10:14:49.399Z","0.2.7":"2025-09-22T15:38:57.505Z","0.2.8":"2025-10-02T14:01:43.006Z","0.2.9":"2025-10-17T06:01:04.445Z","0.2.10":"2025-11-25T14:08:50.603Z","0.2.11":"2025-11-26T06:21:08.661Z","0.2.12":"2025-12-04T09:18:21.436Z","0.2.13":"2025-12-05T09:33:26.215Z","0.2.14":"2025-12-05T10:58:25.800Z","0.2.15":"2026-01-14T10:18:28.005Z","0.2.16":"2026-02-24T10:47:02.372Z","0.2.17":"2026-05-18T08:30:31.649Z","0.2.18":"2026-06-09T11:25:24.188Z","0.2.19":"2026-07-13T08:52:27.160Z","0.3.0":"2026-08-02T18:53:55.481Z"},"bugs":{"url":"https://github.com/Rytass/Utils/issues"},"author":{"name":"Chia Yu Pai","email":"fantasyatelier@gmail.com"},"license":"MIT","homepage":"https://github.com/Rytass/Utils#readme","keywords":["rytass","invoice","bank-pro"],"repository":{"type":"git","url":"git+https://github.com/Rytass/Utils.git"},"description":"Rytass Invoice Gateway - BankPro","maintainers":[{"name":"fantasywind","email":"fantasyatelier@gmail.com"}],"readme":"# Rytass Utils - Invoice Adapter Bank Pro\n\nA comprehensive Bank Pro electronic invoice integration adapter for Taiwan's electronic invoice system. This adapter provides seamless integration with Bank Pro's B2B2C Web API, supporting complete invoice lifecycle management with robust tax compliance and carrier support.\n\n## Features\n\n- [x] Complete Bank Pro B2B2C Web API integration\n- [x] B2B and B2C invoice issuance\n- [x] Invoice query functionality (by order ID or invoice number)\n- [x] Invoice voiding operations\n- [x] Invoice allowance (partial refund) management\n- [x] Allowance invalidation support\n- [x] Multiple carrier type support\n- [x] Tax calculation and validation\n- [x] Detailed product information support\n- [x] Email notification integration\n- [x] Production and development environment support\n- [x] TypeScript type safety\n- [x] Comprehensive error handling\n\n## Installation\n\n```bash\nnpm install @rytass/invoice-adapter-bank-pro\n# or\nyarn add @rytass/invoice-adapter-bank-pro\n```\n\n**Peer Dependencies:**\n\n```bash\nnpm install @rytass/invoice\n```\n\n## Configuration\n\n### Environment Setup\n\n```typescript\nimport { BankProInvoiceGateway, BankProBaseUrls } from '@rytass/invoice-adapter-bank-pro';\n\n// Development environment\nconst developmentGateway = new BankProInvoiceGateway({\n  user: 'YOUR_DEVELOPMENT_USER',\n  password: 'YOUR_DEVELOPMENT_PASSWORD',\n  systemOID: 12345, // Your development system OID\n  sellerBAN: '12345678', // Your company VAT number\n  baseUrl: BankProBaseUrls.DEVELOPMENT, // http://webtest.bpscm.com.tw/webapi/api/B2B2CWebApi\n});\n\n// Production environment\nconst productionGateway = new BankProInvoiceGateway({\n  user: 'YOUR_PRODUCTION_USER',\n  password: 'YOUR_PRODUCTION_PASSWORD',\n  systemOID: 54321, // Your production system OID\n  sellerBAN: '12345678', // Your company VAT number\n  baseUrl: BankProBaseUrls.PRODUCTION, // http://www.bpscm.com.tw/webapi/api/B2B2CWebApi\n});\n```\n\n### Configuration Options\n\n```typescript\ninterface BankProInvoiceGatewayOptions {\n  user: string; // Bank Pro API user ID\n  password: string; // Bank Pro API password\n  systemOID: number; // Bank Pro system identifier\n  sellerBAN: string; // Seller's VAT number (統編)\n  baseUrl?: BankProBaseUrls; // API base URL (development/production)\n}\n```\n\n## Basic Usage\n\n### B2C Invoice Issuance\n\n```typescript\nimport { BankProInvoiceGateway, InvoiceCarriers, TaxType } from '@rytass/invoice-adapter-bank-pro';\n\nconst gateway = new BankProInvoiceGateway({\n  user: process.env.BANKPRO_USER!,\n  password: process.env.BANKPRO_PASSWORD!,\n  systemOID: parseInt(process.env.BANKPRO_SYSTEM_OID!),\n  sellerBAN: process.env.SELLER_VAT_NUMBER!,\n  baseUrl: BankProBaseUrls.PRODUCTION,\n});\n\n// Issue B2C invoice\nconst invoice = await gateway.issue({\n  orderId: 'ORD-2024-001',\n  buyerEmail: 'customer@example.com',\n  buyerName: 'Customer Name',\n  buyerAddress: '台北市信義區信義路五段7號',\n  buyerZipCode: '110',\n  buyerMobile: '0912345678',\n  carrier: InvoiceCarriers.PRINT,\n  items: [\n    {\n      name: 'Premium Product',\n      unitPrice: 2000,\n      quantity: 1,\n      unit: '個',\n      taxType: TaxType.TAXED,\n      id: 'PROD-001',\n      barcode: '1234567890123',\n      spec: '高級款',\n      remark: '限量商品',\n    },\n    {\n      name: 'Standard Service',\n      unitPrice: 1500,\n      quantity: 2,\n      unit: '次',\n      taxType: TaxType.TAXED,\n      id: 'SRV-001',\n    },\n  ],\n});\n\nconsole.log('Invoice Number:', invoice.number);\nconsole.log('Random Code:', invoice.randomCode);\nconsole.log('Total Amount:', invoice.amount);\n```\n\n### B2B Invoice Issuance\n\n```typescript\n// B2B invoice with company information\nconst b2bInvoice = await gateway.issue({\n  orderId: 'B2B-2024-001',\n  vatNumber: '12345678', // Buyer's VAT number\n  companyName: '採購公司股份有限公司',\n  buyerEmail: 'procurement@buyer-company.com.tw',\n  buyerName: '採購部經理',\n  buyerAddress: '新北市板橋區文化路二段242號',\n  buyerZipCode: '220',\n  carrier: InvoiceCarriers.PRINT,\n  sellerCode: 'SELLER-001', // Optional seller code\n  remark: 'B2B訂單 - 月結30天',\n  items: [\n    {\n      name: '企業方案服務',\n      unitPrice: 50000,\n      quantity: 1,\n      unit: '年',\n      taxType: TaxType.TAXED,\n      id: 'ENT-PLAN-001',\n      spec: '專業版',\n      remark: '包含技術支援',\n    },\n    {\n      name: '客製化開發',\n      unitPrice: 100000,\n      quantity: 1,\n      unit: '式',\n      taxType: TaxType.TAXED,\n      id: 'CUSTOM-DEV-001',\n    },\n  ],\n});\n```\n\n### Invoice with Mobile Carrier\n\n```typescript\n// Issue invoice with mobile barcode carrier\nconst mobileInvoice = await gateway.issue({\n  orderId: 'MOBILE-2024-001',\n  buyerEmail: 'mobile-user@example.com',\n  buyerName: 'Mobile User',\n  carrier: InvoiceCarriers.MOBILE('/ABC12345'),\n  items: [\n    {\n      name: 'Digital Product',\n      unitPrice: 1200,\n      quantity: 1,\n      unit: '個',\n      taxType: TaxType.TAXED,\n    },\n  ],\n});\n```\n\n### Invoice with Love Code (Donation)\n\n```typescript\n// Issue invoice with donation to charity\nconst donationInvoice = await gateway.issue({\n  orderId: 'DONATION-2024-001',\n  buyerEmail: 'donor@example.com',\n  buyerName: 'Charitable Donor',\n  carrier: InvoiceCarriers.LOVE_CODE('001'),\n  items: [\n    {\n      name: 'Charity Purchase',\n      unitPrice: 1000,\n      quantity: 3,\n      unit: '份',\n      taxType: TaxType.TAXED,\n    },\n  ],\n});\n```\n\n## Advanced Usage\n\n### Mixed Tax Type Items\n\n```typescript\nconst mixedTaxInvoice = await gateway.issue({\n  orderId: 'MIXED-2024-001',\n  buyerEmail: 'export@customer.com',\n  buyerName: 'Export Customer',\n  buyerAddress: 'Export Address',\n  customsMark: CustomsMark.YES,\n  carrier: InvoiceCarriers.PRINT,\n  items: [\n    {\n      name: 'Domestic Product',\n      unitPrice: 1000,\n      quantity: 2,\n      taxType: TaxType.TAXED, // 5% tax\n      unit: '個',\n    },\n    {\n      name: 'Tax-Free Product',\n      unitPrice: 2000,\n      quantity: 1,\n      taxType: TaxType.TAX_FREE, // No tax\n      unit: '件',\n    },\n    {\n      name: 'Export Product',\n      unitPrice: 3000,\n      quantity: 1,\n      taxType: TaxType.ZERO_TAX, // Export (0% tax)\n      unit: '組',\n    },\n  ],\n});\n```\n\n### Detailed Product Information\n\n```typescript\nconst detailedInvoice = await gateway.issue({\n  orderId: 'DETAILED-2024-001',\n  buyerEmail: 'detailed@customer.com',\n  buyerName: 'Detail Customer',\n  carrier: InvoiceCarriers.PRINT,\n  items: [\n    {\n      name: 'Smart Phone',\n      unitPrice: 25000,\n      quantity: 1,\n      unit: '支',\n      taxType: TaxType.TAXED,\n      id: 'PHONE-001',\n      barcode: '4710543211234',\n      spec: '128GB 藍色',\n      remark: '保固一年',\n    },\n    {\n      name: 'Phone Case',\n      unitPrice: 500,\n      quantity: 2,\n      unit: '個',\n      taxType: TaxType.TAXED,\n      id: 'CASE-001',\n      barcode: '4710543211241',\n      spec: '透明矽膠',\n      remark: '防摔保護',\n    },\n  ],\n});\n```\n\n## Query Operations\n\n### Query by Order ID\n\n```typescript\n// Query invoice using order ID\nconst queriedByOrder = await gateway.query({\n  orderId: 'ORD-2024-001',\n});\n\nconsole.log('Invoice Number:', queriedByOrder.number);\nconsole.log('Invoice State:', queriedByOrder.state);\nconsole.log('Invoice Amount:', queriedByOrder.amount);\nconsole.log('Tax Amount:', queriedByOrder.taxAmount);\n```\n\n### Query by Invoice Number\n\n```typescript\n// Query invoice using invoice number\nconst queriedByNumber = await gateway.query({\n  invoiceNumber: 'AA12345678',\n});\n\nconsole.log('Order ID:', queriedByNumber.orderId);\nconsole.log('Random Code:', queriedByNumber.randomCode);\nconsole.log('Issued On:', queriedByNumber.issuedOn);\nconsole.log('Void Status:', queriedByNumber.state);\n```\n\n## Invoice Management\n\n### Invoice Voiding\n\n```typescript\n// Query and void an invoice\nconst invoiceToVoid = await gateway.query({\n  orderId: 'ORD-2024-001',\n});\n\nconst voidedInvoice = await gateway.void(invoiceToVoid, {\n  reason: 'Customer requested cancellation due to shipping delay',\n});\n\nconsole.log('Void Status:', voidedInvoice.state); // InvoiceState.VOID\nconsole.log('Voided On:', voidedInvoice.voidOn);\n```\n\n### Invoice Allowance (Partial Refund)\n\n```typescript\n// Create allowance for partial refund\nconst originalInvoice = await gateway.query({\n  orderId: 'ORD-2024-001',\n});\n\nconst allowanceInvoice = await gateway.allowance(originalInvoice, [\n  {\n    name: 'Returned Product',\n    unitPrice: 2000,\n    quantity: 1, // Return 1 item\n    unit: '個',\n    taxType: TaxType.TAXED,\n    id: 'RETURN-001',\n  },\n]);\n\nconsole.log('Allowance Number:', allowanceInvoice.allowances[0].number);\nconsole.log('Allowance Amount:', allowanceInvoice.allowances[0].amount);\nconsole.log('Remaining Amount:', allowanceInvoice.allowances[0].remainingAmount);\n```\n\n### Invalidate Allowance\n\n```typescript\n// Invalidate a previously issued allowance\nconst allowanceToInvalidate = allowanceInvoice.allowances[0];\nconst updatedInvoice = await gateway.invalidAllowance(allowanceToInvalidate);\n\nconsole.log('Allowance invalidated:', updatedInvoice.allowances[0].invalidatedOn);\n```\n\n## Error Handling\n\n### Bank Pro Specific Errors\n\n```typescript\ntry {\n  const invoice = await gateway.issue({\n    orderId: 'ERROR-TEST',\n    buyerEmail: 'test@example.com',\n    carrier: InvoiceCarriers.PRINT,\n    items: [\n      /* invalid items */\n    ],\n  });\n} catch (error) {\n  if (error.message.includes('authentication failed')) {\n    console.error('Bank Pro authentication failed - check credentials');\n  } else if (error.message.includes('system unavailable')) {\n    console.error('Bank Pro system temporarily unavailable');\n  } else if (error.message.includes('duplicate order')) {\n    console.error('Order ID already exists - use different order ID');\n  } else if (error.message.includes('invalid VAT number')) {\n    console.error('Buyer VAT number validation failed');\n  } else {\n    console.error('Invoice issuance failed:', error.message);\n  }\n}\n```\n\n### Network and System Errors\n\n```typescript\nasync function safeInvoiceOperation<T>(operation: () => Promise<T>, retries: number = 3): Promise<T> {\n  for (let attempt = 1; attempt <= retries; attempt++) {\n    try {\n      return await operation();\n    } catch (error) {\n      if (attempt === retries) {\n        throw error;\n      }\n\n      if (error.code === 'ECONNRESET' || error.code === 'ENOTFOUND') {\n        console.warn(`Network error on attempt ${attempt}, retrying...`);\n        await new Promise(resolve => setTimeout(resolve, 1000 * attempt));\n      } else {\n        throw error; // Don't retry non-network errors\n      }\n    }\n  }\n\n  throw new Error('All retry attempts failed');\n}\n\n// Usage with retry logic\nconst invoice = await safeInvoiceOperation(() =>\n  gateway.issue({\n    orderId: 'RETRY-001',\n    buyerEmail: 'customer@example.com',\n    carrier: InvoiceCarriers.PRINT,\n    items: [\n      /* items */\n    ],\n  }),\n);\n```\n\n## Integration Examples\n\n### Express.js API Integration\n\n```typescript\nimport express from 'express';\nimport { BankProInvoiceGateway, BankProBaseUrls, InvoiceCarriers, TaxType } from '@rytass/invoice-adapter-bank-pro';\n\nconst app = express();\nconst gateway = new BankProInvoiceGateway({\n  user: process.env.BANKPRO_USER!,\n  password: process.env.BANKPRO_PASSWORD!,\n  systemOID: parseInt(process.env.BANKPRO_SYSTEM_OID!),\n  sellerBAN: process.env.SELLER_VAT_NUMBER!,\n  baseUrl: process.env.NODE_ENV === 'production' ? BankProBaseUrls.PRODUCTION : BankProBaseUrls.DEVELOPMENT,\n});\n\n// Issue invoice endpoint\napp.post('/api/invoices', async (req, res) => {\n  try {\n    const { orderId, customer, items, isB2B } = req.body;\n\n    const invoiceData = {\n      orderId,\n      buyerEmail: customer.email,\n      buyerName: customer.name,\n      buyerAddress: customer.address,\n      buyerZipCode: customer.zipCode,\n      buyerMobile: customer.mobile,\n      carrier: customer.mobileBarcode ? InvoiceCarriers.MOBILE(customer.mobileBarcode) : InvoiceCarriers.PRINT,\n      items: items.map(item => ({\n        name: item.name,\n        unitPrice: item.price,\n        quantity: item.quantity,\n        unit: item.unit || '個',\n        taxType: TaxType.TAXED,\n        id: item.productId,\n        barcode: item.barcode,\n        spec: item.specification,\n        remark: item.notes,\n      })),\n    };\n\n    // Add B2B specific fields\n    if (isB2B && customer.vatNumber) {\n      Object.assign(invoiceData, {\n        vatNumber: customer.vatNumber,\n        companyName: customer.companyName,\n      });\n    }\n\n    const invoice = await gateway.issue(invoiceData as any);\n\n    res.json({\n      success: true,\n      invoice: {\n        number: invoice.number,\n        randomCode: invoice.randomCode,\n        amount: invoice.amount,\n        taxAmount: invoice.taxAmount,\n        issuedOn: invoice.issuedOn,\n      },\n    });\n  } catch (error) {\n    res.status(400).json({\n      success: false,\n      error: error.message,\n    });\n  }\n});\n\n// Query invoice endpoint\napp.get('/api/invoices/order/:orderId', async (req, res) => {\n  try {\n    const { orderId } = req.params;\n\n    const invoice = await gateway.query({ orderId });\n\n    res.json({\n      success: true,\n      invoice: {\n        number: invoice.number,\n        orderId: invoice.orderId,\n        state: invoice.state,\n        amount: invoice.amount,\n        issuedOn: invoice.issuedOn,\n      },\n    });\n  } catch (error) {\n    res.status(404).json({\n      success: false,\n      error: 'Invoice not found',\n    });\n  }\n});\n\n// Void invoice endpoint\napp.post('/api/invoices/:orderId/void', async (req, res) => {\n  try {\n    const { orderId } = req.params;\n    const { reason } = req.body;\n\n    const invoice = await gateway.query({ orderId });\n    const voidedInvoice = await gateway.void(invoice, { reason });\n\n    res.json({\n      success: true,\n      invoice: {\n        number: voidedInvoice.number,\n        state: voidedInvoice.state,\n        voidedOn: voidedInvoice.voidOn,\n      },\n    });\n  } catch (error) {\n    res.status(400).json({\n      success: false,\n      error: error.message,\n    });\n  }\n});\n```\n\n### NestJS Service Integration\n\n```typescript\nimport { Injectable, BadRequestException, NotFoundException } from '@nestjs/common';\nimport { BankProInvoiceGateway, BankProBaseUrls, InvoiceCarriers, TaxType } from '@rytass/invoice-adapter-bank-pro';\n\n@Injectable()\nexport class BankProInvoiceService {\n  private readonly gateway: BankProInvoiceGateway;\n\n  constructor() {\n    this.gateway = new BankProInvoiceGateway({\n      user: process.env.BANKPRO_USER!,\n      password: process.env.BANKPRO_PASSWORD!,\n      systemOID: parseInt(process.env.BANKPRO_SYSTEM_OID!),\n      sellerBAN: process.env.SELLER_VAT_NUMBER!,\n      baseUrl: process.env.NODE_ENV === 'production' ? BankProBaseUrls.PRODUCTION : BankProBaseUrls.DEVELOPMENT,\n    });\n  }\n\n  async createInvoiceForOrder(order: {\n    id: string;\n    customer: {\n      email: string;\n      name: string;\n      address?: string;\n      zipCode?: string;\n      mobile?: string;\n      vatNumber?: string;\n      companyName?: string;\n      mobileBarcode?: string;\n    };\n    items: Array<{\n      name: string;\n      price: number;\n      quantity: number;\n      unit?: string;\n      productId?: string;\n      barcode?: string;\n      specification?: string;\n      notes?: string;\n    }>;\n    notes?: string;\n  }) {\n    // Determine invoice type\n    const isB2B = !!order.customer.vatNumber;\n\n    // Determine carrier\n    let carrier = InvoiceCarriers.PRINT;\n    if (!isB2B && order.customer.mobileBarcode) {\n      // Validate mobile barcode if needed\n      const isValid = await this.gateway.isMobileBarcodeValid(order.customer.mobileBarcode);\n      if (isValid) {\n        carrier = InvoiceCarriers.MOBILE(order.customer.mobileBarcode);\n      }\n    }\n\n    // Prepare invoice data\n    const invoiceData = {\n      orderId: order.id,\n      buyerEmail: order.customer.email,\n      buyerName: order.customer.name,\n      buyerAddress: order.customer.address,\n      buyerZipCode: order.customer.zipCode,\n      buyerMobile: order.customer.mobile,\n      carrier,\n      remark: order.notes,\n      items: order.items.map(item => ({\n        name: item.name,\n        unitPrice: item.price,\n        quantity: item.quantity,\n        unit: item.unit || '個',\n        taxType: TaxType.TAXED,\n        id: item.productId,\n        barcode: item.barcode,\n        spec: item.specification,\n        remark: item.notes,\n      })),\n    };\n\n    // Add B2B specific fields\n    if (isB2B) {\n      Object.assign(invoiceData, {\n        vatNumber: order.customer.vatNumber,\n        companyName: order.customer.companyName,\n      });\n    }\n\n    const invoice = await this.gateway.issue(invoiceData as any);\n\n    return {\n      invoiceNumber: invoice.number,\n      randomCode: invoice.randomCode,\n      amount: invoice.amount,\n      taxAmount: invoice.taxAmount,\n      issuedOn: invoice.issuedOn,\n    };\n  }\n\n  async queryInvoiceByOrderId(orderId: string) {\n    try {\n      const invoice = await this.gateway.query({ orderId });\n      return {\n        invoiceNumber: invoice.number,\n        orderId: invoice.orderId,\n        randomCode: invoice.randomCode,\n        state: invoice.state,\n        amount: invoice.amount,\n        taxAmount: invoice.taxAmount,\n        issuedOn: invoice.issuedOn,\n        voidOn: invoice.voidOn,\n      };\n    } catch (error) {\n      throw new NotFoundException('Invoice not found');\n    }\n  }\n\n  async voidInvoice(orderId: string, reason: string) {\n    const invoice = await this.gateway.query({ orderId });\n\n    if (invoice.state === InvoiceState.VOID) {\n      throw new BadRequestException('Invoice is already voided');\n    }\n\n    const voidedInvoice = await this.gateway.void(invoice, { reason });\n\n    return {\n      invoiceNumber: voidedInvoice.number,\n      state: voidedInvoice.state,\n      voidedOn: voidedInvoice.voidOn,\n    };\n  }\n\n  async createAllowance(\n    orderId: string,\n    allowanceItems: Array<{\n      name: string;\n      price: number;\n      quantity: number;\n      unit?: string;\n      productId?: string;\n    }>,\n  ) {\n    const originalInvoice = await this.gateway.query({ orderId });\n\n    const allowanceInvoice = await this.gateway.allowance(\n      originalInvoice,\n      allowanceItems.map(item => ({\n        name: item.name,\n        unitPrice: item.price,\n        quantity: item.quantity,\n        unit: item.unit || '個',\n        taxType: TaxType.TAXED,\n        id: item.productId,\n      })),\n    );\n\n    return {\n      allowanceNumber: allowanceInvoice.allowances[0].number,\n      allowanceAmount: allowanceInvoice.allowances[0].amount,\n      remainingAmount: allowanceInvoice.allowances[0].remainingAmount,\n      allowancedOn: allowanceInvoice.allowances[0].issuedOn,\n    };\n  }\n}\n```\n\n### E-commerce Platform Integration\n\n```typescript\nimport { BankProInvoiceGateway, InvoiceCarriers, TaxType, CustomsMark } from '@rytass/invoice-adapter-bank-pro';\n\nclass EcommerceBankProInvoiceProcessor {\n  constructor(private gateway: BankProInvoiceGateway) {}\n\n  async processOrderInvoice(order: {\n    id: string;\n    type: 'b2c' | 'b2b';\n    customer: {\n      email: string;\n      name: string;\n      address?: string;\n      zipCode?: string;\n      mobile?: string;\n      vatNumber?: string;\n      companyName?: string;\n      preferences: {\n        carrier?: 'print' | 'mobile' | 'love_code';\n        carrierCode?: string;\n      };\n    };\n    items: Array<{\n      name: string;\n      price: number;\n      quantity: number;\n      unit?: string;\n      category: string;\n      productId: string;\n      barcode?: string;\n      specification?: string;\n      notes?: string;\n      isExport?: boolean;\n    }>;\n    shipping: {\n      isExport?: boolean;\n      notes?: string;\n    };\n    seller?: {\n      code?: string; // Seller code for multi-vendor platforms\n    };\n  }) {\n    // Determine carrier based on customer preferences\n    let carrier = InvoiceCarriers.PRINT;\n\n    if (order.type === 'b2c') {\n      switch (order.customer.preferences.carrier) {\n        case 'mobile':\n          if (order.customer.preferences.carrierCode) {\n            // Validate mobile barcode if needed\n            const isValidBarcode = await this.gateway.isMobileBarcodeValid(order.customer.preferences.carrierCode);\n            if (isValidBarcode) {\n              carrier = InvoiceCarriers.MOBILE(order.customer.preferences.carrierCode);\n            }\n          }\n          break;\n        case 'love_code':\n          if (order.customer.preferences.carrierCode) {\n            const isValidLoveCode = await this.gateway.isLoveCodeValid(order.customer.preferences.carrierCode);\n            if (isValidLoveCode) {\n              carrier = InvoiceCarriers.LOVE_CODE(order.customer.preferences.carrierCode);\n            }\n          }\n          break;\n      }\n    }\n\n    // Map items with appropriate tax types\n    const invoiceItems = order.items.map((item, index) => ({\n      name: item.name,\n      unitPrice: item.price,\n      quantity: item.quantity,\n      unit: item.unit || '個',\n      taxType: item.isExport ? TaxType.ZERO_TAX : TaxType.TAXED,\n      id: item.productId,\n      barcode: item.barcode,\n      spec: item.specification,\n      remark: item.notes,\n    }));\n\n    // Prepare invoice options\n    const invoiceOptions = {\n      orderId: order.id,\n      buyerEmail: order.customer.email,\n      buyerName: order.customer.name,\n      buyerAddress: order.customer.address,\n      buyerZipCode: order.customer.zipCode,\n      buyerMobile: order.customer.mobile,\n      carrier,\n      sellerCode: order.seller?.code,\n      remark: order.shipping.notes,\n      items: invoiceItems,\n      customsMark: order.shipping.isExport ? CustomsMark.YES : CustomsMark.NO,\n    };\n\n    // Add B2B specific fields\n    if (order.type === 'b2b') {\n      Object.assign(invoiceOptions, {\n        vatNumber: order.customer.vatNumber,\n        companyName: order.customer.companyName,\n      });\n    }\n\n    const invoice = await this.gateway.issue(invoiceOptions as any);\n\n    // Store invoice reference\n    await this.storeInvoiceReference(order.id, invoice.number, invoice.randomCode);\n\n    return {\n      invoiceNumber: invoice.number,\n      randomCode: invoice.randomCode,\n      amount: invoice.amount,\n      taxAmount: invoice.taxAmount,\n      issuedOn: invoice.issuedOn,\n    };\n  }\n\n  async processOrderRefund(\n    orderId: string,\n    refundItems: Array<{\n      productId: string;\n      name: string;\n      price: number;\n      quantity: number;\n      unit?: string;\n    }>,\n  ) {\n    // Query original invoice\n    const originalInvoice = await this.gateway.query({ orderId });\n\n    // Create allowance for refunded items\n    const allowanceInvoice = await this.gateway.allowance(\n      originalInvoice,\n      refundItems.map(item => ({\n        name: item.name,\n        unitPrice: item.price,\n        quantity: item.quantity,\n        unit: item.unit || '個',\n        taxType: TaxType.TAXED,\n        id: item.productId,\n      })),\n    );\n\n    return {\n      allowanceNumber: allowanceInvoice.allowances[0].number,\n      allowanceAmount: allowanceInvoice.allowances[0].amount,\n      remainingAmount: allowanceInvoice.allowances[0].remainingAmount,\n    };\n  }\n\n  private async storeInvoiceReference(orderId: string, invoiceNumber: string, randomCode: string) {\n    // Implementation to store invoice-order relationship in database\n  }\n}\n```\n\n## Best Practices\n\n### Configuration Management\n\n- Store sensitive credentials in environment variables\n- Use different configurations for development and production environments\n- Regularly rotate API credentials and passwords\n- Implement proper error handling for authentication failures\n\n### Invoice Processing\n\n- Always validate carrier information before invoice issuance\n- Implement proper retry logic for network failures\n- Store order IDs and invoice mappings for future reference\n- Handle duplicate order IDs appropriately\n\n### Tax Compliance\n\n- Use correct tax types for different product categories\n- Handle export/import scenarios with appropriate customs marks\n- Validate VAT numbers for B2B transactions\n- Maintain detailed product information for audit purposes\n\n### Performance Optimization\n\n- Implement connection pooling for high-volume processing\n- Use appropriate timeout settings for API calls\n- Cache frequently accessed invoice data\n- Monitor API response times and implement alerting\n\n### Security\n\n- Validate all input parameters before processing\n- Sanitize customer data and product information\n- Log all invoice operations for audit trails\n- Implement proper access controls for invoice management functions\n\n## Testing\n\n```typescript\nimport { BankProInvoiceGateway, BankProBaseUrls, InvoiceCarriers, TaxType } from '@rytass/invoice-adapter-bank-pro';\n\ndescribe('Bank Pro Invoice Integration', () => {\n  let gateway: BankProInvoiceGateway;\n\n  beforeEach(() => {\n    gateway = new BankProInvoiceGateway({\n      user: 'test_user',\n      password: 'test_password',\n      systemOID: 12345,\n      sellerBAN: '12345678',\n      baseUrl: BankProBaseUrls.DEVELOPMENT,\n    });\n  });\n\n  it('should issue B2C invoice successfully', async () => {\n    const invoice = await gateway.issue({\n      orderId: 'TEST-001',\n      buyerEmail: 'test@customer.com',\n      buyerName: 'Test Customer',\n      carrier: InvoiceCarriers.PRINT,\n      items: [\n        {\n          name: 'Test Product',\n          unitPrice: 1000,\n          quantity: 1,\n          unit: '個',\n          taxType: TaxType.TAXED,\n        },\n      ],\n    });\n\n    expect(invoice.number).toBeDefined();\n    expect(invoice.amount).toBe(1050); // Including 5% tax\n    expect(invoice.state).toBe(InvoiceState.ISSUED);\n  });\n\n  it('should query invoice by order ID', async () => {\n    const queriedInvoice = await gateway.query({\n      orderId: 'TEST-001',\n    });\n\n    expect(queriedInvoice.orderId).toBe('TEST-001');\n    expect(queriedInvoice.number).toBeDefined();\n  });\n\n  it('should create allowance successfully', async () => {\n    const originalInvoice = await gateway.query({\n      orderId: 'TEST-001',\n    });\n\n    const allowanceInvoice = await gateway.allowance(originalInvoice, [\n      {\n        name: 'Returned Product',\n        unitPrice: 1000,\n        quantity: 1,\n        unit: '個',\n        taxType: TaxType.TAXED,\n      },\n    ]);\n\n    expect(allowanceInvoice.allowances).toHaveLength(1);\n    expect(allowanceInvoice.allowances[0].amount).toBe(1050);\n  });\n});\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md"}