A Global Technological Solution for Cross Border Giving
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.