{"_id":"@ekhineo/iso20022.js","name":"@ekhineo/iso20022.js","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@ekhineo/iso20022.js","version":"0.1.0","description":"Simple framework to create and ingest ISO20022 XML files.","main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","scripts":{"test":"jest","shell":"npx tsx --experimental-repl-await","build":"rollup -c","type-check":"tsc --noEmit","create-patch-version":"npm run build && npm version patch && git push origin --tags && npm publish"},"exports":{".":{"require":"./dist/index.js","import":"./dist/index.mjs","types":"./dist/index.d.ts"}},"type":"module","keywords":["iso20022","finance","fintech","payments"],"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,jsx,ts,tsx,json,css,scss,md}":["prettier --write"]},"homepage":"https://iso20022js.com","author":{"name":"svapnil"},"license":"MIT","devDependencies":{"@babel/preset-typescript":"^7.24.7","@faker-js/faker":"^8.4.1","@jest/globals":"^29.7.0","@rollup/plugin-commonjs":"^26.0.1","@rollup/plugin-node-resolve":"^15.2.3","@rollup/plugin-typescript":"^11.1.6","@types/dinero.js":"^1.9.4","@types/jest":"^29.5.12","@types/node":"^20.14.12","@types/uuid":"^10.0.0","husky":"^9.1.4","jest":"^29.7.0","libxmljs":"^1.0.11","lint-staged":"^15.2.8","prettier":"^3.3.3","rollup":"^4.19.2","rollup-plugin-dts":"^6.1.1","ts-jest":"^29.2.3","ts-node":"^10.9.2","tslib":"^2.6.3","typescript":"^5.5.4"},"dependencies":{"dinero.js":"^1.9.1","fast-xml-parser":"^4.4.1","uuid":"^10.0.0","xmlbuilder2":"^3.1.1"},"_id":"@ekhineo/iso20022.js@0.1.0","gitHead":"a297f2300d831611d0953ca1841ae0e3e8f97ca1","_nodeVersion":"22.10.0","_npmVersion":"10.9.0","dist":{"integrity":"sha512-hN9rEPw34Bt21CzSceH5l7mhyiJYu8fi4l3b2krKjspjDbBftLt6fcspqq2/wbnEsz7JWljMmsXhJzW/G3Q3aw==","shasum":"127288db6a3af96645aed48d0d7660a92bf33f08","tarball":"https://registry.npmjs.org/@ekhineo/iso20022.js/-/iso20022.js-0.1.0.tgz","fileCount":25,"unpackedSize":297804,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC2Gzwjh6jmdRNugB/n5sBHYY5CHuNbSJYtIf7vMtLycwIgS4dOdP7SkEw7pzT7ioW5a65hM3iaGQ0D/9S8NB2F3fg="}]},"_npmUser":{"name":"daelvn","email":"daelvn@gmail.com"},"directories":{},"maintainers":[{"name":"daelvn","email":"daelvn@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/iso20022.js_0.1.0_1729768642989_0.1842066097355699"},"_hasShrinkwrap":false}},"time":{"created":"2024-10-24T11:17:22.859Z","0.1.0":"2024-10-24T11:17:23.150Z","modified":"2024-10-24T11:17:23.451Z"},"maintainers":[{"name":"daelvn","email":"daelvn@gmail.com"}],"description":"Simple framework to create and ingest ISO20022 XML files.","homepage":"https://iso20022js.com","keywords":["iso20022","finance","fintech","payments"],"author":{"name":"svapnil"},"license":"MIT","readme":"# iso20022.js\n\nThis package is meant for companies using ISO20022 to send and receive payment information.\n\nRead the Docs: https://docs.iso20022js.com\n\nThe mission of this NPM package is to connect the most widely used programming language to the most widely used payment standard.\n\nIf you're interested in using iso20022.js and would like to use different payment types or ingest files using CAMT, please email [svapnil@woodside.sh](mailto:svapnil@woodside.sh).\n\n[![Book with Cal](https://cal.com/book-with-cal-dark.svg)](https://cal.com/woodside/iso20022js?utm_source=banner&utm_campaign=oss)\n\n# Installation\n\n```bash\nnpm install iso20022.js\n```\n\n# Usage\n\n### Payment Initiation: Sending a SWIFT Transfer\n\n```ts\nimport { ISO20022 } from 'iso20022.js';\n\nconst iso20022 = new ISO20022({\n  initiatingParty: {\n    name: 'Acme Corporation',\n    id: 'ACMECORP',\n    account: {\n      accountNumber: '123456789012',\n    },\n    agent: {\n      bic: 'CHASUS33',\n      bankAddress: {\n        country: 'US',\n      },\n    },\n  },\n});\n\nconst creditPaymentInitiation = iso20022.createSWIFTCreditPaymentInitiation({\n  paymentInstructions: [\n    {\n      type: 'swift',\n      direction: 'credit',\n      amount: 1000,\n      currency: 'USD',\n      creditor: {\n        name: 'Jane Smith',\n        account: {\n          iban: 'DE89370400440532013000',\n        },\n        agent: {\n          bic: 'DEUTDEFF',\n        },\n        address: {\n          streetName: '123 Main St',\n          townName: 'Funkytown',\n          postalCode: '12345',\n          country: 'DE',\n        },\n      },\n    },\n  ],\n});\n\nconsole.log(creditPaymentInitiation.toString());\n```\n\n### Cash Management: Ingesting a CAMT.053 file\n\n```ts\nimport { CashManagementEndOfDayReport } from 'iso20022.js';\n\nconst xml = fs.readFileSync('balance_report.xml', 'utf8');\nconst report = CashManagementEndOfDayReport.fromXML(xml);\n\nconsole.log(report.transactions);\n```\n\n## About ISO20022\n\nISO20022 is the standard format for financial transactions. This library aims to build a powerful yet simple API to create these files, following Typescript conventions.\n\nYou might want to use this package if you need to create these types of files.\n\n# Features\n\n| Feature                | Description                                          | Todo |\n| ---------------------- | ---------------------------------------------------- | ---- |\n| SWIFT Credit Transfer  | Create SWIFT credit transfer messages                | ✅   |\n| CAMT Transactions      | Ingest transaction data from CAMT files              | 🚧   |\n| SEPA Credit Transfer   | Create SEPA credit transfer messages                 | 🚧   |\n| Fednow Credit Transfer | Create Fednow credit transfer messages               | 🚧   |\n| XML Generation         | Generate valid ISO 20022 XML files                   | ✅   |\n| Type Safety            | Built with TypeScript for enhanced type checking     | ✅   |\n| Extensible             | Easy to extend for custom message types              | ✅   |\n| Validation             | Built-in validation for ISO 20022 message structures | ✅   |\n","readmeFilename":"README.md"}