A Global Technological Solution for Cross Border Giving

Photo by Christian Lue on Unsplash

This is one of the 2020 CEF Whitepapers. For more information on the Christian Economic Forum, please visit their website here.

by Paul Bolte

The Problem to Solve

As an organization, TrustBridge Global Foundation was founded to make global giving easy so that charities everywhere could have all they need to accomplish their mission. In 2016, TrustBridge was registered as a charity in Switzerland and bank accounts were opened. The first problem has already been solved. Is there a market to make Christian cross-border giving easy? The pilot program run in 2017 and 2018 has proven that there is a definite need. 

So now comes the problem we are currently solving: how to systemize the platform so it can be scaled.

Step 1: Software Research

An extensive research of viable platforms was undertaken by TrustBridge member NCF (National Christian Foundation in the US). The following platforms were considered:

  • Oracle

  • SAP

  • Oracle NetSuite

  • Microsoft Dynamics

  • plus 8 other packages

After final research, the best solution was Oracle NetSuite.

TrustBridge was able to utilize this research to also come to the same conclusion that our global platform would be built on Oracle NetSuite.

Our goal was to allow donors and charities access to a web portal where they could make contributions and grants, and see the balance of their funds and all historical activity. Also needed was a monthly statement emailed to all fundholders. Sounds simple enough, but to achieve this we had to work through a series of stages.

Step 2: Configuration

The first time we logged into NetSuite, it was an empty shell. The potential was unlimited but there was nothing in the system that related to our organization. All the basics of our organization need to be configured:

  • Company details and branding

  • Currencies

  • Chart of accounts

  • Features enabled

  • Customer function used for donors

  • Sub customer function used for donor advised funds (DAF)

  • Vendor function used for charities

  • Contacts function used for individuals connected to donor companies, DAF’s and charities

Step 3: Segmentation

We needed a way to do fund accounting in NetSuite. We needed to be able to produce a balance sheet and profit and loss statement for each fund. We needed a way to separate transactions that happened in the same account in the chart of accounts but was for a different fund. At this point we:

  • Utilized custom segments for fund number and primary charity purpose

  • Connected fund number to sub customer/DAF record or vendor/charity record

We wanted a way to track our financials by currency but without having to do fund accounting in each bank account as the ownership of any asset granted to TrustBridge is with TrustBridge. To solve this, we utilized the concept discussed in a CEF whitepaper in 2019 of virtual currencies. We created a virtualized currency that was pegged to each of the real (FIAT) currencies. When FIAT currency is deposited into our bank account, we credit the fund with virtual currency, and debit TrustBridge in virtual currency so that the net effect is a value is held with the fund while the FIAT currency stays with TrustBridge. 

Step 4: Simple Customization

Once the system had the basics configured, we then needed to customize each feature to work for our needs. We made a strategic decision to have just one form for donors and DAF’s and one form for charities. Rather than have multiple entry forms for all the possible different types of clients, we chose to make the forms dynamic and to change based on information entered on the form. We decided to:

  • Add custom fields to existing record types (customer and vendor records)

  • Add custom sections in forms for each record type

  • Move custom fields into the right section

  • Build workflows to have fields hide or appear dependent on values in specific fields

Step 5: Define Accounting

We knew we wanted to have a series of transactions and transactions hit the general ledger, so we had to determine the basic building blocks: 

  • Donor contribution

  • Fund to fund transfer

  • Charity grant

  • Charity assessment

We also wanted to track the balances that TrustBridge held in each of its network members and to do this we utilized the subsidiary feature within NetSuite. This allowed us to record transactions happening in funds in countries outside the parent country of Switzerland. We then had to create further accounting building blocks:

  • Transfer to and from TrustBridge

  • Transfer to and from a network member

  • Subsidiary netting to ensure that only the fund portion of the transaction was recorded in the parent while not affecting the parent balance sheet and P&L.

The final accounting need was foreign exchange conversion. The accounting behind this requires multiple journal entries in two different currencies.

Step 6: Automate Accounting Entries (Custom Scripts)

Once we knew what our accounting entries should be, we then needed to automate the process so with a few simple pieces of data entered, multiple journal entries could be made. This is the stage in the project where the technological knowledge needed to achieve our outcomes was beyond the existing team. The story of finding a team of Christian NetSuite-only software developers in India is one of those miracles of God. Today we have access to a team of 40 people if needed in India who are NetSuite specialists.

We then created custom screens to reproduce all the transactions defined in Step 5.

Step 7: Fund Statements

The final stage of our initial goal was to produce a statement that could be emailed to fund holders to reflect all balances and activity happening in their fund each month. To do this we had to work through a series of building blocks again, so we:

  • Built an on-screen statement by fund, by currency, and by date range

  • Using NetSuite’s advanced PDF maker, produced a branded statement with all the fund activity included

  • Built a workflow to create PDF statements and for them to pass through an approval process by utilizing a folder structure within NetSuite Documents

    • Pending Approval

    • Financed Approved

    • Approved Statements

    • Email Sent Statements

    • Revision Statements

    • Not Sent Statements

  • Built an email sending system that would allow for all approved statements to be sent to relevant fund holders.

At this stage in the project we had achieved one of our original goals of being able to produce an accurate, beautiful looking statement that was emailed to fundholders. 

Step 8: Web Portal

The other part of our goal was to produce a web portal that fund holders could log into and perform transactions and see balances and activity. Rather than waiting until our NetSuite development was fully complete, we ran our portal project in parallel so that both projects would be completed around the same time. The web portal was again a series of building blocks.

  • Determine language to match NetSuite (Java, Java Script)

  • Build user interface

  • Develop back-end database and data structure

  • Build NetSuite APIs (application programming interface)

  • Connect APIs and backend of portal to user interface

We still have more to do to finish building our solution. In 12 months, however, we have taken an issue that needed a solution and built a viable working solution that we believe will ultimately impact the world by making global giving easier. We believe this because a user can now log in to a web portal and access their giving fund and grant to charities all over the world with the click of a mouse. By releasing donors into a world where global giving is easy, our prayer is that generosity will flow and the charities of the world will have all they need to accomplish their missions.