---
url: /technical-references.md
description: >-
  API reference for the MiniPay wallet from Mini Apps—provider, signing,
  transactions, and tokens.
---

# Technical Reference

This section documents how to interact with the MiniPay wallet from your Mini App: provider, signing, transactions, and tokens.

## SDK / APIs at a glance

* **Provider:** MiniPay injects an Ethereum provider when it loads your app. It is available as `window.ethereum` and follows the standard [EIP-1193](https://eips.ethereum.org/EIPS/eip-1193) API. You can detect MiniPay with `window.ethereum?.isMiniPay === true`. Optionally wrap access in a `getEthereumProvider()` that throws if the provider is missing (see [Project setup](/getting-started/project-setup)).
* **Wagmi:** We recommend [Wagmi](https://wagmi.sh/react/getting-started) (with Viem) to talk to the provider. Use the **injected** connector and configure **Celo** and **Celo Sepolia** chains. In Wagmi v3, use `useConnection()` for address, chainId, and connection state.
* **Signing and transactions:** Send tokens (e.g. USDC, USDT, USDm) via `useSendTransaction`. See [Send a transaction](./send-transaction) and [Transaction status](./transaction-status).
* **Tokens:** Read balances with `useReadContracts` (balanceOf, decimals, symbol). See [Retrieve balance](./retrieve-balance). Supported networks: Celo Mainnet and Celo Sepolia only.

> \[!NOTE]
> Wagmi is not required. You can use `window.ethereum` directly (e.g. with Viem's `createPublicClient` and `custom(provider)`), but Wagmi simplifies React integration.

## Wallet connection

* [Wallet connection](/getting-started/wallet-connection) — Auto-connect, connection state, and error handling

## Code examples

In addition to the [Quick Start guide](/getting-started/quick-start), here are code examples for common wallet operations.

### Basic operations

* [Retrieve a balance](./retrieve-balance) — Get token balances from the wallet
* [Send a transaction](./send-transaction) — Send token transactions (e.g. USDC, USDT, USDm)
* [Transaction status](./transaction-status) — Track transaction confirmation
* [Chain switching](./chain-switching) — Celo and Celo Sepolia

### Advanced features

* [Estimate gas](./gas-estimation) — Estimate transaction gas costs
* [Phone number lookup](./phone-number-lookup) — Map phone number to wallet address
* [Custom methods](./custom-methods/custom-methods) — MiniPay-specific RPC methods
* [Deeplinks](./deeplinks) — Deep linking into MiniPay

### Smart contracts

* [Interacting with smart contracts](/getting-started/smart-contracts) — Read and write to smart contracts
