taler-www

Main taler.net website
Log | Files | Refs | Submodules | README | LICENSE

2024-24.html.j2 (9831B)


      1 {% extends "common/news.j2" %}
      2 {% block body_content %}
      3 <h1>2024-08: GNU Taler v0.13 released</h1>
      4 <p>
      5 We are happy to announce the release of GNU Taler v0.13.
      6 </p>
      7 <p>
      8 We have addressed over 100 individual issues, our bug tracker
      9 has the <a href="https://bugs.gnunet.org/changelog_page.php?version_id=443">full list</a>.
     10 Notable changes include:
     11 </p>
     12 <ul>
     13 <li>NEW: Significantly enhanced AML and KYC process support</li>
     14 <li>NEW: First version of real-time auditor</li>
     15 <li>NEW: Support for SEPA Instant credit transfers in libeufin</li>
     16 <li>NEW: Support for Cashless2ecash</li>
     17 <li>NEW: Debian packages for ARM64</li>
     18 <li>Various minor bugfixes, user experience and documentation improvements</li>
     19 </ul>
     20 <p>
     21 Our AML/KYC work was partially funded by <a href="https://nlnet.nl/project/GNUTaler-KYC/">NLnet grant 2022-08-058</a>.
     22 Our work is co-funded by the European Commission and the Swiss State Secretariat for Education, Research and
     23 Innovation (SERI) as part of the <a href="https://taler.net/en/ngi-taler.html">NGI TALER</a> project.
     24 </p>
     25 
     26 <h4>KYC/AML code and documentation</h4>
     27 <p>
     28 The new KYC/AML functionality has code sprinkled all over the place,
     29 so here is an overview of where you find the main components:
     30 <ul>
     31   <li>The <a href="https://docs.taler.net/taler-kyc-manual.html">Exchange KYC/AML Operator Manual</a>
     32     is a new manual documenting the exchange setup for KYC and AML processes</li>
     33   <li>In our <a href="https://docs.taler.net/design-documents/023-taler-kyc.html">Taler KYC</a>
     34     design document we documented our requirements analysis and the high-level the design.</li>
     35   <li>The <a href="https://docs.taler.net/manpages/taler.conf.5.html">taler.conf man page</a>
     36     documents various new configuration options related to AML and KYC processes.</li>
     37   <li>The <a href="https://docs.taler.net/core/api-bank-wire.html#tsref-type-IncomingKycAuthTransaction">Taler Wire Gateway HTTP API</a> was extended with a new <tt>IncomingKycAuthTransaction</tt> type
     38     that is used to demonstrate control over a bank account to the exchange.</li>
     39   <li>In the <a href="https://git-www.taler.net/exchange.git/tree/src/exchangedb">exchange database</a>
     40     code the main tables related to AML/KYC are <tt>aml_history</tt>, <tt>kyc_attributes</tt>, <tt>kyc_events</tt>, <tt>legitimization_measures</tt>, <tt>legitimization_outcomes</tt>, <tt>legitimization_processes</tt> and <tt>kyc_auths_in</tt>.</li>
     41   <li>The main <a href="https://git-www.taler.net/exchange.git/tree/src/exchange">exchange endpoints</a>
     42     are the <a href="https://docs.taler.net/core/api-exchange.html#kyc-status-updates">KYC</a>
     43     and <a href="https://docs.taler.net/core/api-exchange.html#aml-operations">AML</a> operations
     44     as well as some new <a href="https://docs.taler.net/core/api-exchange.html#post--management-aml-officers">management endpoints</a>.</li>
     45   <li>The single page apps for <a href="https://git-www.taler.net/wallet-core.git/tree/packages/aml-backoffice-ui">AML</a>
     46    and <a href="https://git-www.taler.net/wallet-core.git/tree/packages/kyc-ui">KYC</a> are in the <tt>wallet-core.git</tt> repository. There, you also find the new <a href="https://git-www.taler.net/wallet-core.git/tree/packages/challenger-ui">Challenger user interface</a> for our <a href="https://git-www.taler.net/challenger.git/">Oauth 2.0-based address validation service</a>.</li>
     47   <li>The <a href="https://git-www.taler.net/exchange.git/tree/src/auditor">Taler auditor</a> was also
     48    modified to better handle outgoing wire transfers blocked on KYC. In particular, the new
     49    <a href="https://git-www.taler.net/exchange.git/tree/src/auditor/taler-helper-auditor-wire-debit.c">taler-helper-auditor-wire-debit</a> will initially report missing outgoing wire transfers when an
     50    exchange fails to perform a transfer due to a pending KYC requirement.
     51    However, once the KYC process has completed and the wire transfer is made by
     52    the exchange, the warning will be automatically
     53    be <a href="https://git-www.taler.net/exchange.git/tree/src/auditordb/pg_delete_wire_out_inconsistency_if_matching.c">cleared</a>.</li>
     54   <li>The <a href="https://git-www.taler.net/wallet-core.git/tree/packages/taler-wallet-core/">wallet-core</a> component implements support for KYC. The <a href="https://docs.taler.net/wallet/wallet-core.html">wallet-core API docs</a>
     55   contain new transaction details attributes (like "kycUrl") and requests (like "startExchangeWalletKyc") to allow wallet UIs to implement KYC.</li>
     56 </ul>
     57 </p>
     58 <h4>KYC in Action</h4>
     59 <p>
     60 The following screenshots show (some of) the new KYC functionality
     61 in action using an iOS wallet. The backend was configured to use
     62 the "KYCS" test currency for demonstration purposes. It uses two
     63 KYC rules: (1) triggers KYC to identify the bank account owner when
     64 withdrawing more than 50 KYCS, and (2) triggers KYC to identify a
     65 wallet owner if the wallet balance crosses 100 KYCS.
     66 </p>
     67 <p>
     68 We start with a virgin wallet and go to
     69 <tt>https://bank.kyctest.taler.net</tt>, register a new account,
     70 and start a withdrawal:
     71 <img src="{{ url_static('images/amlkyc-screenshots/ios-screenshot-2024-08-27-01.png') }}" alt="iOS screenshots to start withdrawal">
     72 </p>
     73 <p>
     74 Next, we authorize at the bank by tapping the “Transfer” button. Go back to the Wallet app with the top left “back button” named “Taler Wallet” (seen in the leftmost screenshot), and find that the withdraw transaction is still pending, since it requires a (standard) KYC (1st withdrawal):
     75 <img src="{{ url_static('images/amlkyc-screenshots/ios-screenshot-2024-08-27-02.png') }}" alt="iOS screenshots to see KYC pending">
     76 <p>
     77 Here we can now tap on the “Open KYC website” button, Fill in the form, and the withdrawal succeeds:
     78 <img src="{{ url_static('images/amlkyc-screenshots/ios-screenshot-2024-08-27-03.png') }}" alt="iOS screenshots to perform KYC process">
     79 </p>
     80 <p>
     81 To trigger the second KYC process, we go back to the bank and withdraw another 55 KYCS:
     82 <img src="{{ url_static('images/amlkyc-screenshots/ios-screenshot-2024-08-27-04.png') }}" alt="iOS screenshots to withdraw more cash">
     83 </p>
     84 <p>
     85 After authorization this again leads to a pending withdrawal transaction:
     86 <img src="{{ url_static('images/amlkyc-screenshots/ios-screenshot-2024-08-27-05.png') }}" alt="iOS screenshots resulting in pending transaction">
     87 </p>
     88 <p>
     89 This can again be resolved by following the KYC procedure:
     90 <img src="{{ url_static('images/amlkyc-screenshots/ios-screenshot-2024-08-27-06.png') }}" alt="iOS screenshots of second KYC procedure">
     91 </p>
     92 <p>
     93 We again submit the form, and the wallet withdraws the amount:
     94 <img src="{{ url_static('images/amlkyc-screenshots/ios-screenshot-2024-08-27-06.png') }}" alt="iOS screenshots of final withdrawal">
     95 </p>
     96 
     97 <p>
     98 The AML officer can view and manage the AML/KYC status of accounts in the exchange's AML backoffice single-page app.
     99 Accounts that are marked as "to investigate" by the automatic processes are listed separately and highlighted.
    100 <img src="{{ url_static('images/amlkyc-screenshots/chromium-2024-08-28-01.png') }}" style="display:block; max-with:800px" alt="Chromium screenshot of the AML backoffice">
    101 </p>
    102 
    103 <h4>Download links</h4>
    104 <p>
    105 The wallet has its own download site <a
    106 href="https://wallet.taler.net/">here</a>.  The exchange, merchant backend,
    107 sync and bank components are distributed via the GNU FTP mirrors.
    108 </p>
    109 <ul>
    110 <li><a href="http://ftpmirror.gnu.org/taler/taler-exchange-0.13.0.tar.gz">http://ftpmirror.gnu.org/taler/taler-exchange-0.13.0.tar.gz</a></li>
    111 <li><a href="http://ftpmirror.gnu.org/taler/taler-exchange-0.13.0.tar.gz.sig">http://ftpmirror.gnu.org/taler/taler-exchange-0.13.0.tar.gz.sig</a></li>
    112 <li><a href="http://ftpmirror.gnu.org/taler/taler-merchant-0.13.0.tar.gz">http://ftpmirror.gnu.org/taler/taler-merchant-0.13.0.tar.gz</a></li>
    113 <li><a href="http://ftpmirror.gnu.org/taler/taler-merchant-0.13.0.tar.gz.sig">http://ftpmirror.gnu.org/taler/taler-merchant-0.13.0.tar.gz.sig</a></li>
    114 <li><a href="http://ftpmirror.gnu.org/taler/taler-wallet-v0.13.1.tar.gz">http://ftpmirror.gnu.org/taler/taler-wallet-0.13.1.tar.gz</a></li>
    115 <li><a href="http://ftpmirror.gnu.org/taler/taler-wallet-v0.13.1.tar.gz.sig">http://ftpmirror.gnu.org/taler/taler-wallet-0.13.1.tar.gz.sig</a></li>
    116 <li><a href="http://ftpmirror.gnu.org/taler/libeufin-0.13.0-sources.tar.gz">http://ftpmirror.gnu.org/taler/libeufin-0.13.0-sources.tar.gz</a></li>
    117 <li><a href="http://ftpmirror.gnu.org/taler/libeufin-0.13.0-sources.tar.gz.sig">http://ftpmirror.gnu.org/taler/libeufin-0.13.0-sources.tar.gz.sig</a></li>
    118 <li><a href="http://ftpmirror.gnu.org/taler/sync-0.13.1.tar.gz">http://ftpmirror.gnu.org/taler/sync-0.13.1.tar.gz</a></li>
    119 <li><a href="http://ftpmirror.gnu.org/taler/sync-0.13.1.tar.gz.sig">http://ftpmirror.gnu.org/taler/sync-0.13.1.tar.gz.sig</a></li>
    120 <li><a href="http://ftpmirror.gnu.org/taler/taler-mdb-0.13.0.tar.gz">http://ftpmirror.gnu.org/taler/taler-mdb-0.13.0.tar.gz</a></li>
    121 <li><a href="http://ftpmirror.gnu.org/taler/taler-mdb-0.13.0.tar.gz.sig">http://ftpmirror.gnu.org/taler/taler-mdb-0.13.0.tar.gz.sig</a></li>
    122 <li><a href="http://ftpmirror.gnu.org/taler/taler-twister-0.9.4.tar.gz">http://ftpmirror.gnu.org/taler/taler-twister-0.9.4.tar.gz</a></li>
    123 <li><a href="http://ftpmirror.gnu.org/taler/taler-twister-0.9.4.tar.gz.sig">http://ftpmirror.gnu.org/taler/taler-twister-0.9.4.tar.gz.sig</a></li>
    124 <li><a href="http://ftpmirror.gnu.org/taler/challenger-0.13.0.tar.gz">http://ftpmirror.gnu.org/taler/challenger-0.13.0.tar.gz</a></li>
    125 <li><a href="http://ftpmirror.gnu.org/taler/challenger-0.13.0.tar.gz.sig">http://ftpmirror.gnu.org/taler/challenger-0.13.0.tar.gz.sig</a></li>
    126 </ul>
    127 <p>
    128 You must first install <a href="https://gnunet.org/">GNUnet v0.22.0</a> or the current Git master to compile GNU Taler 0.13 from source.
    129 </p>
    130 {% endblock body_content %}