Instance Transactions
An instance transaction represents an approval or rejection action on a sharing instance. When shared data requires explicit consent or verification — from the data provider or another party — the system creates a transaction that must be resolved before the instance can proceed.
How transactions work
Transactions implement a challenge-response pattern:
- The system generates a unique challenge token for the transaction
- A notification is sent to the approver with the challenge details
- The approver responds — approving, rejecting, or the transaction fails due to a technical issue
- The system records the response along with geolocation data and any biometric verification
Transaction states
Each transaction progresses through a defined set of states:
| State | Meaning |
|---|---|
| Pending | Transaction created, waiting for notification delivery |
| Notification sent | The notification has been delivered to the approver |
| Approved | The approver has accepted the transaction |
| Rejected | The approver has declined the transaction |
| Failed | The transaction could not be completed due to a technical failure |
Biometric verification
Transactions can optionally require biometric or passkey verification using WebAuthn. When this is enabled, the approver must authenticate with a registered credential (such as a fingerprint, face scan, or hardware security key) before the transaction can be resolved. This adds a strong assurance that the person approving the transaction is who they claim to be.
Background processing
Transaction state changes trigger background jobs:
- On creation — the system creates a job to deliver the notification to the approver
- On state change — when the transaction is approved, rejected, or fails, a job is created to process the outcome and propagate any downstream effects
The notification-sent state is handled differently: it does not create a follow-up job, because it is set by the notification system itself. Creating another job at that point would cause an infinite loop.
Authorisation
Transaction visibility follows the parent instance:
- Data providers can see and manage transactions for their own sharing instances
- Access application owners and editors can see and manage all transactions across all instances in their application
This means the receiving organisation can monitor and manage the approval workflow, while data providers can only interact with transactions related to their own submissions.
Related topics
- Instances and Instance Nodes — the sharing events that transactions approve
- Access Applications — the application framework that defines the workflow
- Transaction Details Ledger — recording quantitative transactions independently of approval workflows