You are viewing the technical documentation for Sharetribe. If you are looking for our no-code documentation, see our new help center.

Last updated

Transaction extended data

Transaction extended data allows you to keep sensitive information stored and visible for both transaction parties, as well as add information related to, for example, integrations or analytics.

Table of Contents

Transactions have two types of extended data. Both transaction protected data and metadata are visible for the transaction participants and operators. Protected data can only be updated using transaction process actions. Transaction metadata, on the other hand, can be updated through a privileged transaction process action. In addition, operators can update metadata either through Sharetribe Console or using an Integration API endpoint for updating transaction metadata.

Protected data is updated through the transaction process

Transaction protected data is visible to both transaction parties. It can be updated by revealing the participants' protected data to the transaction, which renders it visible within the transaction. In addition, a transaction process can have an action to update transaction protected data.

Protected data can be used to store any transaction specific information that the users are allowed to modify. Most common use cases include customer or provider contact information, but e.g. for more complex marketplace setups with several related transactions, any related transaction ids can be stored in protected data.

Metadata can be updated from trusted contexts

Transaction metadata is visible to both transaction parties, but it can only be updated by the operator. If your marketplace has integrations to third party services whose information is transaction specific, like discount services, you can store information such as integration references or discount codes or percentages in transaction metadata. Metadata can also be used to tag transactions for analytics purposes.

You need a trusted context for updating transaction metadata – either a privileged transition, or a secure server endpoint. You can also build a separate application to listen to transaction events and update transaction metadata through the Integration API as a reaction to those events.