You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This PR adds iOS Shortcuts support for quickly creating wallet transactions through App Intents.
Currently, creating a transaction requires opening the app and manually navigating through the transaction flow. This creates friction, especially for quick everyday expenses.
With this change, users can set up an automation that adds an uncategorized transaction to Sossoldi whenever they pay with their phone using NFC. The transaction can then be reviewed and categorized later inside the app.
I think this could be a low-priority feature, but I'd like to merge it (and maybe silently release) to facilitate testing on a physical device through TestFlight.
📱 Changes
Added an iOS AddWalletTransactionIntent (Warning: This is Swift code, which isn't really my strong point...)
Connected the shortcut entry point to the existing transaction flow.
Updated transaction provider handling so shortcut-created transactions can be saved consistently with in-app transactions even without category.
🧪 Testing Instructions
Changes applicable only on iOS
Unfortunately, this feature isn't easily testable on a simulator. You need to install the app on a physical device through Xcode. Then:
Go to Shortcuts -> Automation -> Add
Choose "Wallet"
Select all cards (or only the ones you want to track in Sossoldi) and all categories -> Next
Search for Sossoldi and tap on the "Add Wallet Transaction" intent. Configure it like this:
Save and go buy something 🤣
📸 Screenshots / Screen Recordings (if applicable)
This is a real mobile payment transaction I made. As you can see, an uncategorized transaction appears in Sossoldi with the merchant name for easy recognition.
The iOS intent no longer writes directly to SQLite or duplicates the Dart transaction schema. Instead, it writes a small pending Wallet transaction payload (amount, merchant, card, createdAt) into the app container, and Flutter imports it on app start/resume through the existing transaction repository.
The Dart importer now owns amount parsing, so locale-specific formats such as 1.500 in EU locales are handled correctly. It also preserves refund/credit signs by importing negative amounts as income, keeps Wallet transactions uncategorized and with no associated bank account, and cleans up the pending file after successful import.
Finally, deleting a Wallet-imported transaction no longer crashes when no selected bank account exists.
Added "unassigned" account in transactions accounts tab for transactions not assigned to any account yet. Same for unassigned categories.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🎯 Description
This PR adds iOS Shortcuts support for quickly creating wallet transactions through App Intents.
Currently, creating a transaction requires opening the app and manually navigating through the transaction flow. This creates friction, especially for quick everyday expenses.
With this change, users can set up an automation that adds an uncategorized transaction to Sossoldi whenever they pay with their phone using NFC. The transaction can then be reviewed and categorized later inside the app.
I think this could be a low-priority feature, but I'd like to merge it (and maybe silently release) to facilitate testing on a physical device through TestFlight.
📱 Changes
AddWalletTransactionIntent(Warning: This is Swift code, which isn't really my strong point...)🧪 Testing Instructions
Changes applicable only on iOS
Unfortunately, this feature isn't easily testable on a simulator. You need to install the app on a physical device through Xcode. Then:
📸 Screenshots / Screen Recordings (if applicable)
This is a real mobile payment transaction I made. As you can see, an uncategorized transaction appears in Sossoldi with the merchant name for easy recognition.
untitled.mp4