#iso-20022 #iso #20022

iso-20022-semt

ISO 20022 Universal Financial Industry Message Scheme Rust SDK

1 unstable release

0.1.0 May 7, 2023

#18 in #20022


Used in iso-20022-sdk

Custom license

2MB
81K SLoC

ISO 20022 Software Development Kit (SDK)

The iso-20022-sdk is a Rust library for working with ISO 20022 messages.

# Cargo.toml

[dependencies]
iso-20022-sdk = { version = "0.1.0" }

WARNING: This repository is actively under development. While we will do our best to maintain consistency and adequate deprecation notices, it is wise to expect breaking changes and use a static version in your dependencies.

Read the ISO 20022 SDK User Guide for usage examples and more information.



Need ISO 20022 Integrations? Contact us to learn about our services.

Features

By default, iso-20022-sdk includes nvlp, head and dsig features, which imports iso-20022-nvlp, iso-20022-head and iso-20022-dsig respectively.

Documents, e.g. remt.001.001.01, are conditionally compiled and need to be added individually, either as a business domain or message set feature, e.g.

# Cargo.toml

[dependencies]
iso-20022-sdk = { version = "0.1.0", features = ["remt"] }

Now you can create a Document from the remt.001.001.01 namespace:

use iso_20022_sdk::Document;

let mut doc = Document::from_namespace("remt.001.001.01")?;

Business Domains

To include messages relevant only to the payments business domain, add the payments feature to your Cargo.toml:

# Cargo.toml

[dependencies]
iso-20022-sdk = { version = "0.1.0", features = ["payments"] }

Using the payments features will include all message sets in the payments business domain:

payments = ["acmt", "auth", "acmt", "admi", "camt", "pacs", "pain", "reda", "remt"]

Available business domain features

  • payments
  • securities
  • trade
  • cards
  • fx

Message Sets

Each message set, e.g. acmt, has its own Rust library, e.g. iso-20022-acmt, which can be conditionally compiled using the Cargo.toml features flag corresponding to the message set.

# Cargo.toml

[dependencies]
iso-20022-sdk = { version = "0.1.0", features = ["acmt", "admi"] }

Available message set features

  • acmt
  • admi
  • auth
  • caaa
  • caad
  • caam
  • cafc
  • cafm
  • cafr
  • cain
  • camt
  • canm
  • casp
  • casr
  • catm
  • catp
  • colr
  • fxtr
  • pacs
  • pain
  • reda
  • remt
  • secl
  • seev
  • semt
  • sese
  • setr
  • tsin
  • tsmt
  • tsrv

DISCLAIMER

Emergent Financial, LLC and iso-20022-sdk are separate entities from the ISO® 20022 Registration Authority. The ISO 20022 Registration Authority is responsible for managing and maintaining the ISO 20022 standard, whereas Emergent Financial, LLC and iso-20022-sdk are not affiliated with this organization and do not represent it in any way.

Furthermore, please note that iso-20022-sdk is provided as-is without any warranty of any kind, either express or implied. Emergent Financial, LLC and iso-20022-sdk do not make any guarantees regarding the accuracy, completeness, or reliability of the information contained in iso-20022-sdk, nor do they assume any liability for any damages or losses that may arise from the use of this software.

It is recommended that users exercise caution when using iso-20022-sdk and conduct their own independent research to assess its suitability for their particular purposes. Emergent Financial, LLC and iso-20022-sdk shall not be held liable for any direct, indirect, incidental, consequential, or other damages arising from the use of iso-20022-sdk or any other software provided by Emergent Financial, LLC.


Copyright 2023 Emergent Financial, LLC - All Rights Reserved

Dependencies

~8–10MB
~200K SLoC