mt940 alternatives and similar packages
Based on the "Text and Numbers" category.
Alternatively, view mt940 alternatives based on common mentions on social networks and blogs.
-
money
Elixir library for working with Money safer, easier, and fun... Is an interpretation of the Fowler's Money pattern in fun.prog. -
nanoid
Elixir port of NanoID, a secure and URL-friendly unique ID generator. https://hex.pm/packages/nanoid -
secure_random
Convenience library for random base64 strings modeled after my love for Ruby's SecureRandom -
chinese_translation
An elixir module to translate simplified Chinese to traditional Chinese, and vice versa, based on wikipedia data -
inet_cidr
CIDR library for Elixir that is compatible with Erlang's :inet and supports both IPv4 and IPv6 -
Ex_Cldr_Units
Unit formatting (volume, area, length, ...) functions for the Common Locale Data Repository (CLDR) -
minigen
Pure random data generation library, appropriate for realistic simulations in the Erlang ecosystem
CodeRabbit: AI Code Reviews for Developers

Do you think we are missing an alternative of mt940 or a related project?
Popular Comparisons
README
MT940/MT942 parser for Elixir
This is a library to parse MT940 and MT942 account statements. It was ported from Ruby and is based on Thies C. Arntzen's mt940 library. The MT94x category of SWIFT messages are meant for customer statements and cash management:
- MT940 is the standard structured Customer Statement Message format (end-of-day statement file which details all entries booked to a bank account). Usually you receive a customer statement message the next morning of the day of business.
- MT942 is the standard structured Interim Transaction Report format. MT942 gives a report of the debits/credits any given time of the day.
Basic usage
Include a dependency in your mix.exs
:
deps: [{:mt940, "~> 1.1.2"}, …]
use MT940
and parse!
the raw input:
defmodule BankAccount do
use MT940
def balance(raw) when is_binary(raw) do
%{amount: amount, currency: currency} = raw
|> parse!
|> Enum.at(-1)
|> MT940.CustomerStatementMessage.closing_balance
"#{amount} #{currency}"
end
def transactions(raw) when is_binary(raw) do
raw
|> parse!
|> Enum.flat_map(&MT940.CustomerStatementMessage.statement_lines/1)
end
end
If you want to have a more detailed, low-level list of MT940 commands, use the
MT940.Parser.parse!
command.
Specification
Find the specification in the MT940 Format Overview or in the SWIFT MT 940 Customer Statement Message Report.
Documentation
API documentation is available at http://hexdocs.pm/mt940.
Copyright & License
Copyright (c) 2015-2016 Florian J. Breunig
Licensed under MIT, see LICENSE file.
*Note that all licence references and agreements mentioned in the mt940 README section above
are relevant to that project's source code only.