# Acala Grant (Supercharge ⚡️)
`Last Updated: June 6, 2022`
Authors: [Ben Gusberg](https://twitter.com/bgusberg), [Jim Zheng](https://twitter.com/@ataki12)
## Please provide an overview of your project including the points below.
Supercharge is building payments infrastructure to accelerate adoption of stablecoins. We believe that a full set of products to on-ramp and facilitate payments is needed to drive a large number of use caes.
**Key deliverables**
1) fiat on-ramp
2) payments standard that facilitates transactions of aUSD
Our fiat on-ramp is similar to other fiat on-ramps.
Our inspiration for (2) is Solana Pay (inspired by `BIP-0021` and `EIP-681`), a standard and a set of reference implementations that enable developers without deep blockchain knowledge to incorporate decentralized payments into their apps and services.
We want to build a suite of products and be the first entrypoint for developers in the Polkadot ecosystem.
**Benefit**
👉 Drive adoption of aUSD; grow the Acala / Karura and broader Dotsama ecosystems.
:::warning
**Note** The initial on-ramp is US-only
:::
## Please provide details of the project and demonstrate feasibility of the development.
_1) Please provide design, technical specification, technology stack, documentation on core components, protocols and architecture. 2) Please provide proof-of-Concepts (preferably) deployed prototypes._
**Fiat on-ramp**
UI Design

Tech Stack
- NextJS / Typescript for app
- BullMQ / NodeJS for our workers
We have a testnet app deployed on Mandala (currently revamping as we changed banking partners).
**Payments Standard**
Acala Pay is a standard, and (in the future) a reference implementation for accepting payments via a URL or QR code.
Spec
```
acala:{baseUrl}:{address}:{amount}:{token}:{memo}
```
where
- baseUrl is the API endpoint
- address is the target address to pay out to
- token is the address to escrow
- memo is semi-structured data to be forwarded to the address as part of the on-chain transaction
```
/{feature}/{version}/{policy}?arg1=a&arg2=b
```
where
- product is the add-on service we provide
- version specifies version of our product
- policy optional ACL. Defaults to ALL
- arg1, arg2... arguments to the feature
**Flows**
Our reference implementation will demonstrate a merchant being able to create a payment link from a webapp (representing a POS).
*Web App via Wallet*

