iso20022
Version:
Generate & Validate ISO 20022 XML Message
129 lines (109 loc) • 3.66 kB
Markdown
# iso20022 (mx)
Generate & Validate ISO 20022 XML message.


[](https://npmjs.org/package/iso20022)
'iso20022' is designed to generate and validate ISO 20022 XML messages effortlessly.This tool quickly generates accurate ISO 20022 messages, simplifying the entire creation and validation process. Whether you're working with payments, securities, or trade messages, iso20022 ensures a smooth and efficient workflow for handling ISO 20022 data.
## Features
- 🔥 Generate ISO 20022 XML payment message by providing the JSON
- 🔥 Convert ngx-iso-form output json to ISO 20022 payment message
- ⚡️ Supports ISO 20022 XSD Validation
## How to Install
```console
npm install iso20022
```
## How to Use
TypeScript
```ts
import mx from "iso20022";
mx.convert('c:/data/pain.001.json', 'urn:iso:std:iso:20022:tech:xsd:pain.001.001.12')
.then(output => console.log(output))
.catch(error => console.error(error));
mx.convertAndValidate('c:/data/pain.001.json', 'urn:iso:std:iso:20022:tech:xsd:pain.001.001.12','c:/data/camt.053.001.10.xsd')
.then((data) => console.log(data))
.catch((data) => console.log(data));
mx.validate('c:/data/pain.001.xml','c:/data/pain.001.001.12.xsd')
.then((data) => console.log(data))
.catch((data) => console.log(data));
```
JavaScript
```js
const mx = require('iso20022').default;
mx.convert('c:/data/pain.001.json', 'urn:iso:std:iso:20022:tech:xsd:pain.001.001.12')
.then(output => console.log(output))
.catch(error => console.error(error));
mx.convertAndValidate('c:/data/pain.001.json', 'urn:iso:std:iso:20022:tech:xsd:pain.001.001.12','c:/data/camt.053.001.10.xsd')
.then((data) => console.log(data))
.catch((data) => console.log(data));
mx.validate('c:/data/pain.001.xml','c:/data/pain.001.001.12.xsd')
.then((data) => console.log(data))
.catch((data) => console.log(data));
```
## Developer Support [SwiftMX](https://swiftmx.co/iso20022)
## Supported OS
- win-64x
- osx-64x
- linux-64x
## Sample JSON - urn:iso:std:iso:20022:tech:xsd:pain.001.001.12
```json
{
"Document": {
"CstmrCdtTrfInitn": {
"GrpHdr": {
"MsgId": "123456",
"CreDtTm": "2025-03-27T10:00:00",
"NbOfTxs": "1",
"CtrlSum": "1000",
"InitgPty": {
"Nm": "Sender Company",
"CtryOfRes": "US"
}
},
"PmtInf": [
{
"PmtInfId": "PAY001",
"PmtMtd": "TRF",
"BtchBookg": "false",
"Dbtr": {
"Nm": "John Doe"
},
"DbtrAcct": {
"Nm": "DE89370400440532013000"
},
"DbtrAgt": {
"FinInstnId": {
"BICFI": "DEUTDEFFXXX"
}
},
"CdtTrfTxInf": [
{
"PmtId": {
"EndToEndId": "TX123"
},
"Amt": {
"InstdAmt": {
"Ccy": "USD",
"Amt": "1000"
}
},
"CdtrAgt": {
"FinInstnId": {
"BICFI": "BNPAFRPPXXX"
}
},
"Cdtr": {
"Nm": "Jane Smith"
},
"CdtrAcct": {
"Id": {
"IBAN": "FR7630006000011234567890189"
}
}
}
]
}
]
}
}
}
```