Welcome to Keyano!
Space Vendor Dashboard - Adding Flights
Space Vendor Dashboard - Virtual Accounts
Space Vendor Dashboard - Confirmed Tickets
Space Vendor Dashboard - Cancelled Flights
Space Vendor Dashboard - Refunds
Customer Dashboard - Book Flight
Customer Dashboard - Upcoming Flights
Customer Dashboard - Profile
Checkout the app keyano.space
As the Billionaire space race intensifies, we need modern solutions for space flight booking. In addition, as Space Tourism becomes mainstream, financial services will have to evolve to enable high-volume transactions.
Keyano is the world's first space marketplace. Simply put, it connects spaceline companies to customers. Customers are looking to book tickets for suborbital and orbital space flights.
What it does
Two types of users use Keyano - Space Vendors & Space Tourists
The space vendors can add new Flights to the marketplace, oversee Flight bookings, manage virtual accounts and manage refunds.
A space tourist is someone looking to experience space travel's love, wonder and awe. Keyano allows people from around the globe to buy tickets to Space in their local currencies. In addition, they can choose from a range of flights offered by Keyano's space partners, manage all their tickets from the all-in-one portal, and cancel their bookings if they want.
Use Rapyd's Virtual Accounts API
While registering Vendors, we create a Rapyd eWallet for each space vendor. This eWallet lets vendors have local virtual account numbers in countries like US & UK.
Accept multiple local bank payments in the customer's local currency
In the app, after a Space Vendor adds a new flight, Rapyd issues various bank account numbers in different countries to accept payments. For example, European customers can transfer the money to European Virtual Bank Account associated with the Vendor's eWallet. Likewise, American customers can transfer the money to the company's American account. How do we make this? They can pick a currency on the checkout page.
Be a Two-Step Payment Process: 1) Make a Deposit 2) Pay the Remaining Amount before lift-off.
Tickets are confirmed by the Vendor only after they verify that they have received the total amount. We use Rapyd's "simulate transfer" method for the demo to make a transaction. Note: The customers need to pay the entire amount before lift-off.
Show how the transaction can easily be reconciled in your application.
In the application, the space vendors can view the transaction history for all the virtual accounts in the 'Virtual Accounts' tab. To look at the list of refunds, we can go to the 'Refunds' section. Each currency has a separate transaction history for payments and refunds, making reconciliation and record keeping a piece of cake.
Demonstrate a clever and frictionless way to do a refund of the deposit amount:
To initiate the refund, the customer clicks on the cancel button on the customer dashboard. Then, the customer gets redirected to the "Create Beneficiary Tokenisation Page". Then, they enter their relevant details like name, account number, and IBAN. Once they enter the information, it triggers a 'Beneficiary Created' webhook. Under the hood, the backend creates a payout to the beneficiary account, transferring the order amount back to the beneficiary's bank. Read more about virtual account use cases.
Demonstrate how your application could facilitate other space transport scenarios that are B2B
Keyano is a very dynamic solution. The customers can book multiple flights and manage them from their dashboard. So the customers could be solo travellers or big corporations like NASA, making Keyano genuinely flexible.
How we built it
Keyano is a full-stack application built entirely using Typescript, ReactJS & NodeJS.
ReactJs & Material UI power the frontend of the application. Redux handles the state management. Finally, Formik & Yup make for making elegant forms with dynamic error handling.
Nodejs and Typescript are used to build the backend. Express is used as a middleware to handle incoming requests from the React-based frontend. A PostgreSQL database hosted on AWS serves as the data store for the application to keep track of the user data. Finally, TypeORM is an ORM (Object-relational Mapper) that helps us to write SQL queries.
- Create Wallet - created when the Vendor registers.
- List Capabilities of Virtual Accounts per Country - Allow vendors to add multiple currencies.
- Issue Virtual Account - used when the Space Vendor adds a new flight.
- Retrieve Virtual Account History - get a list of all transactions made by customers of a country
- List Virtual Accounts by Rapyd Wallet - list all your virtual accounts.
- Create Beneficiary Tokenization Page - used to obtain bank account information for refunds.
- Payouts required fields - used to get the form fields needed to create a sender for the beneficiary.
- Create Sender - used to create a sender in the beneficiary's country.
- Create Payout - When a beneficiary requests a refund, we generate a payout.
- List Payouts - get all the refunds issued for Space Vendor.
- Simulate Bank Transfer
Challenges we ran into
Virtual accounts are a new feature introduced by Rapyd, so setting them up was a bit challenging. However, the Rapyd team did a great job at responding and helping with any issues.
Accomplishments that we're proud of
We were able to complete the project in time and solve a problem that existed. We built a multi-country marketplace that shows how you can accept payments in your own and other currencies and settle in multiple currencies. This project can help other developers build similar solutions that leverage virtual accounts.
Checkout the Github repository for frontend
To run the project, you need to install the dependencies.
git clone https://github.com/sarthakarora1208/space-tourism-frontend cd space-tourism-frontend npm i npm run start
Checkout the Github repository for backend
git clone https://github.com/sarthakarora1208/space-tourism-backend cd space-tourism-backend npm i npm run start:dev
What we learned
We learned about how Rapyd's Virtual Accounts work. Rapyd Virtual Accounts are the ideal solution for businesses that want to collect and organize bank payments in other countries.
What's next for Keyano Space Tourism
The application is running in Sandbox mode. Hopefully, it can someday act as an enabler for space travel. We hope to add compliance documents once we book the ticket. Additionally, we hope to send an email confirmation once the ticket is confirmed. Currently, to contact the Vendor, the customers have to reach them via email. We plan to add messaging in Keyano to enable better communication between them.
Log in or sign up for Devpost to join the conversation.