PosiGive v.0149 - APR 29, 2025

PosiGive v.0149 - APR 29, 2025

What’s New

 

  • In the Dynamic Lookup Field, any records that contain the search keyword will now display as a search result, regardless of the keywords used.

  • The following fields have been added to the Gift Transaction.

    • Idempotency Key- A unique identifier included in the API request that helps prevent potential duplicate charges.

    • Transaction Reference ID - Unique transaction reference identifier that will be useful for linking the Gateway Transaction record.

  • On the Bank Statement Line object, a new picklist labeled Processing has been added to the Reconciliation Status field. Additionally, the Recalculate and Reconcile action buttons have also been added to the same object.

  • An apex trigger (before save) is created for the Gift Transaction object. When a Gift Transaction is created and the Idempotency Key is empty, it will call the global invocable apex class that generates an idempotency key from PosiPay. It will populate the Gift Transaction’s Idempotoncy Key field base on the generated idempotency key.

    • In updating Gift Transaction record and criteria is met (check below), it will call the global invocable apex class that generates an idempotency key from Posipay and populates the Gift Transaction’s Idempotency Key field based on the generated idempotency key.

      • 1. Payment Instrument is change

      • 2. Payment Method = Credit Card OR BECS Debit OR ACH

      • 3. Status = Unpaid OR Pending OR Failed

  • The Scheduled Donation autolunched flow is updated to support the Invoice API. When calling the invocable Apex class, the Payment Method ID from the Gift Transaction’s Payment Instrument is passed.
    If the Idempotency Key is empty, a new one is genarated via PosiPay, passed to API, and saved back to the Gift Transaction. If the key already exists, it’s still passed to the API but the record is not udpated.

  • The Manage Gift Entry flow was updated to improve the handling of donor data and acknowledgments. On the Single and Batch Gift Entry, if One-off/Recurring, the Stripe Customer Form now receives the Account ID only when an existing donor is selected.
    On the screen, the Acknowledgement Channel field shows an error in red if both email and address are missing. It defaults to Email and Mail accordingly. If the New Recurring Gift is FALSE, the Acknowledgement Information is shown regardless of payment method; otherwise, it is hidden.

  • The Process Gift Entry subflow is updated. During Payment Instruction creation or update, the flow now searches for the Gateway Customer record where the Customer ID matches the Payment Instrument’s token, and automatically populates the Payment Instrument’s Gateway Customer field with the matched record.

  • The PosiGive API is updated for recurring gifts. In the Create a Customer API callout, if a matching Account is found, a key-value pair is added to the metadata where accountID = Account record ID. Additionally, during the Payment Instrument creation and update, the system finds the Gateway Customer record whose Customer ID matches the Payment Instrument’s Token and sets the Payment Instrument’s Gateway Customer field accordingly.

  • A new detail page layout is created for Bank Statement Line records. The record detail page layout name to [PosiGive] Bank Statement Line Record Page. In the header and left sidebar the following elements are added. See the picture for the details.

    image-20250313-051950.png
  • An app is created called PosiGive and the app’s logo is set. The following tabs are displayed. The System Administrator and the standard user are user profiles that can access the app.

  • Home

  • Account

  • Gift Entry

  • Gift Batch

  • Campaign

  • Outreach Source Code

  • Return Mail Entry

  • Gift Transaction

  • Gift Commitment

  • Bank Deposit Batch

  • Bank Statement

  • PosiPay Log

  • PosiGive Settings

  • Home

  • Account

  • Gift Entry

  • Gift Batch

  • Campaign

  • Outreach Source Code

  • Return Mail Entry

  • Gift Transaction

  • Gift Commitment

  • Bank Deposit Batch

  • Bank Statement

  • PosiPay Log

  • PosiGive Settings

  • A batch apex class is created to recalculate transaction amounts and fees for all records linked to a Bank Statement Line, triggered via the Recalculate action button. When run, the process sets the Reconciliation Status to Processing and then retrieves related Gateway Settlement, Bank Deposit Batch, and Gift Transaction records. It calculates:

    • Amount = Payment Amounts + Batch Transaction Amounts + Gift Orginal Amounts

    • Total Transaction Amount = Above + Gateway Fees

    • Total Fees = Sum of Gateway Fees

Gift Transactions already linked to a Bank Deposit Batch are excluded. Once calculations are complete, the Bank Statement Line is updated with the new values and marked as Unreconciled. If an error occurs, a PosiPay Log is created with the details of the failure.

  • A lightning web component is created for the Bank Statement Line record with Reconcile action. It displays validation messages based on the record’s Reconciliation Status and related fields. If the Status is valid and amounts are correct with no discrepancies, it triggers a Batch Apex Class to reconcile the record. A notification confirms the process, and the page refreshes upon completion.

  • A lightning web component is created for the Bank Statement Line with a Recalculated action. It validates the Reconciliation Status before proceeding. If the status is empty, reconciled, or processing, it shows the appropriate error message. If the status is Unreconciled or Excluded, it displays a notification and calls a batch Apex class to recalculate transaction amounts and fees. The process completes with an OK button to close the screen and refresh the page.

  • The Automatic Reconciliation process is updated with five matching rules to reconcile Bank Statement Line records. It first attempts to match by Gateway Settlement, followed by matches using Bank Deposit Batch total (Transaction, Cash, and Check), and finally by Gift Transaction Payment Identifier. Once a match, related records (Gateway Transactions, Gift Transactions, and Deposit Batches) are updated to reconciled status. The Bank Statement Line is then marked as reconciled based on successful downstream updates.

  • The Manual Reconciliation - Find and Match page was revamped for usability and accuracy. A new Total Transaction Amount field was added below the Amount fields in the header. Filter labels were clarified, with the updated date field logic:

    • Start Date allows past/future selection

    • End Date is restricted to future dates only after the selected start.

Default filters are pre-filled based on the Bank Statement Line’s data. If filters are empty, results are sorted by relevance - starting with the Gift Transactions, then Bank Deposit Batches, Gateway Settlements, and Orders, prioritizing exact or closest amount matches in descending order.

Below is the updated layout for the filter section:

  • Amount Filter

    • Set “Minimum amount” as the field label of the left field

    • Set “Maximum amount” as the field label of the right field

  • Date Filter

    • Rename Date start field label to Start date

    • Rename Date end field label to End date