Taler - Roadmap
Scheduled For Release 2026-03-01
Features that are not in scope for 1.0 but we still want to keep track of.
- 0010139: [wallet-core] Check if nacl-fast.ts is affected by ed25519 verification malleability
- 0006364: [libeufin (general)] Comments style.
- 0006243: [libeufin-sandbox] sandbox filtering on EBICS date range is missing in C53 requests
- 0007569: [libeufin-sandbox] EBICS error codes should be fetched from the enum defined in Util.
- 0006962: [libeufin (general)] CAMT reports need more structure to specify negative balances.
- 0005955: [libeufin (general)] use EBICS return codes from EBICS spec, make sure correct codes are returned
- 0006698: [libeufin (general)] general code cleanup required
- 0005962: [libeufin-nexus] find out details about EBICS case sensitivity
- 0006399: [libeufin-nexus] review and document date/time/timezone handling
- 0009017: [other] test exchange business shutdown procedure, support alert in wallets
- 0009853: [exchange] nginx gives 499 when long polling
- 0009370: [wallet (all platforms)] bank dialects: netzbon
- 0006396: [libeufin-nexus] Implement FinTS
- 0006269: [libeufin-sandbox] sandbox should emit c52/c53 more like real banks do
- 0006893: [libeufin-sandbox] Camt reports should respect time "chunking".
- 0006268: [libeufin-sandbox] sandbox should support balances in c52/c53
- 0007506: [libeufin (general)] Add helpers to generate test data.
- 0006397: [documentation] write a good README(.md) file for LibEuFin
- 0007344: [libeufin-bank] withdraw target unclear
- 0006400: [libeufin-nexus] consider doing faster re-tries for some scheduled operations
- 0006563: [documentation] document recommended rules for wallet's auto-refresh
- 0007509: [documentation] libeufin-sandbox API doc lacks response status codes.
- 0007592: [documentation] libeufin-sandbox implementation of Taler Bank Access API may omit HTTP status codes.
- 0007507: [libeufin-sandbox] EBICS management spans two API routes.
- 0006547: [libeufin-nexus] Offer raw EBICS upload for any message.
- 0007116: [libeufin-nexus] payment bouncing fee should be configurable
- 0009965: [wallet-core] Payment takes 10+ seconds for order with big amounts (Bohdan)
- 0007339: [wallet (WebExtension)] withdrawal triggered on insufficient balance does not work in demo (due to fees)
- 0010124: [specification] include password management / auth reset in dd49
- 0010132: [wallet (WebExtension)] pending tx on top is mixed with the latest transactions (vlada.svirsh)
- 0009949: [merchant backend] Add control to exclude domains and IP-ranges for webhooks
- 0010040: [merchant backend] No possibility to add the tax on order and not on item...
- 0009980: [deployment and operations] consider using ansible-vault instead of home-grown gpg helpers
- 0005973: [libeufin-bank] report more information about a user's state
- 0009884: [exchange] AML programs should receive requested config values from the exchange
- 0006664: [documentation] clarify normalization algorithm of contract terms and backup blob
- 0008740: [wallet-core] wallet core should return more specific error codes for failed HTTP requests [scope-unclear]
- 0009697: [wallet (Android App)] Add bank accounts management shorcut in settings
- 0007886: [wallet-core] consider adding log categories instead of file-based log tags
- 0008268: [wallet-core] consider surfacing more information about transaction-related retries to UIs
- 0008624: [libeufin-bank-ui (SPA)] need account setup meta-SPA
- 0008775: [wallet-core] consider allowing all non-final wallet-core states to be suspended/resumed
- 0009019: [specification] clarify usage of currency specification
- 0009606: [exchange] consider also running AML measure program after form/attribute submission by AML officer
- 0008827: [wallet (Android App)] Fastline app description translation missing on Weblate
- 0008662: [wallet-core] implement background task to validate future exchange denominations / signing keys early
- 0009686: [qtart] add build flag to disable libcurl support in quickjs-tart
- 0009679: [exchange AML backoffice (SPA)] consider supporting multi-nationality / multi-country in risk assessment in VQF 902.4
- 0009615: [merchant backend] Auto-Generate IDs for forms
- 0007598: [wallet-core] review and revise backup APIs
- 0008033: [other] i18n langs should not be part of the js bundle
- 0008468: [deployment and operations] regio: consider configuring a systemd timer to re-run taler-exchange-offline
- 0008004: [wallet-core] wallet core should accept prepare a transaction when there is no network
- 0005972: [libeufin-nexus] Avoid sending signed data before key exchange
- 0006073: [libeufin-nexus] serialize some transaction state to the database
- 0007658: [qtart] support threaded crypto workers
- 0006800: [wallet-core] wallet should support link protocol (for double spend error recovery after restore from backup)
- 0005947: [libeufin-bank] spec and implement proper generation of EBICS Host "OrderID"
- 0007719: [wallet (WebExtension)] withdraw call to action should check if mobile withdrawal has been initiated
- 0006558: [wallet-core] transaction item for "lost coins due to expiration" needed
- 0007298: [wallet-core] wallet should allow optionally specifying (and remembering) sender information for p2p payments
- 0007866: [wallet-core] transactions should keep some history data
- 0007850: [wallet-core] aborting: "revive" or "resurrect" back to pending
- 0006077: [wallet-core] sync support needed in wallet core
- 0006614: [wallet-core] consider using JSON-RPC instead of custom, slightly different format
- 0006505: [wallet-core] define UX and API for "global errors/notifications"
- 0006582: [wallet-core] checking for refunds of a purchase should be possible from within the wallet
- 0006039: [wallet-core] consider using underscores for the "public API" exposed by wallet-core
- 0007841: [specification] merchant should require wallet to accept or reject refund
- 0010122: [specification] form id value should be specified in GANA
- 0010134: [wallet (all platforms)] Abstract away choice of location of DB for UI-devs
- 0010131: [wallet (WebExtension)] there is no button to turn off the camera
- 0009644: [libeufin-bank-ui (SPA)] bank ui should support listing and revoking tokens
- 0009729: [exchange KYC SPA] gracefully handle the "upload too large" case, maybe maximum upload size could be 16 MB
- 0009826: [exchange KYC SPA] support VQF 902.15 (life insurance)
- 0009827: [exchange KYC SPA] support VQF form 902.13 (trusts)
- 0009825: [exchange KYC SPA] support VQF form 902.12 (foundations)
- 0009546: [sandcastle (containerized demo deployment)] deploy up woocommerce in sandcastle-ng
- 0009547: [sandcastle (containerized demo deployment)] deploy up joomla in sandcastle-ng
- 0008302: [deployment and operations] Current monitoring tools - Write documentation
- 0010100: [wallet-core] introduce dialog state for differing withdrawal amount
- 0009702: [exchange] Broken SQL-logic in do_melt skips over nonce-reuse detection, test needed
- 0009693: [wallet-core] clause-schnorr support untested and likely incomplete
- 0009586: [wallet-core] remove obsolete userAttention APIs
- 0007593: [qtart] implement TALER_WALLET_destroy
- 0008710: [wallet-core] validate exchange coin history [estimate: 8h]
- 0008589: [wallet-core] do GANA pass over wallet-core [estimate: 12h]
- 0007988: [wallet-core] clean up TypeScript declarations and parsers for protocol types
- 0007273: [exchange] taler-bank-benchmark should be able to launch libeufin [4h]
- 0008982: [wallet-core] refactor DB transactions [5+d]
- 0007806: [wallet (Android App)] Lots of 'complaints' when compiling wallet
- 0009770: [merchant backend] merchant backend kyc state doesn't wait for longpolling
- 0009814: [taler-harness] harness tests should clean up processes more thoroughly after test failure
- 0009829: [other] move buildPaginatedResult to util in taler-typescript-core.git
- 0009898: [exchange] Parent issue for cleanup tasks post withdraw refactor and new refresh protocol
- 0009901: [exchange] Adapt testing/test_exchange_api_twisted to new melt/reveal API
- 0009899: [exchange] Rewrite exchangedb/test_exchange_db.c
- 0009828: [exchange] Redesign recoup to accomodate for changes in withdraw and refresh API's
- 0006565: [wallet-core] wallet should try recoup when payment fails with certain error codes
- 0007868: [wallet-core] recoup transaction not spec'ed in DD37
- 0009902: [exchange] util: phase out TALER_cs_withdraw_nonce_derive
- 0009828: [exchange] Redesign recoup to accomodate for changes in withdraw and refresh API's
- 0009958: [specification] write a design document on how to render insufficient balance hints
- 0010012: [deployment and operations] demo/test/head fail to start on system reboot
- 0010088: [wallet (Android App)] fully migrate Android app to Jetpack Compose, remove legacy XML code
- 0010082: [specification] design document for (CRDT) incremental sync protocol
- 0010087: [wallet (all platforms)] wallet shows bank accounts as "not verified", even after completing withdraw
- 0009033: [wallet (Android App)] Investigate wallet app performance
- 0009918: [exchange AML backoffice (SPA)] implement VQF-compliant GwG file listing
- 0009917: [exchange AML backoffice (SPA)] AML SPA must be able to create PDF with entire AML file(s)
- 0009963: [qtart] concurrency issue with using JS_GetArrayBuffer?
- 0010025: [merchant backend] merchant backend blocks creation of admin instance when another instance has been created
- 0010052: [wallet (Android App)] Adding new Exchange may fail
- 0010045: [libeufin-bank-ui (SPA)] when the session is expired the login form doesnt redirect to the home
- 0010019: [deployment and operations] provide debug symbols for Ubuntu packages
- 0010029: [wallet (Android App)] allow using wallet with http exchange
- 0010017: [specification] enable automatic monthly transfer to wallet via periodic transfer
- 0009983: [other] AML form definitions should have translated strings inline (e.g. for German VQF forms)
- 0009994: [exchange KYC SPA] improve the double click on link challenge
- 0009987: [exchange KYC SPA] have drill-down component for industry selection in onboarding form
- 0006696: [documentation] discuss better structure for LibEuFin docs
- 0009927: [libeufin (general)] make dist creates non-standard names
- 0009924: [auditor] strange valgrind failure in auditordb plugin
- 0009921: [release] improve check-prebuilt
- 0009761: [wallet (Android App)] android wallet should show kycPaytoHash in dev mode for transaction with pending KYC
- 0009497: [libeufin-bank-ui (SPA)] Taler Bank SPA translation into German [May 2025]
- 0009396: [wallet (iOS App)] Adding a known account during deposit create a navigation maze
- 0008859: [merchant backend] it should honor age restriction from template
- 0009406: [documentation] documentation for various hash codes are lacking details
- 0009388: [documentation] Add semver information to REST-API endpoints
- 0008916: [libeufin-bank] Idle logout of demo bank website
- 0008383: [wallet (iOS App)] complete accessibility
- 0008894: [wallet (iOS App)] Pull-to-Refresh (if no pending transactions exist)
- 0009353: [wallet-core] check denomination revocation logic
- 0008943: [wallet-core] integration test for recoup-refresh is incomplete
- 0009828: [exchange] Redesign recoup to accomodate for changes in withdraw and refresh API's
- 0008384: [wallet (iOS App)] Localization
- 0007448: [wallet-core] wallet operation that receive amount in the request should specify if the amount include fee
- 0008734: [wallet (WebExtension)] bulk deletion
- 0009893: [wallet-core] purge old withdrawal/refresh protocol code from wallet-core
- 0009887: [exchange AML backoffice (SPA)] we need a place for the VQF reporting in the UI
- 0009820: [wallet-core] Inconsistentcy in denominations with and without age restrictions during refresh
- 0009913: [exchange KYC SPA] inline translations for vqf forms in form definitions
- 0009831: [wallet (Android App)] Android wallet should show state and error message for exchange entries
- 0009882: [deployment and operations] use challenger converters from the exchange instead of ansible
- 0009386: [auditor (SPA)] account for bank wire transfer fees (incoming/outgoing)
- 0009141: [auditor (SPA)] Auditor SPA (reserve) reporting is missing important values
- 0009862: [wallet (iOS App)] Copy+paste of paytoUri produces twice percent-encoded string on iOS 18.x
- 0009760: [wallet (iOS App)] iOS wallet should show kycPaytoHash in dev mode for transaction with pending KYC
- 0009835: [wallet-core] peer push payment initiation should fail when exchange entry is not in a ready state
- 0009812: [wallet-core] wallet-core request confirmPay should not wait for payment success
- 0009807: [quality checkpoint] QC wallet protocol version handling
- 0009859: [taler-harness] extend balance threshold test with handling of multiple / subsequent balance thresholds, "verboten" limits
- 0009785: [wallet (all platforms)] Unfinished transactions in history should lead to respective flows
- 0009790: [wallet (WebExtension)] Unfinished transactions in history should lead to respective flows
- 0009670: [wallet (all platforms)] More reactive payment flows flows
- 0009879: [exchange] voluntary measures not implemented
- 0009048: [exchange] introduce a default check and support vATTEST API [4h]
- 0009908: [libeufin-bank-ui (SPA)] consider asking for name in wire transfer form of the libeufin bank
- 0009907: [exchange AML backoffice (SPA)] AML SPA does not show full AML decision impacts in terms of measures
- 0009626: [taler-harness] Add planchet collision tests to harness
- 0009895: [wallet (all platforms)] write DD to harmonize handling of unfinished payment transactions
- 0009896: [wallet-core] muliple pending tx on the wallet
- 0009897: [wallet (all platforms)] Encrypt mobile database
- 0009867: [deployment and operations] rusty does not show up properly on monitoring
- 0009842: [deployment and operations] improve packaging-ng
- 0009837: [wallet-core] consider implementing dev experiment to fake currency specifications
- 0009830: [wallet (Android App)] in Android wallet, user should have to confirm after scanning a dev-experiment QR code
- 0009834: [wallet (all platforms)] wallets should show spinner / animation in pending state
- 0009817: [merchant backend] Backend as a Service (EASE) durch GLS Bank: self-provisioning / Prozess für Passwort Change
- 0009816: [merchant backend] Backend as a Service (EASE) durch GLS Bank: self-provisioning / Validierung von Email Adresse und Telefonnummer
- 0009811: [wallet (all platforms)] Support pagination / infinite scrolling
- 0009818: [documentation] Point-of-Sales App documentation not helpful for setup
- 0007561: [qtart] make taler-wallet-cli runnable under qtart
- 0007698: [qtart] qtart should support opening a unix domain socket for the daemonized wallet
- 0009801: [wallet (all platforms)] Add P2P mailbox payment request support
- 0009802: [mailbox] Mailbox should honor a delivery period
- 0009523: [other] Allow connecting the merchant backend to the bank revenue API via token in URI
- 0009793: [exchange] whe there is a missing attr in the context the exchange doesn't inform about it
- 0009782: [merchant backoffice SPA] The Taler logo at the top of the page is not perfectly centered within the top bar. Instead, it appears to be centered relati
- 0007981: [libeufin-bank-ui (SPA)] pressing enter should move to the next field
- 0008874: [sandcastle (containerized demo deployment)] host systemd service should have health check for successful provisioning inside container
- 0007807: [documentation] document conventions/guidelines for source-level dependencies (i.e. prebuilt branches and submodules)
- 0008829: [wallet-core] wallet-core should handle deleted coins in deposit groups gracefully [5h]
- 0009206: [specification] nirvana for regional currency setup
- 0009774: [wallet-core] Extra property log file entries (1)
- 0006951: [documentation] document state machine for payment process
- 0008232: [other] tooling to remove duplicated config options
- 0008378: [wallet (iOS App)] Payment: Detail view should show deadlines
- 0008319: [libeufin-nexus] Unify Depo/Nexus schema and use a common wire gateway implementation
- 0008881: [wallet-core] add better/high-level wallet-core request to check B-i withdrawal status
- 0009567: [wallet-core] wallet-core should also report pay-merchant transactions in dialog state
- 0009026: [libeufin-bank] Support memory-hard password hashing method
- 0009222: [wallet (Android App)] interface between Android wallet and other apps should be documented
- 0008748: [wallet-core] Transactions should always include an Exchange info [2h]
- 0008868: [wallet-core] consider throttling concurrency in shepherd and refresh groups [3h]
- 0008258: [wallet-core] consider providing fluent interface for amount/date types, review date and amount type hierarchy [12h]
- 0005936: [libeufin-sandbox] version / revision / other globals / should be available from context
- 0007997: [libeufin-bank] user should create admin account to setup libeufin bank
- 0008576: [wallet-core] handle change of master public key (as well as currency, fees, ...) gracefully [estimate: 8d+]
- 0009010: [libeufin-nexus] Payments status API
- 0009081: [wallet (Android App)] Missing taxes information for order
- 0009020: [wallet (Android App)] Unify progress bar handling
- 0008687: [documentation] Taler Ops WWW uses Bitmaps (PNGs) where SVGs would be more applicable
- 0009100: [wallet (WebExtension)] Styling in "GET DIGITAL CASH" flow is inconsistent
- 0008379: [wallet (iOS App)] link payment and refund (~ 1 day)
- 0009749: [wallet (Android App)] Error messages layout implementation
- 0009287: [taler-harness] implement DB migration tests for libeufin (and others) in taler-harness
- 0007903: [wallet-core] expose details about the amount lost (or final effective cost) after aborting transactions [16h]
- 0008248: [wallet-core] get wallet-core codebase ready for code review [60+h]
- 0009593: [wallet-core] Revisit lazy denomination validation logic [1-2d]
- 0009763: [wallet (iOS App)] iOS wallet should show the *raw* amount as the maximum depositable amount
- 0007699: [wallet-core] wallet should support different types of instructed amounts (before and after fees)
- 0008310: [libeufin-nexus] does ebics-submit support DB notification?
- 0008375: [taler-harness] implement test for exchange that changes its currency
- 0009566: [wallet (WebExtension)] iOS wallet should show unconfirmed pay-merchant transactions and allow confirming later
- 0009460: [libeufin-nexus] General EBICS client
- 0009251: [wallet-core] increase max retry timeout for exchange entry when not required by any active tranaction [5h]
- 0008437: [wallet-core] implement tests for transaction filtering [estimate: 3h]
- 0008546: [specification] design new wallet onboarding screen
- 0008633: [specification] specify metrics and health checks we want for Taler server-side components [estimate: 6h]
- 0009500: [libeufin-bank] desire to print to PDF
- 0009542: [wallet (all platforms)] transaction history weirdness
- 0009277: [other] harness should be able to simulate kyc
- 0009696: [wallet-core] support for pending kyc on bank accounts
- 0009654: [wallet-core] add TOPS and NetzBon exchange to builtin exchanges in wallet-core
- 0009276: [exchange] Exchange should expose internal transitions/events on KYC accounts [design-required]
- 0008742: [wallet (all platforms)] i18n for all wallets [ongoing]
- 0008848: [wallet-core] hide network errors for refresh transactions outside dev mode, show instead in dependent transactions [4h]
- 0009699: [wallet (WebExtension)] Warn before forgetting a bank account
- 0009698: [wallet-core] Detect bank account duplicate
- 0007998: [wallet-core] Accountless registration broken repurchase detection for GNS delegations
- 0007916: [wallet-core] support STEFAN parameters [estimate: 20h]
- 0008014: [wallet-core] optimize denomination selection by using denomination families
- 0009595: [wallet (WebExtension)] In the Firefox Wallet, no menu to add a new Exchange in the normal settings.
- 0008172: [libeufin-bank-ui (SPA)] import payto URI should allow QR codes
- 0008270: [wallet (WebExtension)] currency is not sticky
- 0008271: [merchant backoffice SPA] merchant backend SPA detail view page for an order does not long-poll
- 0008029: [merchant backoffice SPA] when showing order details, SPA should update when order status changes
- 0007309: [libeufin-bank-ui (SPA)] improve language switcher integration
- 0007434: [wallet (WebExtension)] icons in transaction history unclear
- 0007518: [wallet (WebExtension)] search transaction
- 0008942: [libeufin-bank-ui (SPA)] check /config when doing a request to account-info-endpoint returns 400 [4hs]
- 0008682: [wallet (WebExtension)] WebExtension on chrome spell-checks entered taler://-URIs
- 0008767: [wallet (WebExtension)] observavility events: add a filter to show events trigger by actions called in the current screen. [6hs]
- 0008642: [specification] design document for extend access token API
- 0009067: [wallet (WebExtension)] importing a function breaks the taler support
- 0009663: [exchange AML backoffice (SPA)] we shoud be able to access the handler directly
- 0009568: [wallet (WebExtension)] webext wallet shows "already claimed" for a short time before showing article after purchase
- 0009642: [merchant backoffice SPA] backend SPA should have option to show raw contract terms on order status
- 0009342: [libeufin-bank-ui (SPA)] Support locked account and token creation 2FA challenges
- 0009551: [exchange KYC SPA] 502 snack bar remains even after error was cleared
- 0008526: [wallet-core] parsing taler:// and payto:// should also get errors
- 0009032: [wallet (WebExtension)] review labels on transaction details screen
- 0009690: [wallet (WebExtension)] Aborting a P2P payment does nothing in the UI
- 0009758: [wallet (WebExtension)] tried to add TOPS exchange to WebExtension and failed
- 0009771: [taler-harness] harness should not use deprecated /instances/admin/* endpoints
- 0009775: [documentation] Write a design document on payment sharing/repurchase/replay from the wallet perspective
- 0009773: [merchant backend] Duplicate bank accounts
- 0009776: [exchange] add support the statistic of many events in the same request
- 0009028: [wallet-core] Fee computing should accept an optional bool 'amountIsNet' parameter
- 0009050: [wallet-core] Implement checkDeposit with gros/net switch
- 0008866: [wallet-core] consider garbage-collecting expired merchant payment transactions in state `dialog(proposed)`
- 0009671: [wallet (iOS App)] internal error on first withdraw...
- 0008134: [wallet-core] wallet-core should use typed HTTP client implementations [estimate: 20h]
- 0008337: [specification] Review/revise Section 4.4 of DD35
- 0009004: [documentation] document wallet-browser integration
- 0009080: [wallet (WebExtension)] Missing taxes information for order
- 0007452: [wallet-core] extend GetExchangeTos wallet operation to be reuse for backup or auditor
- 0009412: [sandcastle (containerized demo deployment)] add a status.html which list all the components with status + version
- 0008594: [wallet-core] do consistency checks when updating denominations
- 0008688: [wallet-core] wallet doesn't validate exchange signing keys, doesn't use them much [estimate: 5h]
- 0008538: [wallet-core] consider removing exchange details pointer in the wallet-core DB
- 0007558: [qtart] bundle TLS CA certs and re-enable TLS peer+host verification for libcurl HTTP client implementation
- 0007855: [wallet-core] All transactions should have a separate "finished" timestamp, sorting should be possible by this finished timestamp
- 0009650: [other] AML forms for trusts (vqf_902_13) and foundations (vqf_902_12)
- 0009557: [wallet-core] consider automatically contacting global/regional exchanges from merchant contract terms
- 0007485: [wallet (WebExtension)] check navigator.share and share_target for adoption
- 0007951: [merchant backoffice SPA] make merchant backend truly multi-currency capable
- 0008963: [wallet (iOS App)] implement mock banking app for iOS to demonstrate wallet integration
- 0009691: [wallet (WebExtension)] Better network issue UI
- 0007978: [wallet-core] store transaction events when changing transaction details
- 0006977: [wallet-core] make wallet-core more resistant against node supply chain attacks
- 0007847: [wallet-core] DoS when all wallet try to refresh coins at the same time
- 0008441: [wallet-core] wallet-core should long-poll withdrawal operation *and* reserve at the same time
- 0008652: [merchant-pos-terminal (Android App)] same amounts can have different fees
- 0007726: [sandcastle (containerized demo deployment)] sandcastle should run services on unix domain sockets instead of ports
- 0009014: [libeufin-bank-ui (SPA)] export activity log
- 0006248: [libeufin-nexus] test error handling during subscriber initialization
- 0006259: [libeufin-nexus] error log in database
- 0009089: [deployment and operations] remove netzbon relicts from main.sh
- 0008690: [wallet-core] reinstate balance from denom-loss transactions when denomination becomes available again
- 0008769: [specification] document possible error codes in wallet-core API docs
- 0007952: [merchant backoffice SPA] implement dd51
- 0007848: [wallet-core] wallet-core should return maximum expiration time for purse based on available coins
- 0008543: [wallet (Android App)] Implement wallet-core integration tests as unit/UI tests.
- 0006588: [wallet-core] wallet-core should support range queries for the transactions list
- 0008651: [merchant-pos-terminal (Android App)] Refund doesn't show in payment history
- 0009093: [wallet (WebExtension)] show spinning wheel in webextension wallet when waiting for background task
- 0007780: [taler-harness] taler-harness lint should check exchange ToS markdown syntax
- 0007321: [wallet-core] "pnpm install" complains about unmet peer dependencies
- 0008318: [wallet-core] Improve the security of P2P send
- 0009720: [sandcastle (containerized demo deployment)] add showDemo in settings
- 0009688: [wallet (Android App)] P2P push not network improve UI
- 0009689: [wallet (Android App)] P2P pull not network improve UI
- 0009565: [wallet (WebExtension)] Webext wallet should show unconfirmed pay-merchant transactions and allow confirming later
- 0009190: [wallet-core] Check P2P-Expirations more often
- 0008988: [merchant backoffice SPA] Better handling of large images in product creation
- 0009700: [wallet (Android App)] Allow scanning QR code from file
- 0005953: [libeufin (general)] generate code documentation with Dokka
- 0009721: [deployment and operations] Improve Taler systemd service security
- 0009249: [wallet-core] improve performance of backwards transaction iteration
- 0008178: [documentation] specify and document AML SPA configuration in exchange handbook
- 0009516: [merchant backoffice SPA] Verification OTP
- 0009442: [libeufin-bank-ui (SPA)] cash acceptor flow
- 0009508: [merchant backoffice SPA] Delete confirmation
- 0007484: [wallet (WebExtension)] Usability problem with Bitcoin amounts
- 0006721: [libeufin-nexus] consider a way to synchronize the row_id with the TWG
- 0008954: [release] Non-systemd reliance
- 0007854: [qtart] strip absolute pathname from stacktraces
- 0008253: [documentation] Translation into Spanish of tutorial-videos.git
- 0007881: [wallet (WebExtension)] make Wallet Web Extension compatible with Tor private browsing
- 0009562: [specification] Add a batch transfer endpoint to the Wire Gateway API
- 0009248: [merchant-pos-terminal (Android App)] Provide tax information in Point-of-Sales app
- 0009121: [auditor (SPA)] remove *some* "suppress" buttons
- 0009187: [exchange KYC SPA] export information about context requirements for each KYC form
- 0009476: [wallet (Android App)] TOTP authenticator app with support for Taler amounts
- 0008947: [libeufin-bank-ui (SPA)] fix public accounts page
- 0009018: [documentation] document (new) NFC communication approach between apps
- 0008006: [wallet (WebExtension)] Accessibility Taler demo website
- 0008842: [wallet (WebExtension)] add support for safari
- 0008586: [Web site(s)] Weblate Spanish translation - Taler Systems - 0%
- 0008901: [wallet (Android App)] Create Buildbot test/deployment pipeline for the Android wallet (and other apps) [estimate: 8h]
- 0008964: [wallet (Android App)] implement mock banking app for Android to demonstrate wallet integration
- 0008137: [Merchant frontends (Python3)] simplify merchant frontend order creation
- 0008899: [merchant backend] merchant backend should support bearer token authentication when talking to the bank
- 0009315: [auditor] need tests for auditor KYC support
- 0008995: [merchant backend] consider adding timing information to PoS confirmation codes
- 0009747: [merchant backend] SPA should warn when adding a bank account of a type that no trusted exchange supports
- 0009746: [merchant backend] improve error reporting when order can't be created due to wire method mismatch
- 0009441: [documentation] Protocol version missing in public documentation
- 0009247: [quality checkpoint] When ToS change in the Exchange, the user must be notified
- 0009710: [exchange] post-kyc redirect is suboptimal
- 0009662: [deployment and operations] set up ufw for persistent blocking on firefly
- 0009703: [exchange] taler-exchange-wire-gateway-client --debit-history fails with 404
- 0009706: [specification] expose instance settings e-mail via contracts to customers
- 0009668: [exchange] Potentially change the SQL versioning framework to use schema scopes for versions
- 0009658: [exchange] expose customer statistics to AML SPA
- 0009627: [exchange] bootstrap fails when submodules were renamed, should improve error message
- 0009611: [merchant backend] Increased products images size support: From 1MB to 5MB
- 0009573: [exchange] exchange kyc-check should support long-polling for withdrawals over specified amount
- 0009510: [merchant backend] Products filtering, sorting and searching
- 0008761: [sandcastle (containerized demo deployment)] sandcastle should integrate Woocommerce and Joomla demonstrators
- 0009502: [deployment and operations] migrate weblate to firefly
- 0009457: [merchant backend] scary comment about double payment
- 0009453: [merchant backend] enable data export
- 0009436: [auditor] early_aggregation table lacks REST API for inspection
- 0009316: [auditor] pending deposits not exposed via REST API
- 0009433: [auditor] auditor database garbage collection not implemented
- 0009419: [exchange] some exchange database interactions lack transaction scopes
- 0009373: [exchange] batch_ensure_coin_known not yet used [2d]
- 0009407: [exchange] definition for various hash codes are lacking details
- 0009049: [exchange] fakebank: support Extended Wire Gateway API
- 0009207: [merchant-pos-terminal (Android App)] QR code generation reported as 'too slow'
- 0008785: [deployment and operations] Update taler repository - Can't upgrade packages on anastasis.lu
- 0008036: [Web site(s)] CSP shared between many *.taler.net-sites, should be made specific to each subdomain
- 0009091: [deployment and operations] [regional currencies] required answers should be marked as such.
- 0008858: [deployment and operations] Warning when git pushing, related with Python version
- 0008229: [sandcastle (containerized demo deployment)] systemd timer to update exchange keys via taler-exchange-offline
- 0008770: [specification] add taler error code in merchant/exchange spec
- 0007707: [wallet-core] wallet should not allow certain operations if offline
- 0007426: [Web site(s)] "public-accounts" link points at bank's homepage
- 0007960: [documentation] taler-merchant-demos doesn't document config options
- 0007985: [libeufin (general)] Not possible to generate unindented XML strings.
- 0007950: [specification] add subject search to the transfer list endpoint
- 0010153: [merchant backoffice SPA] list all the ui screens that require support for multi-currency (vlada.svirsh)
- 0009885: [exchange] AML programs should validate the FORM_ID and form attributes (Florian Dold)
- 0010148: [documentation] Merge all pot files in /taler-tutorials into one file for Weblate (Bohdan)
- 0009329: [wallet-core] wallet-core should support shopping URL (avalos)
- 0010117: [wallet-core] Define 4 values for shortcut amounts (avalos)
- 0009007: [wallet (iOS App)] iOS wrongly reports a network failure when wallet-core cancels a long-poll network call (~ 4-6 hours) (MarcS)
- 0010137: [libeufin-nexus] implement taler integration against cyclos (Antoine A)
- 0010038: [wallet (Android App)] Sending money NFC option hidden from user (vlada.svirsh)
- 0008406: [wallet (iOS App)] Let the user copy the DB to the public folder (Florian Dold)
- 0009800: [wallet (all platforms)] Allow alias registration and discovery through taler directory. (schanzen)
- 0009991: [libeufin (general)] Disable admin wire gateway API endpoints in production (Antoine A)
- 0009961: [merchant backend] Implement unclaim endpoint for merchant (Bohdan)
- 0008440: [Web site(s)] Add news section on the NGI Taler page to have links to news items related to the project (hga3)
- 0008476: [documentation] regio: improve user manual with detailed steps after installation (vlada.svirsh)
- 0009762: [wallet (WebExtension)] webext wallet should show kycPaytoHash in dev mode for transaction with pending KYC
- 0009869: [exchange KYC SPA] form should only include valid fields (sebasjm)
- 0009838: [wallet-core] Clean P2P lifecycle (Antoine A)
- 0009823: [wallet-core] Refactoring and cleaning (Antoine A)
- 0009824: [wallet-core] Refactor transaction common logic (Antoine A)
- 0009822: [wallet-core] Refactor http impl (Antoine A)
- 0008922: [wallet (iOS App)] allow retrying after scanning (peer-push-credit) QR code (MarcS)
- 0008923: [wallet (Android App)] allow retrying after scanning (peer-push-credit) QR code (avalos)
- 0009645: [libeufin-bank] Lock account on password auth failure (Antoine A)
- 0008160: [wallet-core] Wallet UI: translation of UIs to DE/FR/IT [post-1.0] (Stefan)
- 0008711: [libeufin-nexus] get nexus to work with EBICS dialect of Raiffeisen bank (Antoine A)
- 0009422: [exchange] TALER_EXCHANGE_check_coin_conflict_ was never implemented (oec)
- 0009224: [Web site(s)] add list of exchange operators to web site (Stefan)
- 0008280: [specification] update dd53 with the behavior after payment (MarcS)
- 0008112: [merchant backend] Merchant security review (fefe)
- 0008073: [specification] Age restriction support in GNU Taler (oec)
- 0008074: [wallet-core] Add support for age-withraw in wallet-core (oec)
- 0008680: [deployment and operations]
CI projects not always picking up latest nightly packages(dvn)
1 of 405 issue(s) resolved View Issues