## Please provide details of mainnet deployment plan and demonstrate ability to operate and sustain the operation of the project.
### Roadmap
**Fiat on-ramp**
1. Create on-ramp prototype on testnet
2. Obtain banking and liquidity partnerships
3. Alpha test on-ramp (mainnet)
4. Beta test on-ramp (mainnet)
Since this is a core product, our team will be responsible for monitoring support channels and ensuring no transaction is lost. We will work with customers to ensure their solution is not down.
**AcalaPay**
Propose standard, get consensus from ecosystem, wallets, merchants, and other supporting teams in the ecosystem.
## Ecosystem fit, Benefits to Acala/Karura Network
_Are there other projects similar to yours, not just within Polkadot/Kusama ecosystem, but also in other comparable ecosystem, and how do you differ? 2) What specific benefits, once this project is deployed, can the project bring to the Acala/Karura networks_
**Existing**
[Kado](https://kado.money) is the closest project to our on-ramp in the Terra Ecosystem. It allows users to on-ramp onto a decentralized stablecoin.
[Solana Pay](https://solanapay.com) is the closest to our payments standard. mtnpay (Solana Ecosystem) is the closest to a working standard in the Solana ecosystem.
**How we differ**
We're Solana Pay but with an additional layer of fiat on/off-ramping. We let users do the full cycle.

What specific benefits can project bring?
The on-ramp brings a critical mass of adoption into the Acala ecosystem.
This standard and reference implementation will allow app developers to accept aUSD on web app, mobile apps, via QR codes, links, and PoS portals.
1) Please describe the team and team members' relevant experience. 2) Please provide reference (Github, website etc) for past development and deployment of products and services. 3) Please provide past experience for mainnet deployment and operation of relevant products and services.
**Jim**
Github: [ataki](https://github.com/ataki)
LinkedIn: [profile](https://linkedin.com/in/zhengjim)
Blog: [dmesh](https://dmesh.xyz)
Past experience
- Engineering Manager, Flexport. Spent 10 years in fintech and developer tooling space
- Open Source Contributor / maintainer for large-scale learning platform
- Set standard and built dev tools for Terra NFT's ([Bedrock](https://github.com/senpai-so/bedrock)).
**Ben**
LinkedIn: [profile](https://www.linkedin.com/in/ben-gusberg/)
Twitter: [profile](https://twitter.com/bengusberg)
Ben worked in traditional finance as an investment banker, where he executed $125 billion worth of transactions and advised fortune 500 companies on capital raising, strategy and more. He has an MBA from Stanford and graduated summa cum laude from Harvard. In the web3 world, he’s launched a crypto education platform (https://cryptostarterkit.org/), a web3 newsletter (http://vitamin3.xyz/) and is an adjunct professor teaching blockchain basics at USC Marshall School of Business.
## Please provide project scope and overall architecture
**Fiat On-Ramp**
* Scope
* Purchase aUSD specifically from USD
* Available in the US / wherever our banking partners are supported
* Buy limits up to 10k
* Architecture
**NOTE: PLEASE DO NOT SHARE WIDELY / MAKE PUBLIC**

**Payments Standard**
* Scope
* standard that allows users to submit payments to Acala Network
* users can pay in aUSD
* standard should be roughly agreed upon / signed by ecosystem team and wallets
## Please provide deployment and operational plan
_It's important to elaborate critical success factors for deployment and operation of your product/service such as liquidity, risk management, incentives, user acquisition, continuous operation and improvement. Please provide enough financial and economic detail so we can evaluate soundness and verify deliverables._
We operate and deploy our infrastructure across NextJS and AWS cloud providers.
Critical factors for success are
* liquidity management
* KYC
* Scalability
For liquidity management, if we are not able to procure liquidity from exchanges (CEX or DEX), then we will be unable to service our customers. This will come down to the quality of partnerships we form with liquidity providers.
User acquisition will be through word-of-mouth and featured on partner sites throughout the Polkadot ecosystem.
In terms of banking providers, we've partnered with a leading provider of these services.
## Please provide development & deployment roadmap
_Please break out the roadmap into a number of milestones. Please provide enough technical detail so we can evaluate the project soundness, and verify the deliverables. Each Milestone should include the following details: 1) Summary of estimated duration, FTE, grant amount required. 2) For each milestone: 2.1) est duration, FTE, grant amount required. 2.2) list of deliverables including license, documentation, tests, contracts and/or modules, dapps etc._
Milestone | Duration | FTE | Description
------------- | ------------- | ---------- | -----------
| 1. Testnet On-Ramp | 2 wks | 2 | Deliver an open-source on-ramp that facilitates sending test aUSD / assets for dapps built on a Dotsama testnet |
| 2. Live On-Ramp | 4 wks | 3 | Create SDK that allow web dapp developers to embed on-ramp |
| 3. Payments Standards | 4 wks | 1 | Create a proposal for QR-code based payments |
**Milestone 1: Testnet On-Ramp**
* Deliverable: Testnet on-ramp, Apache License
* Amount requested: 5k USDC
Create a version of dapp on top of Mandala testnet that allow customers and developers to request / receive aUSD. This is a utility dapp that doubles as a faucet and a test on-ramp for applications developed on testnet.
The code will be open-sourced under Apache License.
**Milestone 2: Live On-Ramp**
* Deliverable: On-Ramp Embed SDK, SDK Documentation
* Grant Amount Requested: 15k USDC
Form partnership with banking provider and liquidity providers. Set up our infrastructure to procure liquidity from multiple sources. Go through legal due diligence with banking providers on liquidity providers.
The majority of this grant award will go towards providing liquidity for the protocol.
The open-source part of this is an embeddable web SDK we provide for the community to integrate their dApps with our on-ramp solutions.
**Milestone 3: Payments Standard**
* Deliverable: Payments Standard Documentation
* Grant Amount Requested: 5k USDC
Draft a proposal for payments standards with QR code. This complements the on-ramp and creates a payments solution.
**Future Plans**
Once we've agreed to a Payments Standard with QR codes, the natural next step is to build an open-source reference implementation and accompanying documentation, a-la SolanaPay.
An immediate subsequent grant would see our team implementing and open-sourcing said implementation on Github.
## Future Plans
_Please provide your longer term plans and intention._
Our ambition is to bring payments infrastructure to Acala. We believe this will maximize the vision of adopting aUSD for real-world use cases like merchant POS's, b2b SaaS, gift cards, loyalty programs, etc.
A natural follow-up project would be to build a reference implementation in JS and open-source the implementation for developers to accept and pay with aUSD anywhere on the web, without having deep blockchain knowledge.
## Additional Information
_Please supply any other useful information: resources and teams contributed to this project, other grants received etc._
*Terra Foundation Grant*
We've previously received a previous grant to build out a standard for NFT's on Terra, as well as build educational material for further NFT development. See https://github.com/senpai-so/bedrock.
*Polkadot Wallet Teams*
We would like to enlist the support and collaboration of wallets and protocols in the Acala ecosystem as we pursue this idea.