Ronin Waypoint Web Utilities SDK
Overview
The Ronin Waypoint offers various utilities to assist dapp developers in building applications with ease and convenience.
- The Ronin Waypoint Web Utilities SDK provides a simple way to integrate the Onramp service into your games / dapps through the
@sky-mavis/waypoint/deposit
package.
Features
Fiat Onramp Service: Allow users to purchase cryptocurrencies directly within your games / dApps using fiat currencies via different payment methods such as card, bank transfer and other local payment methods...through the Ronin Waypoint service
Prerequisites
Permission to use the Sky Mavis Account service. For more information, see Setup and configuration.
Installation
To install the SDK, use the following command:
npm install @sky-mavis/waypoint
# or
yarn add @sky-mavis/waypoint
# or
pnpm add @sky-mavis/waypoint
Usage
Onramp service
The @sky-mavis/waypoint/deposit
package simplifies the integration of the Onramp service, allowing users to buy cryptocurrencies using traditional payment methods like credit cards and bank transfers.
Initialize an instance from the Deposit
class
import { Deposit } from '@sky-mavis/waypoint/deposit';
const deposit = new Deposit({
clientId: '<client_id>'
});
Parameters for the Deposit
class include:
Field | Required? | Description |
---|---|---|
clientId | Required | The client ID from the Developer Console. For more information, see Waypoint service settings. |
redirectUri | Optional | Equivalent to the REDIRECT URI configured in Waypoint service settings. Default is window.location.origin . |
theme | Optional | The theme of the deposit modal. Available values are light and dark . |
Open the deposit pop-up
To open the deposit pop-up, call the start
method:
deposit.start();
The start
method also accepts an object with the following parameters to pre-fill the user's information:
Field | Required? | Description |
---|---|---|
walletAddress | Optional | The Ronin wallet address of the customer. |
fiatAmount | Optional | The initial amount of fiat currency you want the customer to buy cryptocurrency. |
fiatCurrency | Optional | The code of the fiat currency you want the customer to buy cryptocurrency, e.g. USD , EUR , VND etc. For more information, see Fiat Currency Coverage. |
cryptoCurrency | Optional | The code of the cryptocurrency you want the customer to buy, e.g RON , SLP , AXS etc. For more information, see Crypto Currency Coverage. |
email | Optional | The email that will be used to identify your customer and their order. |
In the Ramp provider, when a user enters their wallet address manually, the address must include the ronin:
prefix. For example, ronin:1234567890abcdef1234567890abcdef12345678
.
The start
method returns a Promise
that resolves with an object containing the transaction details.
Field | Description |
---|---|
provider | The provider used for the transaction. |
transactionHash | The hash of the transaction. |
fiatCurrency | The fiat currency used in the transaction. |
cryptoCurrency | The cryptocurrency used in the transaction. |
fiatAmount | The amount of fiat currency involved in the transaction. |
cryptoAmount | The amount of cryptocurrency involved in the transaction. |
If the transaction is failed or cancelled, the Promise
will reject with an object containing the error details.
Field | Description |
---|---|
code | The error code indicating the type of error. |
message | The reason for the error or cancellation. |
The deposit error codes are as follows:
Code | Description |
---|---|
4001 | The user has closed the deposit pop-up. |
-32603 | The deposit transaction has failed. |
Sample code
Here is an example of how to implement Onramp service in your application:
Step 1: Initialize an instance from the Deposit
class
import { Deposit } from '@sky-mavis/waypoint/deposit';
export const deposit = new Deposit({
clientId: '4d24b378-aa36-4952-8faa-bda63c9a4932',
})
Step 2: Open the deposit pop-up
function StartDeposit() { const [result, setResult] = useState(null); const handleDeposit = async () => { try { const result = await deposit.start({ fiatCurrency: 'USD', cryptoCurrency: 'RON', fiatAmount: 100 }); setResult(result); } catch (error) { alert(error); } }; return ( <LayoutBox> <Button label='Deposit with Ronin Waypoint' onClick={handleDeposit} /> {result && ( <span>{`You have deposited ${result.cryptoAmount} ${result.cryptoCurrency} to your Wallet`}</span> )} </LayoutBox> ); }
Coverage and reference
Onramp Service
Crypto Currency Coverage
The cryptocurrencies we support for our onramp service are as follows
Cryptocurrency | Code |
---|---|
Ronin | RON |
Axie Infinity Shard | AXS |
Smooth Love Potion | SLP |
USD Coin | USDC |
Ronin Wrapped Ether | WETH |
PIXEL | PIXEL |
BANANA | BANANA |
Apeiros | APRS |
Fiat Currency Coverage
The fiat currencies we support for our onramp service are as follows
Currency Name | Currency Code |
---|---|
US Dollar | USD |
British Pound | GBP |
Indian Rupee | INR |
Euro | EUR |
Swiss Franc | CHF |
Swedish Krona | SEK |
Polish Zloty | PLN |
Norwegian Krone | NOK |
Danish Krone | DKK |
New Zealand Dollar | NZD |
Mexican Peso | MXN |
Canadian Dollar | CAD |
Australian Dollar | AUD |
Argentine Peso | ARS |
Brazilian Real | BRL |
Chilean Peso | CLP |
Costa Rican Colon | CRC |
Dominican Peso | DOP |
Indonesian Rupiah | IDR |
Israeli Shekel | ILS |
Japanese Yen | JPY |
South Korean Won | KRW |
Malaysian Ringgit | MYR |
Paraguayan Guarani | PYG |
Peruvian Sol | PEN |
Philippine Peso | PHP |
Singapore Dollar | SGD |
Fiji Dollar | FJD |
Forint | HUF |
Kenyan Shilling | KES |
Moldovan Leu | MDL |
Bermudian Dollar | BMD |
Falkland Islands Pound | FKP |
Czech Koruna | CZK |
Iceland Krona | ISK |
Romanian Leu | RON |
Kwanza | AOA |
Belize Dollar | BZD |
Brunei Dollar | BND |
Comoro Franc | KMF |
Djibouti Franc | DJF |
East Caribbean Dollar | XCD |
Lari | GEL |
Quetzal | GTQ |
Lempira | HNL |
Hong Kong Dollar | HKD |
Tenge | KZT |
Som | KGS |
Malagasy Ariary | MGA |
Kwacha | MWK |
Ouguiya | MRU |
Rial Omani | OMR |
Kina | PGK |
Rwanda Franc | RWF |
Dobra | STN |
Seychelles Rupee | SCR |
Solomon Islands Dollar | SBD |
Surinam Dollar | SRD |
Lilangeni | SZL |
Somoni | TJS |
Pa’anga | TOP |
Turkmenistan New Manat | TMT |
Peso Uruguayo | UYU |
Colombian Peso | COP |
Taiwanese Dollar | TWD |
Ghanaian Cedi | GHS |
UAE Dirham | AED |
Cambodian Riel | KHR |
Serbian Dinar | RSD |
Bahraini Dinar | BHD |
Macedonian Denar | MKD |
Kuwaiti Dinar | KWD |
Armenian Dram | AMD |
Netherlands Antilles Guilder | ANG |
Azerbaijani Manat | AZN |
Bahamian Dollar | BSD |
Cayman Islands Dollar | KYD |
Cape Verdean Escudo | CVE |
BH Convertible Mark | BAM |
Jordanian Dinar | JOD |
Trinidad & Tobago Dollar | TTD |
Panamanian Balboa | PAB |
Algerian Dinar | DZD |
Bulgarian Lev | BGN |
Egyptian Pound | EGP |
Sri Lankan Rupee | LKR |
Nigerian Naira | NGN |
Thai Baht | THB |
Turkish Lira | TRY |
Vietnamese Dong | VND |
South African Rand | ZAR |
Botswana Pula | BWP |
Mozambican Metical | MZN |
Lao Kip | LAK |