Transactions and Currencies
Generate and manage Transactions and Currencies
Transactions
Transactions are the result of processing the Actions you've encouraged your Members to perform within your incentive and loyalty program.
Transactions can be the result of processing a Single Action in a Rule or a set of Actions - Multi-Action - in a Mission.
In most cases, Transactions are automatically generated when the Action (Rule) Engine processes a Rule or a Mission online, but sometimes - depending on how you configure your Transaction Settings in your Program - you can process them offline in a batch.
Managing Transactions
You can see and manage Transactions directly by selecting any of your Members from the Members tab.
Member's Transactions
The Transactions related list gives you a quick overview of the most important information you need to know, such as:
- Transaction Name: this is an automatically generated reference name that identifies each Transaction uniquely.
- Type: this shows different kinds of existing Transactions depending on their origin and/or purpose, that is, when and why they were created. There are four types of Transactions:
- Adjustment: Transaction that gives or subtracts an amount of a Currency without a Member performing any particular Action.
- Challenge Reward: Transaction created when a Challenge Reward or Mission Reward is granted to a Challenge Member.
- Expiration: Transaction created when Currencies reach their expiration date, if applicable.
- Reversion: Transaction which arises from reversing a previous created Transaction.
- Null (empty): Transaction generated through a Promotion Rule.
- Points: Currencies each Transaction carries when it is processed. Essentially, points and currencies are the same.
- Created Date: the day that the transaction was created.
- Processed: This shows if the Transaction has already been processed () or not. Transactions can be processed either online or offline.
Transaction: Multiple CurrenciesTransactions work with all Currencies.
If you want to review the details of a given Transaction, click on the entry and you can see the elements which generated Currencies for your Member.
Empty Transactions
Transactions can be empty (i.e. with zero currencies) in these scenarios:
- You have a cap that uses the do not reward above set limit mode, and the transaction created surpasses the limit. In this case, it doesn't matter if the Track For Report option is true or false.
- You chose to process your transaction offline and when the system processes them, they don't apply to any incentive and/or segment.
- There is an incentive that awards only instant rewards and this reward is segmented. However, the member does not apply to the segment(s).
- The math that generates the transaction results in 0. This happens, for example, when a rule rewards 5% of an opportunity amount in Dollars, but the amount is 0.
Adjustment Transactions
You can create an Adjustment Transaction whenever you need to increase or decrease the currency balance of an Individual or Organization Member.
For example, imagine a Member who's complaining about receiving a faulty product as part of a Redemption. Apart from replacing the faulty product, you may want to compensate your Member by giving them 100 Points extra. How can you do that? Create an Adjustment Transaction.
To do so, click Members and access the detail page of the Member. On the Transactions related list, click Adjust. For each currency that you're using, enter the amount you want to give to your Member and the expiration date (optional).
You should also add a reason as to why this adjustment is necessary. You can enter a negative number to remove an amount of a currency from a Member, in which case you must leave the expiration date blank. Be careful: the member's balance cannot become negative.

New adjustment
You'll see that the new Transaction is added to the list and running currency totals for the Member are updated.
Note that when you adjust a Transaction, the new Adjustment Transaction is not linked to any processed Action from a Rule or Mission, unlike other types of Transactions.
Adjustment Transactions: Bulk Upload
Sometimes you may need to create several Adjustment Transactions for different Members and doing so manually one by one is time-consuming. For those cases, you can upload all the Adjust Transactions you need in a bulk. For that, just follow the next steps:
Create a .CSV file
First, create a spreadsheet including Members ID, number of Points (or another currency) the Adjust Transaction gives the Member and confirm that is an Adjust by adding TRUE.

Transactions .CSV file
Member ID is an 18-character alphanumeric ID can be found between id= and & in the URL of the Member view page.
Member alphanumeric ID
If you're uploading Adjust Transactions using a Currency different than Points - i.e. Miles - or both, standard Points and your own Currency, make sure you add it as extra column in your spreadsheet:

Transactions .CSV file with Multi Currencies
When ready, save your spreadsheet in Comma-Separated Values (.CSV) format.
Use Data Import Wizard
Now, from Setup, go to Data Import Wizard and click Launch Wizard!.

Data Import Wizard
- For What kind of data are you importing? question, choose Custom Objects tab and scroll down to Transactions.
- For What do you want to do? question, choose Add new records. Complete the
question Which Member field in your file do you want to match against to set the Member lookup field? with Salesforce.com ID. Leave all the other questions in None. - For Where is your data located? question, choose the .CSV file you've created in Create a .CSV file.

Importing Adjust Transactions into Salesforce
Once you've hit Next, confirm your field mapping and click Next again to start the importing process.
Field Mapping
After reviewing your import data, click Start Import. When finished, you'll be redirected to Bulk Data Load Jobs, which will include all the details of the imported job, such as Start and End Time, Total Processing Time, etc.
Bulk Data Load Job details
Using Salesforce Data LoaderIf you're using Data Loader instead of Data Import Wizard, don't forget to:
- Members must be referred by their Field API name.
Reverting Transactions
In case you realize there's been a mistake when giving Currencies to your Members - i.e. a Rule or Mission was processed wrongly, a Member obtained Points by fraudulent activities, etc. - you can revert a specific Transaction.
To do so, first you need to identify which Transaction the Action (Rule) Engine will need to revert. Once you've identified it, just click Revert

Transaction to revert
You'll see that the selected Transaction has a on Reverted and there's no Revert possibility anymore.

