Luminate Online Web Services provides download synchronization of transaction data for the following transaction types from Luminate Online to the external system:
As with Constituent data, transaction data is accessed within an active synchronization session. Unlike Constituent data, transaction data supports download synchronization only; data cannot be uploaded from the external system to Luminate Online. Additional data associated with transactions may be retrieved using the Query or Find operations.
The ActionAlertResponse type supports the GetIncrementalInserts operation to return the list of Action Alerts taken by constituents during the synchronization window. The Response records contain AlertId fields which can be used with the Query or Find operation to retrieve information about the Action Alert.
The Donation, PersonalFundraisingGift, ProductOrder, TeamRaiserGift, TeamRaiserRegistration, and TicketPurchase transaction types support GetIncrementalInserts, GetIncrementalUpdates, and GetIncrementalDeletes.
Associated types can be retrieved using Query or Find operations to retrieve additional information about these transactions.
Types associated with Donation records include DonationCampaign, DonationForm, and DonationLevel.
The PersonalFundraisingCampaign type is associated with PersonalFundraisingGift records.
Shipment, Item and Product types are be associated with ProductOrder transactions. See Product Orders for additional information.
Types associated with TeamRaiserGift and TeamRaiserRegistration records include TeamRasierEvent, TeamRaiserCompany, TeamRaiserParticipationType and TeamRaiserTeam.
TicketPurchase records are associated with CalendarEvent types.
Discount records may be associated with Payment transactions applied to any of these transaction types.
Refunds for Luminate Online financial transactions have two primary characteristics:
All four combinations of online vs. offline and partial vs. full refunds are available to client administrators using the donation management console. Administrators may issue multiple partial refunds for a single donation. They may also refund the full remaining amount after issuing one or more partial refunds. The system creates a new "refund transaction" for each online refund event; as described below, the amount of all offline refunds can be inferred by comparing the current amount with the original amount.
The GetIncrementalInserts and GetIncrementalUpdates operations may include financial transactions that have been partially refunded. The GetIncrementalInserts operation may include transactions that were both created and partially refunded during the active synchronization window. The GetIncrementalUpdatesoperation may include transactions that were created prior to the start of the active synchronization window, and then partially refunded during the window.
If a partial refund has occurred, then the OriginalAmount field will show how much the donor originally paid, while the Amountfield shows the current amount after all online and offline partial refunds have been applied. Donations that have not been partially refunded have a value of zero for OriginalAmountfield.
The GetIncrementalDeletes operation includes financial transactions that have been fully refunded. The Amount field indicates shows how much was refunded. Note that this may be less than the value of the original transaction if a partial refund was issued first.
Note: You can access full refunds by calling the GetIncrementalInserts operation with a type of Refund.
Financial transaction records downloaded with the GetIncrementalInserts, GetIncrementalUpdates and GetIncrementalDeletes operations only provide a "before and after" view of refund information. A financial transaction record itself does not include details about the date, amount and other processing details for each refund (either partial or full) that administrators may have applied.
To obtain additional details about refunds that occurred during the synchronization window, you can use the GetIncrementalInserts operation to retrieve records of type Refund. Each Refund record provides complete processing details for a single partial or full refund, and includes an OriginalTransactionId field so that you relate the refund back to a donation or other financial transaction. A single financial transaction may be associated with multiple refunds. Note that Refund records are only available for online refunds at this time; you can infer an offline refund if the sum of all online refunds does not add up to the difference between the Amount and the OriginalAmount on a financial transaction.
It is also possible to use the Query operation to retrieve the full set of refund records for a particular financial transaction, regardless of date:
select RefundId, Payment from Refund where OriginalTransactionId = [insert a transaction ID here]
When using this approach, care must be taken to avoid recognizing the same refund multiple times. In most cases it will be more convenient to use GetIncrementalInserts to only retrieve the refunds that have occurred during the active synchronization window.