Taler - Roadmap
Scheduled For Release 2024-09-23
Polishing. Everything for first CH-production that can't wait until the last minute.
- 0009240: [mechant backend] test_merchant_product_creation fails (Bohdan)
- 0009218: [mechant backend] merchant's /private/kyc endpoint does not update KYC status after AMLO decision (Florian Dold)
- 0009159: [wallet (Android App)] Pending deposit to bank account cannot be cancelled (avalos)
- 0009250: [exchange] withdrawal KYC not triggered anymore (Christian Grothoff)
- 0009244: [mechant backend] merchant should refuse order creation when it would trigger a DEPOSIT limit (Christian Grothoff)
- 0009245: [mechant backend] merchant backend should report limits (from /keys) when /kyc-check returns 404/1939 (Christian Grothoff)
- 0009171: [taler-harness] merchant kyc integration test [4h] (Florian Dold)
- 0009222: [wallet (Android App)] interface between Android wallet and other apps should be documented (avalos)
- 0009237: [wallet (Android App)] netzbon reports withdrawing fails on Android (Christian Grothoff)
- 0009186: [wallet (Android App)] use different terminology than "kill" to fail a transaction, warn user about consequences (avalos)
- 0008516: [documentation] need screenshots for DD53 (~2-3 hours) (MarcS)
- 0008727: [wallet (iOS App)] implement DD53 design unification on iOS (MarcS)
- 0009211: [libeufin-bank] Don't fail when transferring to non-existent bank accounts (Antoine A)
- 0008164: [other] Translation of Terms of service and Privacy policy to German, French, Italian [Pre-launch task #33 - Sept] (Stefan)
- 0008163: [other] Terms of service and Privacy policy (NetzBon and Swiss sandbox implementation/Taler Operations AG) [September] (Stefan)
- 0009154: [exchange KYC SPA] generic form (sebasjm)
- 0008567: [deployment and operations] Write Ansible playbook to deploy - Taler exchange (towards the taler-ops server) (dvn)
- 0009007: [wallet (iOS App)] iOS wrongly reports a network failure when wallet-core cancels a long-poll network call (~ 4-6 hours) (MarcS)
- 0009066: [deployment and operations] Cleanup CI artifacts automatically (dvn)
- 0008874: [sandcastle (containerized demo deployment)] host systemd service should have health check for successful provisioning inside container (dvn)
- 0008178: [documentation] specify and document AML SPA configuration in exchange handbook (sebasjm)
- 0008379: [wallet (iOS App)] link payment and refund (~ 1 day) (MarcS)
- 0009135: [wallet-core]
wallet-core should expose to UIs when legi limits will be crossed *before* the transaction is created [2d](Florian Dold) - 0009233: [specification]
bank API version bump needed for c2ec?(Christian Grothoff) - 0009239: [mechant backend]
i can't pay at the merchant with kyc enabled(Christian Grothoff) - 0009241: [exchange]
error after completing kyc(Christian Grothoff) - 0009071: [wallet-core]
implement KYC transfer for deposits [4h](Florian Dold) - 0009030: [wallet-core]
implement getTransactionsV2 API based on materialized transactions(Florian Dold) - 0009235: [wallet (Android App)]
When generating an order, TOS is required, but not asked(avalos) - 0009200: [libeufin-nexus]
Use HAA (download retrievable business transaction formats BTF) to only performs necessary fetches(Antoine A) - 0009000: [libeufin (general)]
Set limits to all requests params(Antoine A) - 0009219: [mechant backend]
merchant's GET /orders/{order_id} long-poller does not wake up with repurchase(Christian Grothoff) - 0009220: [libeufin-bank]
cant create transaction using subject as payto param(sebasjm) - 0009216: [mechant backend]
merchant can't get KYC info from exchange(sebasjm) - 0009221: [wallet (iOS App)]
interface between iOS wallet and other apps should be documented(MarcS) - 0009214: [exchange]
exchange claims bad_kyc_auth=true, but account_pub is the same as merchant_pub(Christian Grothoff) - 0009215: [mechant backend]
merchant /private/kyc endpoint returns wrong payto subject(Christian Grothoff) - 0009166: [cashier (Android App)]
Allow to withdraw money from account with credit limit(avalos) - 0008058: [merchant backoffice SPA]
after KYC is done, SPA page is ugly(sebasjm) - 0008749: [mechant backend]
could not trigger KYC on merchant [4h](sebasjm) - 0008299: [Web site(s)]
French translations for taler-ops.ch(Emmanuel) - 0008833: [wallet-core]
transaction should persist their fail/abort reason [4h](Florian Dold) - 0009213: [wallet-core]
payment transactions should automatically abort when the merchant has KYC problems [2h](Florian Dold) - 0009193: [wallet-core]
write test for repurchase detection long-polling(Florian Dold) - 0008977: [wallet-core]
check debit/credit restriction configured in exchange is being used in wallet-core [4hs](Florian Dold) - 0009174: [exchange]
operation_type=deposit rule gets triggered, but subsequent kyc-check returns 200(Christian Grothoff) - 0009145: [libeufin (general)]
"make dist" in libeufin.git includes entire wallet-core prebuilt branch(Antoine A) - 0009157: [wallet (Android App)]
Wallet does not ask to accept Exchange TOS during p2p payment reception(avalos) - 0008377: [wallet (iOS App)]
repurchase not yet implemented (~ 2-3 hours)(MarcS) - 0009199: [libeufin-nexus]
Nexus ebics-setup should check supported order types and permissions(Antoine A) - 0009144: [libeufin-bank]
libeufin-bank doesn't accept basic auth, causing exchange's test_bank_api_with_nexus to fail(Antoine A) - 0009119: [libeufin-nexus]
Support batching transactions(Antoine A) - 0009117: [libeufin-nexus]
Link bounces using subject parsing instead of bank ID hashing(Antoine A) - 0008754: [libeufin-nexus]
Safer bouncing strategy(Antoine A) - 0009183: [mechant backend]
merchant backend reports unexpected error code when wallet deposits coins with bad exchange base URL(Florian Dold) - 0009194: [wallet-core]
calling getTransactionById returns not found(Florian Dold) - 0008973: [wallet (iOS App)]
In the sharing dialog, not only the payto-URL but also receiver+IBAN+summary should be shared (1 hour)(MarcS) - 0008958: [wallet (WebExtension)]
webext wallet should render alternate QR codes for manual withdrawal, show sharing and banking options(sebasjm) - 0009082: [deployment and operations]
lock down demo with random passwords instead of "sandbox" [4h](Florian Dold) - 0009143: [wallet-core]
error after aml office ask for more info(sebasjm) - 0009147: [sandcastle (containerized demo deployment)]
all new merchant instance should have a default wire transfer deadline of 15 days(Florian Dold) - 0009079: [mechant backend]
Refund delay must be clarified(sebasjm) - 0009149: [merchant-pos-terminal (Android App)]
Order completion: QR code not generated - No payment received v2(avalos) - 0009158: [wallet (Android App)]
Android wallet complains about JSON response for pending withdrawals(avalos) - 0009165: [merchant-pos-terminal (Android App)]
Do not show password in the settings screen (only on password change)(avalos) - 0009167: [cashier (Android App)]
Textfield for amount per default is too small for amounts longer than one digit(avalos) - 0009180: [wallet-core]
checkPeerPushDebit needs scopeInfo parameter(Florian Dold) - 0009181: [wallet-core]
per-exchange insufficient balance details don't properly report maxEffectiveSpendAmount(Florian Dold) - 0009160: [wallet (iOS App)]
Naming of butons when canceling a transaction(MarcS) - 0009151: [wallet (Android App)]
Deposit to bank shows IBAN form instead of x-taler-bank or payto-link(avalos) - 0009088: [deployment and operations]
postgres 16 not supported, which is in latest ubuntu 24.04(Christian Grothoff) - 0009208: [libeufin-bank-ui (SPA)]
withdrawal operation flickering(sebasjm) - 0007838: [challenger]
Add support for rfc7636 to challenger(Bohdan) - 0008986: [merchant backoffice SPA]
Backend not showing error when inserting products with duplicated IDs(avalos) - 0009072: [libeufin-bank-ui (SPA)]
bank account deletion not shown / unsuccessful(sebasjm) - 0009123: [auditor (SPA)]
auditor SPA login form does not allow pasting(sebasjm) - 0009124: [exchange]
add 'new_measures' field to new_rules / LegitimizationRuleSet(Christian Grothoff) - 0009131: [exchange]
exchange /keys should expose more info about AML/KYC hard limits(Christian Grothoff) - 0009138: [exchange KYC SPA]
exchange KYC SPA should have entry point to go to the status of the last KYC process(sebasjm) - 0009155: [mechant backend]
crash in merchant deposit check(Christian Grothoff) - 0009170: [mechant backend]
Creating oder with version field in JSON returns HTTP 400(Christian Grothoff) - 0009191: [deployment and operations]
GNUnet debian package build failing causing other projects to fail(dvn) - 0008530: [libeufin-bank-ui (SPA)]
password manager doesn't fill both password fields when creating accounts(avalos) - 0008834: [mechant backend]
merchant backend should be able to generate PoS config JSON from inventory(nullptrderef) - 0008987: [merchant backoffice SPA]
When adding a product, using a fractional number results in a validation error(sebasjm) - 0009083: [merchant backoffice SPA]
JS sometimes crashes while creating order(sebasjm) - 0009096: [exchange]
exchange should support long-polling for KYC transfer [4h](Christian Grothoff) - 0009098: [exchange]
deposit works despite OPERATION_TYPE=AGGREGATE rule that should trigger AML(Florian Dold) - 0009125: [exchange]
kyc-start fails with assertion(Florian Dold) - 0009126: [exchange]
sort out CONVERTER vs KYC_OAUTH2_CONVERTER_HELPER in KYC/AML configuration [2-4h](Christian Grothoff) - 0009140: [exchange]
Wire auditors helpers exit with status code 6 without further logs(Christian Grothoff) - 0009142: [exchange]
exchange is storing KYC attributes in a weird, undocumented JSON format [4-8h](Christian Grothoff) - 0009156: [exchange AML backoffice (SPA)]
allow AML decisions for unknown accounts(sebasjm) - 0009168: [exchange]
taler-exchange-offline claims master key file does not exist, when in fact it does exist(Christian Grothoff) - 0009169: [specification]
not clear what happen when the merchant gets 451 on /deposit [2d](Christian Grothoff) - 0009172: [exchange]
consider providing API to query the current account public key(Christian Grothoff) - 0009173: [exchange]
KYC requirement during aggregation does not wake up /deposits/... long-poller(Christian Grothoff) - 0009176: [mechant backend]
split of /kyc-check request into helper(Christian Grothoff) - 0009175: [mechant backend]
split of /keys requests into helper(Christian Grothoff) - 0009178: [merchant backoffice SPA]
Languages not changing(sebasjm) - 0009182: [exchange]
unable to specify withdrawal hard limit in the exchange configuration(Christian Grothoff) - 0009184: [mechant backend]
merchant's /private/kyc returns status 204 despite zero deposit limit at exchange(Christian Grothoff) - 0009188: [exchange]
/admin/add-kyctransfer results in OOM error response(Christian Grothoff) - 0009189: [exchange]
exchange /keys should expose tiny_amount(Christian Grothoff) - 0009192: [merchant backoffice SPA]
weird message about "going back to default instance"(sebasjm) - 0009196: [auditor]
problem with shared lib(Christian Grothoff) - 0009085: [wallet (iOS App)]
Wallet cannot reconnect to the internet/finish an operation if briefly disconnected(MarcS) - 0009109: [exchange]
the exchange should provide the kyc-spa location to the wallet(sebasjm)
86 of 108 issue(s) resolved View Issues
Scheduled For Release 2024-09-30
Production MVP
- 0008302: [deployment and operations] Current monitoring tools - Write documentation
- 0008155: [exchange AML backoffice (SPA)] acceptance testing of SPA with MG
- 0009251: [wallet-core] increase max retry timeout for exchange entry when not required by any active tranaction [5h] (Florian Dold)
- 0009243: [wallet-core] When an Exchange is not reachable, wallet-core should return "not reachable" instead of some JSON error (Florian Dold)
- 0009238: [sandcastle (containerized demo deployment)] Provide merchant self-provisioning service on demo.taler.net (oec)
- 0009197: [mechant backend] merchant order creation hangs when the only configured wire account is not supported by the exchange (Florian Dold)
- 0008561: [other] Create welcome package for NetzBon merchants also usable for Taler Operations onboarding [4h] (Christian Grothoff)
- 0009230: [cashier (Android App)] Already cancelled withdrawal can be confirmed during next (independant) withdrawal operation (avalos)
- 0009206: [specification] nirvana for regional currency setup (Christian Grothoff)
- 0009198: [merchant backoffice SPA] when setting up an x-taler-bank-account, only warn about domain names without a dot (sebasjm)
- 0008734: [wallet (WebExtension)] bulk deletion (nullptrderef)
- 0007304: [exchange] should we normalize payto://-URIs in the exchange before hashing? [2d] (Christian Grothoff)
- 0009073: [wallet (iOS App)] Internal Error when aborting and deleting withdrawal in iOS app (MarcS)
- 0009195: [merchant backoffice SPA] merchant backend SPA interface is barely translated into German or French (Stefan)
- 0008062: [auditor] auditor tests are currently not working... [2d] (Christian Grothoff)
- 0009153: [exchange KYC SPA] need specification for KYC SPA requirements by GLS (LeoW)
- 0008035: [libeufin-nexus] get nexus to work with EBICS dialect of Maerki Baumann bank (Antoine A)
- 0009086: [deployment and operations] References to old location of CI debian versioning script (dvn)
- 0008158: [exchange] test, package and upload exchange 1.0.0 to ftp and stable Debian/Ubuntu server [2h] (Christian Grothoff)
- 0008160: [wallet-core] Wallet UI: translation of UIs to DE/FR/IT [August] (Stefan)
- 0008159: [wallet-core] Wallet UI: review of message texts [July] (Stefan)
- 0008247: [deployment and operations] upload final 1.0 webext to Chrome Web Store [1h] (Florian Dold)
- 0007814: [wallet-core] DD37: handle funky deposit txn case where aborting(refresh) might still need to do a refund [8h] (Florian Dold)
- 0008249: [wallet-core] review coinSelection.ts and improve tests [8h] (Florian Dold)
- 0008829: [wallet-core] wallet-core should handle deleted coins in deposit groups gracefully [5h] (Florian Dold)
- 0008843: [wallet (Android App)] Use Hilt injection framework to solve various issues (grote)
- 0008826: [other] pogen should add msgctxt based on the source code (sebasjm)
- 0008351: [Web site(s)] Get screenshots from the latest actual mobile apps and the CHF exchange just before going live (avalos)
- 0008742: [wallet (all platforms)] i18n for all wallets [ongoing] (MarcS)
- 0008777: [libeufin-nexus] confirm assumptions about c52 in zka/gls dialect. (Antoine A)
- 0008017: [other] GNUnet FCFS GNS Registrar Post-mortem (sebasjm)
- 0009163: [wallet-core]
building wallet-core requires root access?(root)
1 of 32 issue(s) resolved View Issues
Scheduled For Release 2024-10-15
- 0008641: [deployment and operations] Take into account Taler "keys" while monitoring with Grafana.
- 0009249: [wallet-core] improve performance of backwards transaction iteration (Florian Dold)
- 0009248: [merchant-pos-terminal (Android App)] Provide tax information in Point-of-Sales app (grote)
- 0009232: [libeufin-bank] modify wopid/confirm endpoint to allow client to provide amount at this time (Antoine A)
- 0009217: [mechant backend] account identification in /private/kyc (Christian Grothoff)
- 0009209: [exchange] reserves not closed at Datenspuren (Christian Grothoff)
- 0009203: [exchange] backends should probably not start if database version is outdated (Christian Grothoff)
- 0009055: [merchant backoffice SPA] Merchant SPA is not mobile-friendly (nullptrderef)
- 0009053: [exchange] add support for sanction lists [5d] (Christian Grothoff)
- 0009190: [wallet-core] Check P2P-Expirations more often (Florian Dold)
- 0009019: [specification] clarify usage of currency specification (avalos)
- 0009033: [wallet (Android App)] Investigate wallet app performance (avalos)
- 0008526: [wallet-core] parsing taler:// and payto:// should also get errors (sebasjm)
- 0008753: [mechant backend] Error messages in Merchant backend not very useful (sebasjm)
- 0007903: [wallet-core] expose details about the amount lost (or final effective cost) after aborting transactions [16h] (Florian Dold)
- 0008848: [wallet-core] hide network errors for refresh transactions outside dev mode, show instead in dependent transactions [4h] (Florian Dold)
0 of 16 issue(s) resolved View Issues
Scheduled For Release 2024-11-15
Last-minute changes for GLS public beta
- 0009141: [auditor (SPA)] Auditor SPA (reserve) reporting is missing important values (Florian Dold)
- 0009032: [wallet (WebExtension)] review labels on transaction details screen (sebasjm)
- 0009121: [auditor (SPA)] remove *some* "suppress" buttons (sebasjm)
- 0007273: [exchange] taler-bank-benchmark should be able to launch libeufin [4h] (Christian Grothoff)
- 0009049: [exchange] fakebank: support Extended Wire Gateway API (Christian Grothoff)
- 0009060: [libeufin-nexus] finish support for Magnet bank core banking (Antoine A)
0 of 6 issue(s) resolved View Issues
Scheduled For Release 2025-01-15
Open bugfest
- 0009027: [exchange] expose measures that have been triggered to AML staff [1d]
- 0008740: [wallet-core] wallet core should return more specific error codes for failed HTTP requests [scope-unclear] (Florian Dold)
- 0009187: [exchange KYC SPA] export information about context requirements for each KYC form (sebasjm)
0 of 3 issue(s) resolved View Issues
Scheduled For Release 2025-03-15
- 0009048: [exchange] introduce a default check and support vATTEST API [4h]
0 of 1 issue(s) resolved View Issues
Scheduled For Release 2025-04-15
0 of 1 issue(s) resolved View Issues
Scheduled For Release 2025-05-15
Last changes before public launch
0 of 2 issue(s) resolved View Issues
Scheduled For Release 2025-06-15
- 0008899: [mechant backend] merchant backend should support bearer token authentication when talking to the bank
0 of 1 issue(s) resolved View Issues
Scheduled For Release 2025-07-15
0 of 1 issue(s) resolved View Issues
Scheduled For Release 2025-08-15
Features that are not in scope for 1.0 but we still want to keep track of.
- 0008443: [other] upgrade to ES2023 with latest QuickJS
- 0009017: [other] test exchange business shutdown procedure, support alert in wallets
- 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.
- 0006399: [libeufin-nexus] review and document date/time/timezone handling
- 0007592: [documentation] libeufin-sandbox implementation of Taler Bank Access API may omit HTTP status codes.
- 0005962: [libeufin-nexus] find out details about EBICS case sensitivity
- 0007507: [libeufin-sandbox] EBICS management spans two API routes.
- 0006698: [libeufin (general)] general code cleanup required
- 0006547: [libeufin-nexus] Offer raw EBICS upload for any message.
- 0005955: [libeufin (general)] use EBICS return codes from EBICS spec, make sure correct codes are returned
- 0006962: [libeufin (general)] CAMT reports need more structure to specify negative balances.
- 0007569: [libeufin-sandbox] EBICS error codes should be fetched from the enum defined in Util.
- 0006243: [libeufin-sandbox] sandbox filtering on EBICS date range is missing in C53 requests
- 0006364: [libeufin (general)] Comments style.
- 0007116: [libeufin-nexus] payment bouncing fee should be configurable
- 0008988: [merchant backoffice SPA] Better handling of large images in product creation (avalos)
- 0008916: [libeufin-bank] Idle logout of demo bank website (Antoine A)
- 0007662: [libeufin-bank] error does not provide the field where the validation is made (Antoine A)
- 0007721: [sandcastle (containerized demo deployment)] Do not use pip3 with --break-system-packages (Florian Dold)
- 0009001: [libeufin (general)] Abort early when a user cancel it's request (Antoine A)
- 0007339: [wallet (WebExtension)] withdrawal triggered on insufficient balance does not work in demo (due to fees) (Florian Dold)
- 0006664: [documentation] clarify normalization algorithm of contract terms and backup blob (Florian Dold)
- 0005973: [libeufin-bank] report more information about a user's state (Antoine A)
- 0008877: [deployment and operations] Make CI containers use ramdisk/tmpfs [estimate: 5h] (dvn)
- 0008827: [wallet (Android App)] Fastline app description translation missing on Weblate (avalos)
- 0007598: [wallet-core] review and revise backup APIs
- 0008033: [other] i18n langs should not be part of the js bundle
- 0008662: [wallet-core] implement background task to validate future exchange denominations / signing keys early (Florian Dold)
- 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
- 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.
- 0009038: [mechant backend] fix category CRUD api
- 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
- 0008761: [mechant backend] Merchant backend instances for Woocommerce and Joomla
- 0008964: [wallet (Android App)] implement mock banking app for Android to demonstrate wallet integration (avalos)
- 0008995: [mechant backend] consider adding timing information to PoS confirmation codes
- 0008137: [Merchant frontends (Python3)] simplify merchant frontend order creation (sebasjm)
- 0008901: [wallet (Android App)] Create Buildbot test/deployment pipeline for the Android wallet (and other apps) [estimate: 8h] (avalos)
- 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
- 0007949: [specification] unified set of parameters for endpoint with pagination
- 0007448: [wallet-core] wallet operation that receive amount in the request should specify if the amount include fee (sebasjm)
- 0009093: [wallet (WebExtension)] show spinning wheel in webextension wallet when waiting for background task (sebasjm)
- 0009229: [wallet (Android App)] Allow to enter Taler-URI instead of scanning QR-code (avalos)
- 0009177: [merchant backoffice SPA] guide the merchant trought the bank account activation (sebasjm)
- 0009225: [wallet-core] consider adding wallet feature to upload diagnostics for last $N transaction to service provider after user consent (Florian Dold)
- 0009224: [Web site(s)] add list of exchange operators to web site (Stefan)
- 0008651: [merchant-pos-terminal (Android App)] Refund doesn't show in payment history (grote)
- 0007948: [merchant backoffice SPA] add pagination API for inventory management (nullptrderef)
- 0008989: [merchant backoffice SPA] Better pagination in merchant SPA (nullptrderef)
- 0009089: [deployment and operations] remove netzbon relicts from main.sh (avalos)
- 0008586: [Web site(s)] Weblate Spanish translation - Taler Systems - 0% (avalos)
- 0008253: [documentation] Translation into Spanish of tutorial-videos.git (avalos)
- 0009067: [wallet (WebExtension)] importing a function breaks the taler support (sebasjm)
- 0009081: [wallet (Android App)] Missing taxes information for order (avalos)
- 0009087: [deployment and operations] CI helper script broken in some projects (dvn)
- 0009100: [wallet (WebExtension)] Styling in "GET DIGITAL CASH" flow is inconsistent (nullptrderef)
- 0009080: [wallet (WebExtension)] Missing taxes information for order (Florian Dold)
- 0009050: [wallet-core] Implement checkDeposit with gros/net switch (Florian Dold)
- 0006588: [wallet-core] wallet-core should support range queries for the transactions list (sebasjm)
- 0008775: [wallet-core] consider allowing all non-final wallet-core states to be suspended/resumed (Florian Dold)
- 0008748: [wallet-core] Transactions should always include an Exchange info [2h] (Florian Dold)
- 0007558: [qtart] bundle TLS CA certs and re-enable TLS peer+host verification for libcurl HTTP client implementation (Florian Dold)
- 0009028: [wallet-core] Fee computing should accept an optional bool 'amountIsNet' parameter (Florian Dold)
- 0008280: [specification] update dd53 with the behavior after payment (MarcS)
- 0008680: [deployment and operations] CI projects not always picking up latest nightly packages (dvn)
- 0008428: [sandcastle (containerized demo deployment)] sandcastle-ng should use nightly pacakges instead of compiling [estimate: 3h] (dvn)
- 0008652: [merchant-pos-terminal (Android App)] same amounts can have different fees (grote)
- 0008440: [Web site(s)] Add news section on the NGI Taler page to have links to news items related to the project (hga3)
- 0008406: [wallet (iOS App)] Let the user copy the DB to the public folder (MarcS)
- 0008665: [Web site(s)] Event list (hga3)
- 0008642: [specification] design document for extend access token API (sebasjm)
- 0008842: [wallet (WebExtension)] add support for safari (sebasjm)
- 0008688: [wallet-core] wallet doesn't validate exchange signing keys, doesn't use them much [estimate: 5h] (Florian Dold)
- 0008006: [wallet (WebExtension)] Accessibility Taler demo website (sebasjm)
- 0008687: [documentation] Taler Ops WWW uses Bitmaps (PNGs) where SVGs would be more applicable (nullptrderef)
- 0009018: [documentation] document (new) NFC communication approach between apps (avalos)
- 0007981: [libeufin-bank-ui (SPA)] pressing enter should move to the next field (sebasjm)
- 0007698: [qtart] qtart should support opening a unix domain socket for the daemonized wallet (Florian Dold)
- 0008319: [libeufin-nexus] Unify Depo/Nexus schema and use a common wire gateway implementation (Antoine A)
- 0008947: [libeufin-bank-ui (SPA)] fix public accounts page (sebasjm)
- 0007854: [qtart] strip absolute pathname from stacktraces (sebasjm)
- 0008538: [wallet-core] consider removing exchange details pointer in the wallet-core DB (Florian Dold)
- 0008767: [wallet (WebExtension)] observavility events: add a filter to show events trigger by actions called in the current screen. [6hs] (sebasjm)
- 0009014: [libeufin-bank-ui (SPA)] export activity log (sebasjm)
- 0009025: [libeufin-bank] Support enforcing token authentication (Antoine A)
- 0009026: [libeufin-bank] Support memory-hard password hashing method (Antoine A)
- 0008488: [deployment and operations] investigate git hook to avoid submodule rewind (sebasjm)
- 0008515: [qtart] upgrade to 2024-01-13 release of QuickJs [estimate: 16h] (avalos)
- 0008954: [release] Non-systemd reliance (nullptrderef)
- 0008963: [wallet (iOS App)] implement mock banking app for iOS to demonstrate wallet integration (MarcS)
- 0008999: [libeufin-bank] Set limits to all variable size user inputs (Antoine A)
- 0008546: [specification] design new wallet onboarding screen (MarcS)
- 0008633: [specification] specify metrics and health checks we want for Taler server-side components [estimate: 6h] (Florian Dold)
- 0008524: [qtart] resolve include path issues in QuickJS-rt.xcodeproj (MarcS)
- 0008866: [wallet-core] consider garbage-collecting expired merchant payment transactions in state `dialog(proposed)` (Florian Dold)
- 0008231: [exchange] Update README in exchange (oec)
- 0008594: [wallet-core] do consistency checks when updating denominations (Florian Dold)
- 0008519: [merchant backoffice SPA] add test bank account button (sebasjm)
- 0008682: [wallet (WebExtension)] WebExtension on chrome spell-checks entered taler://-URIs (sebasjm)
- 0008248: [wallet-core] get wallet-core codebase ready for code review [60+h] (Florian Dold)
- 0008690: [wallet-core] reinstate balance from denom-loss transactions when denomination becomes available again (Florian Dold)
- 0008589: [wallet-core] do GANA pass over wallet-core [estimate: 12h] (Florian Dold)
- 0007988: [wallet-core] clean up TypeScript declarations and parsers for protocol types (Florian Dold)
- 0008982: [wallet-core] refactor DB transactions [5+d] (Florian Dold)
- 0008980: [deployment and operations] lcov.taler.net is very outdated (dvn)
- 0008437: [wallet-core] implement tests for transaction filtering [estimate: 3h] (Florian Dold)
- 0008258: [wallet-core] consider providing fluent interface for amount/date types, review date and amount type hierarchy [12h] (Florian Dold)
- 0007916: [wallet-core] support STEFAN parameters [estimate: 20h] (Florian Dold)
- 0008112: [mechant backend] Merchant security review (fefe)
- 0008384: [wallet (iOS App)] Localization (MarcS)
- 0008383: [wallet (iOS App)] complete accessibility (MarcS)
- 0008711: [libeufin-nexus] get nexus to work with EBICS dialect of Raiffeisen bank (Antoine A)
- 0008543: [wallet (Android App)] Implement wallet-core integration tests as unit/UI tests. (avalos)
- 0008942: [libeufin-bank-ui (SPA)] check /config when doing a request to account-info-endpoint returns 400 [4hs] (sebasjm)
- 0009020: [wallet (Android App)] Unify progress bar handling (avalos)
- 0008923: [wallet (Android App)] allow retrying after scanning (peer-push-credit) QR code (avalos)
- 0008922: [wallet (iOS App)] allow retrying after scanning (peer-push-credit) QR code (MarcS)
- 0008859: [mechant backend] it should honor age restriction from template (oec)
- 0009004: [documentation] document wallet-browser integration (sebasjm)
- 0008769: [specification] document possible error codes in wallet-core API docs (Florian Dold)
- 0009010: [libeufin-nexus] Payments status API (Antoine A)
- 0008476: [documentation] regio: improve user manual with detailed steps after installation (Stefan)
- 0008881: [wallet-core] add better/high-level wallet-core request to check B-i withdrawal status (Florian Dold)
- 0008868: [wallet-core] consider throttling concurrency in shepherd and refresh groups [3h] (Florian Dold)
- 0007593: [qtart] implement TALER_WALLET_destroy (avalos)
- 0008943: [wallet-core] integration test for recoup-refresh is incomplete (Florian Dold)
- 0008894: [wallet (iOS App)] Pull-to-Refresh (if no pending transactions exist) (MarcS)
- 0006721: [libeufin-nexus] consider a way to synchronize the row_id with the TWG (Florian Dold)
- 0007868: [wallet-core] recoup transaction not spec'ed in DD37 (Florian Dold)
- 0008624: [libeufin-bank-ui (SPA)] need account setup meta-SPA (sebasjm)
- 0008710: [wallet-core] validate exchange coin history [estimate: 8h] (Florian Dold)
- 0008268: [wallet-core] consider surfacing more information about transaction-related retries to UIs (Florian Dold)
- 0008134: [wallet-core] wallet-core should use typed HTTP client implementations [estimate: 20h] (Florian Dold)
- 0006565: [wallet-core] wallet should try recoup when payment fails with certain error codes (Florian Dold)
- 0007951: [merchant backoffice SPA] make merchant backend truly multi-currency capable (sebasjm)
- 0008614: [libeufin-bank] allow different fee classes for cashout (Antoine A)
- 0007848: [wallet-core] wallet-core should return maximum expiration time for purse based on available coins (Florian Dold)
- 0008576: [wallet-core] handle change of master public key (as well as currency, fees, ...) gracefully [estimate: 8d+] (Florian Dold)
- 0008375: [taler-harness] implement test for exchange that changes its currency (Florian Dold)
- 0007855: [wallet-core] Timestamp of withdrawal transaction should be updated to the time the withdrawal really happens (Florian Dold)
- 0008014: [wallet-core] optimize denomination selection by using denomination families (Florian Dold)
- 0008441: [wallet-core] wallet-core should long-poll withdrawal operation *and* reserve at the same time (Florian Dold)
- 0008378: [wallet (iOS App)] Payment: Detail view should show deadlines (MarcS)
- 0008366: [wallet-core] add support for recurring payments (Florian Dold)
- 0008337: [specification] Review/revise Section 4.4 of DD35 (Florian Dold)
- 0008318: [wallet-core] Improve the security of P2P send (Florian Dold)
- 0008310: [libeufin-nexus] does ebics-submit support DB notification? (Antoine A)
- 0007998: [wallet-core] Accountless registration broken repurchase detection for GNS delegations (Florian Dold)
- 0008029: [merchant backoffice SPA] when showing order details, SPA should update when order status changes (sebasjm)
- 0008271: [merchant backoffice SPA] merchant backend SPA detail view page for an order does not long-poll (sebasjm)
- 0008270: [wallet (WebExtension)] currency is not sticky (sebasjm)
- 0008259: [wallet-core] move out SPA from wallet-core repo (sebasjm)
- 0008232: [other] tooling to remove duplicated config options (oec)
- 0008172: [libeufin-bank-ui (SPA)] import payto URI should allow QR codes (sebasjm)
- 0008073: [specification] Age restriction support in GNU Taler (oec)
- 0007278: [exchange] Common handling of age restriction verification for withdraw and reward needed (oec)
- 0008074: [wallet-core] Add support for age-withraw in wallet-core (oec)
- 0008059: [libeufin-bank-ui (SPA)] new wire transfers do not show in SPA until explicit 'reload' (sebasjm)
- 0007881: [wallet (WebExtension)] make Wallet Web Extension compatible with Tor private browsing (sebasjm)
- 0007997: [libeufin-bank] user should create admin account to setup libeufin bank (Antoine A)
- 0007847: [wallet-core] DoS when all wallet try to refresh coins at the same time (Florian Dold)
- 0007561: [qtart] make taler-wallet-cli runnable under qtart (Florian Dold)
- 0007309: [libeufin-bank-ui (SPA)] improve language switcher integration (sebasjm)
- 0006696: [documentation] discuss better structure for LibEuFin docs (Antoine A)
- 0007807: [documentation] document conventions/guidelines for source-level dependencies (i.e. prebuilt branches and submodules) (Florian Dold)
- 0007434: [wallet (WebExtension)] icons in transaction history unclear (sebasjm)
- 0005953: [libeufin (general)] generate code documentation with Dokka (dvn)
- 0007518: [wallet (WebExtension)] search transaction (sebasjm)
- 0007952: [merchant backoffice SPA] implement dd51 (sebasjm)
- 0006977: [wallet-core] make wallet-core more resistant against node supply chain attacks (Florian Dold)
- 0007806: [wallet (Android App)] Lots of 'complaints' when compiling wallet (avalos)
- 0007699: [wallet-core] wallet should support different types of instructed amounts (before and after fees) (Florian Dold)
- 0006248: [libeufin-nexus] test error handling during subscriber initialization (Antoine A)
- 0007726: [sandcastle (containerized demo deployment)] sandcastle should run services on unix domain sockets instead of ports (dvn)
- 0006259: [libeufin-nexus] error log in database (Antoine A)
- 0005936: [libeufin-sandbox] version / revision / other globals / should be available from context (Antoine A)
- 0007983: [challenger] wallet-core must template generation is lacking (sebasjm)
- 0007978: [wallet-core] store transaction events when changing transaction details (Florian Dold)
- 0007886: [wallet-core] consider adding log categories instead of file-based log tags (Florian Dold)
- 0007780: [taler-harness] taler-harness lint should check exchange ToS markdown syntax (Florian Dold)
- 0007452: [wallet-core] extend GetExchangeTos wallet operation to be reuse for backup or auditor (sebasjm)
- 0007321: [wallet-core] "pnpm install" complains about unmet peer dependencies (sebasjm)
- 0007484: [wallet (WebExtension)] Usability problem with Bitcoin amounts (MarcS)
- 0007485: [wallet (WebExtension)] check navigator.share and share_target for adoption (sebasjm)
- 0006951: [documentation] document state machine for payment process (oec)
- 0009202: [wallet (iOS App)]
Deleting exchange not possible(MarcS)
1 of 220 issue(s) resolved View Issues
Scheduled For Release 2026-04-25
- 0007959: [other] taler-merchant-demos don't support full taler config
- 0007858: [other] consider protocol extensions to shift around fees from customer to merchant
- 0008836: [other] pretix integration does not work well with currency conversion
- 0008648: [wallet (all platforms)] Preconfiguration of purposes
- 0005686: [wallet (WebExtension)] Wallet feature request: silent payments.
- 0008109: [exchange] feature request: reference counting is not atomic (fefe)
- 0008110: [exchange] feature request: library functions should not abort the process (Florian Dold)
- 0006439: [wallet-core] wallet should support Anastasis (avalos)
- 0007316: [wallet-core] Get the 'taler' URI scheme into the HTML spec safe-list
- 0004629: [other] certificates for merchant public keys aren't supported
- 0003946: [wallet-core] storing merchant's key (and more?) in wallet's DB
- 0006954: [merchant backoffice SPA] create sample deployment to test external authentication
- 0007297: [wallet-core] add extension enabled into exchange info/database
- 0007582: [wallet-core] implement user-initiated p2p kyc / KYCed reserve management
- 0006914: [wallet-core] "annual fee for sync service" gets paid by another wallet, original wallet does not update provider status
- 0007433: [wallet-core] wallet does not support invoicing with non-zero purse fees
- 0007677: [wallet-core] consider having a recovery mode for the wallet
- 0007862: [specification] exchange should return some hint about the kyc requirements
- 0007365: [specification] KYC fee is never charged / not speced or implemented
- 0008098: [wallet-core] After b-i-withdrawals, the Exchange should tell wallet-core that a bank supports Taler integration
- 0008333: [libeufin-bank] do not use login name in x-taler-bank (Antoine A)
- 0005830: [mechant backend] implement request tunneling for wallets
- 0007920: [wallet-core] Support for multiple accounts (private KYC, business KYB)
- 0008282: [deployment and operations] different fee structures for demo/test/head
- 0008540: [deployment and operations] automated browser-based testing of the regional currency deployment
- 0008631: [deployment and operations] Fees charged to payer
- 0008784: [deployment and operations] Write documentation - Anastasis backup program
- 0004379: [wallet-core] error handling: exportable proof of e.g. double spending for auditor
- 0007815: [exchange] exchange should have API to give refunds for purses in peer-pull payments
- 0007917: [exchange] change applicablility of refresh fees
- 0007174: [other] document conventions for HTTP Content-Type, consider allowing (or requiring?) document type versioning
- 0003476: [wallet-core] evil exchange testsuite
- 0005912: [e-commerce integrations] update django-payments/saleor plugin
- 0007884: [exchange] exchange should have tooling to check consistency between DB and crypto helpers
- 0007942: [libeufin-nexus] Design multiple bank accounts handling.
- 0006564: [wallet-core] wallet-core API and UX design for auditor management needed
- 0007271: [exchange] exchange-to-exchange wad transfers are not implemented
- 0007467: [sandcastle (containerized demo deployment)] have more than one exchange in demo
- 0008114: [exchange] review GC logic of exchange
- 0005129: [other] suggest to the appropriate standard(s) to add certificate information to XMLHttpRequest
- 0007671: [exchange] replace positional parameter for named parameters in taler-exchange-offline
- 0008909: [mechant backend] merchant templates v2 should provide info about merchant and supported exchanges before instantiating order
- 0008931: [mechant backend] support listing/querying the wire transfer status from the exchange for orders
- 0008933: [mechant backend] consider reporting errors from the exchange in wire transfer checks
- 0006941: [specification] design protocol / business procedure for validating the owner of an order via the nonce (oec)
- 0006843: [merchant backoffice SPA] every input type can be forgetable, handle UI to add checkbox (sebasjm)
- 0007697: [wallet-core] wallet is not GCing denominations (Florian Dold)
- 0006562: [wallet-core] should wallet-core handle major system clock changes gracefully? (Florian Dold)
- 0006556: [wallet-core] have integration tests that mutate signatures to check that implementation checks all relevant signatures (Florian Dold)
- 0008075: [specification] Extensions for GNU Taler (oec)
- 0007270: [exchange] extension support is not implemented everywhere consistently (oec)
- 0008001: [exchange] TEH_extension_post_handler: ensure idempotency (oec)
- 0008077: [specification] Deposit Policy Extensions (oec)
- 0007999: [exchange] Refine policy fulfillment handling (oec)
- 0008076: [specification] Brandt-Vickrey Auctions (oec)
- 0008414: [wallet-core] wallet-core should be able to export the db via the sqlite3 backup functionality [estimate: 5h] (avalos)
0 of 56 issue(s) resolved View Issues