- LinkGo!
- Frontend StackReact, Next.js, Material UI
- Backend StackNode.js, Express, MongoDB
- APIsMercado Pago, SMS Token
I received a request from a customer to create a donation platform to help pets in need. According to the order, the platform must ask the user for the donation amount, authenticate him, make the donation payment and return the donation payment status to the user. In addition, it was also requested that it be possible to have multiple donors, such as pet shops, veterinary clinics, etc.
After the user chooses the amount to donate, he is forwarded to the authentication page.
The authentication of users (donors) was done by verification via SMS, through the SMS Token api. On the authentication page, the user will enter his cell phone to perform authentication. Then he will receive an SMS with a token generated by the API. The application then asks the user to enter the received token. If the token is valid, the user is forwarded to the payment of the donation.
**Obs** As part of the customer order, SMS authentication should generate/login a user into the backend of a pre-existing mobile application, so that the user base of the donation site and the customer application would be unified. Not only that, but all new schemas and routes created to manage donations had to be integrated into the existing system. This integration of new functionalities and authentication modalities into an existing system was a considerable technical challenge.
After this step, payment will be made. Through the integration of the Mercado Pago payment method via API, it was possible to offer two means of payment for the donation: credit card or PIX (brazilian fast bank transfer)
For payment by credit card, a transparent checkout was implemented within the website. This was achieved by integrating the payments API into the platform's backend, which performed the payments. The user fills in his data, which is sent to the application's nodejs backend, which performs the payment via the payment processor's API.
Payment by PIX is also possible, which can be done via qr code or copy and paste link. Both are generated after the user enters some more data.