Reverted Transaction
Then, another Transaction - of Reversion type - will be generated, thereby substracting the same number of Points involved in the original Transaction.
You cannot revert a Transaction that results from a previous reversion
If you're reverting a transaction that has records related to regular currencies and currencies that generate payout, only the regular ones will be reverted.To revert a currency that generates payout, you must access the payout page, reject it and edit its amount.
Transaction Management Tools
You can customize the Transactions page design by using the applicable Page Settings for Transactions.
Transactions Processing
From your program's settings, you can choose if it is going to process the transactions in a synchronous or asynchronous way, by using the Online Processing field.
Asynchronous processing
If , the transactions and trackers will be processed as soon as the member performs the incentivized actions (i.e. when records are created/edited), but only when the offline transactions and offline trackers batches run, will the member receive the rewards defined in promotions and challenges (i.e. currencies, funds, badges, or instant rewards). These batches run automatically once a day.
So, when the program is set to process the transactions asynchronously (offline), Fielo doesn't spend time evaluating all rules and missions to check if the record created by the member meets their criteria. The system simply checks if there is an active Behavior and Action corresponding to that record's object, if the record corresponds to the Action's condition (if any), creates the transaction/tracker, and flags it as offline to be processed when the batch runs.
This is a great reason why it is a good idea to add conditions when creating an Action: the engine will consume much less storage space in your Org by not creating transactions/trackers related to records that you don't want to incentivize. For example, imagine that you want to incentivize only the closed opportunities; if you add this condition directly in the Action, the engine will not track every opportunity created, only those that are closed.
Synchronous processing
If the program has the Online Processing field , the transactions will be processed synchronously when recorded, that is, the rewards will be given to the member as soon as they perform the incentivized action.
However, note that if the engine needs to process several transactions at the same time and the processing takes over 8 seconds, the system will interrupt the job. Because of this, some records might not be processed and will be marked as is offline. You'll need to manually run the batches to process them or wait until they run automatically (once a day).
If even after going through the asynchronous process the system cannot finish processing all the records, those that are left will be processed the next time the batch runs.
Default limits
- Salesforce's synchronous processing limit: 10.000 milliseconds.
- Salesforce's asynchronous processing limit: 60.000 milliseconds.
- From the limits above, Fielo saves some time to commit everything to the database. When synchronous, it saves 1.000 milliseconds. When asynchronous, 6.000 milliseconds.
- Considering this, the final limit for transaction/tracker processing is 9 seconds and 54 seconds.
It is possible to change this default quantity of seconds that Fielo saves by going to Setup > Custom Settings > Public Settings (FIeloPLT) > Manage > New and creating a new setting. Select the user who will run the batch and define a value in the CPU Time Margin field for them. Essentially, this means that the sync process will use Org's default, while the async will use a different margin.
It is also possible to change the value for the whole Org by editing the Default Organization Level Value, but in this case, the new value will be used both for async and sync processing. This might be an issue because the batch will probably need more time to save the work to the database.
Currencies
Currencies are single units Members can obtain as an outcome for performing specific activities. You can manage and configure Currencies in several ways, and you can use them in Rules and Missions to redeem them for Rewards.
Managing Currencies
You can get a general overview of Currencies directly by selecting any of your Members from the Members tab and accessing the Debits & Credits tab within.
Member's Points
The Points related list gives you a quick overview of the most important information you need to know, such as:
- Point Name: this is an automatically generated reference name that identifies uniquely each Currency or set of Points records the Members obtained when completing a Rule or a Mission.
- Rule: this shows the name of the Rule that grants the Currencies. In the case of Missions, you can also set this to show the Challenge and/or Mission Reward that gives the Currencies to the Member.
- Challenge Reward: this shows which challenge generated that currency.
- Currency: here you can see the name of the currency related to that record.
- Final Amount: this represents the total number of Currencies that the specific record includes.
- Used Points: Currencies that have already been used in redeeming a Reward. Used Points are subtracted from the Total Points record.
- Balance: this displays all Currencies available to be used after subtracting the Used Points and/or the Expired Points (if applicable) from the Total Points. If no Currencies were used or expired, Balance should be exactly the same as Total Points. Only Currencies with status Approved are included in the balance.
- Created Date: displays the date the currency was created.
- Expiration Date: if Currency have an Expiration Mode established, you see the date when the Currency will expire.
- Status: Depending on how you've set Currency, they may have any of the following statuses:
- Pending: Currencies which have been generated and which require Request Point Approval. Note that Currencies with Pending status are not included in the Balance.
- Approved: Currencies which either originally had Pending status and were later approved by the ORG System Administrator, or Currencies which were generated and there is no Request Point Approval required.
- Rejected: Currencies whose initial status was Pending but were not approved by the ORG System Administrator.
Currency details
You can deep-dive into Currency information to find out more about their source, when and how they were used. You can get to this overview just by clicking on the Point Name record you want.
Currency details are also available from the Redemptions tab when choosing a specific Redemption.

Points details
You'll see some of the elements of the Point record, such as:
- Currency: This refers to what kind of Currency this record is giving. By default, it's always Point but it may be set to be another Currency, if applicable.
- Point Name.
- Member: The member who received the currency.
- Status.
- Total Points: This shows the total number of points the Point record gives to the Member.
- Redemption: If applicable, this will show the Redemption where the Currencies were used by the Member.
- Transaction: This displays the Transaction that gave the Currencies.
Updated about 1 year ago
