Please watch this video for the IOS Messenger Mobile Experience Video.
We all know how Fundraising programs are very essential for nonprofits and the community. In addition, many users will prefer to use Amazon Account (Amazon Pay) instead of Credit Cards to donate. In fact, about 2/3 of the the USA population have Amazon Accounts. Moreover, it is more secured, fast and trusted by most of the users. From here, when a Fundraising Platform accepts Amazon Pay for donation, this will eventually increase the donations rate and help the community. Hopefully, this platform will connect people together for the sake of social good.
What it does
The platform uses Amazon Login to sync the user information and create a local copy in our DynamoDB database. The user can use his Amazon Account to donate for the platform, or to donate for any Fundraising. Importantly, the user can search and find any nonprofit organization in the USA, see their location on Map, find their info, donate, and start a Fundraising. Also, there is a tab where the user can find all the Current Fundraisers, and Events on the platform. In addition, the user can share our Events or Fundraisers on social Media. Finally, there is a tab “My Account” where the user can find and download Instant Receipts. On the other hand, there a Messenger Chatbot that is connected to the platform and share the same data. The user can use Facebook Messenger to interact with the Platform and donate with their Amazon Accounts as well. When the user send a donation from Messenger (IOS or Desktop), the user will receive a receipt in Messenger. In the Messenger Chatbot, all conversation are logged into the Database to be analyzed for the sake of future improvements.
How I built it
I started this project by designing the Database Schema for the Website and the Messenger. I used DynamoDB and Node.js with Express in the backend. Also, I used Amazon Pay to collect donations, and Amazon Login to sync the user data and create account in our database. The steps were as the following: 1- Build the website and write the required database functions. 2- Integrate Amazon Login and Amazon pay for user Authentication. 3- Connecting the Messenger webhook to the Node App. 4- Write and update database functions for Messengers Users. 5- Integrate Amazon Pay and Amazon Login for Messenger users. 6- Connect Messenger with the current Data database and display the Data in Messenger.
Accomplishments that I'm proud of
I am so proud that this project can really help the community. If we connect all nonprofits together in one place with a trusted and common payment method, that will have a good impact on our life and the nonprofits community.
What's next for Charity Station
The infrastructure for this project allows to add and connect more services and platforms. I wanted to create and connect Alexa skill for this App, but the time didn’t help. The first update is to redesign the home page to include news & feeds updates. Then, I want to add Alexa Skill, Slack Bot, and more..