A wallet is the primary financial container in Paisr. Each wallet holds one or more currency balances, supports peer-to-peer and bank transfers, and can be configured with a PIN and public profile. Business wallets have IDs prefixed with buw_.
Creating a Wallet
You can create wallets from the Wallets section in your dashboard or using the Wallets API. When you create a wallet you give it a friendly title and an icon for recognition in the dashboard.
Dashboard: Navigate to Wallets → New Wallet, enter a title and choose an icon, then click Create.
curl -X POST "https://api.live.paisr.tech/v2/wallets" \
-H "Authorization: Bearer <token>" \
-H "User-Agent: MyApp/1.0" \
-H "Content-Type: application/json" \
-d '{
"title": "Acme Cash",
"icon": "vault"
}'Once created, open one or more balances to start holding and moving funds.
All balances must be closed and at zero before a wallet can be deleted. The first wallet you create will be your default wallet and cannot be changed or deleted.
Managing Wallets
Profile & Cashtag
A cashtag is a unique 6–48 character handle that identifies your wallet to others on Paisr. Once set, others can send money to your wallet by cashtag without knowing your full account details. You can also set a nickname for how your wallet appears to contacts, and toggle discoverability.
Dashboard: Navigate to the wallet → Settings → Profile.
curl -X POST "https://api.live.paisr.tech/v2/wallets/{wallet_id}/profile" \
-H "Authorization: Bearer <token>" \
-H "User-Agent: MyApp/1.0" \
-H "Content-Type: application/json" \
-d '{
"nickname": "Acme Finance",
"cashtag": "acmefinance",
"public": true
}'Setting your profile to public makes your wallet discoverable by other Paisr users. You can still receive money from existing contacts even when set to private.
Preferences
Update the wallet's display title and icon at any time. These are shown only in your dashboard and do not affect the public profile.
curl -X POST "https://api.live.paisr.tech/v2/wallets/{wallet_id}/preferences" \
-H "Authorization: Bearer <token>" \
-H "User-Agent: MyApp/1.0" \
-H "Content-Type: application/json" \
-d '{
"title": "Acme Cash",
"icon": "wallet"
}'PIN Code
Your wallet PIN is a 4-digit code required to authorise outbound transfers. You will be prompted to set a PIN when you first use your wallet for a transfer. Subsequent changes require your current PIN.
Dashboard: Navigate to the wallet → Settings → PIN Code.
curl -X POST "https://api.live.paisr.tech/v2/wallets/{wallet_id}/pin" \
-H "Authorization: Bearer <token>" \
-H "User-Agent: MyApp/1.0" \
-H "Content-Type: application/json" \
-d '{
"new_pin": "1234",
"old_pin": "4321"
}'Omit the old PIN when setting a PIN for the first time. Never share your PIN with anyone.
Contacts
Contacts are saved wallet addresses for people and businesses you transact with regularly. Adding a contact by cashtag lets you reference them quickly when initiating transfers.
Dashboard: Navigate to the wallet → Contacts → Add Contact.
curl -X POST "https://api.live.paisr.tech/v2/wallets/{wallet_id}/contacts" \
-H "Authorization: Bearer <token>" \
-H "User-Agent: MyApp/1.0" \
-H "Content-Type: application/json" \
-d '{
"cashtag": "acmecorp"
}'The response returns a contact ID (fav_...) you can reference directly when initiating peer transfers.
Connected Accounts
A connected account is a bank account you own that is linked to your wallet. Once verified, it can be used as a destination for outbound bank transfers (ACH).
Dashboard: Navigate to the wallet → Accounts → Connect Account.
curl -X POST "https://api.live.paisr.tech/v2/wallets/{wallet_id}/accounts" \
-H "Authorization: Bearer <token>" \
-H "User-Agent: MyApp/1.0" \
-H "Content-Type: application/json" \
-d '{
"account_holder": "John Doe",
"account_number": "AC123456789",
"account_type": "checking",
"swift_code": "SOUOSRPP",
"currency": "SRD"
}'Verifying a Connected Account
After connecting an account, Paisr sends a small micro-deposit to confirm ownership. Enter the 6-digit code from the deposit to verify the account before it can be used for withdrawals.
Dashboard: Navigate to the wallet → Accounts → select the account → Verify.
curl -X PATCH "https://api.live.paisr.tech/v2/wallets/{wallet_id}/accounts/{account_id}" \
-H "Authorization: Bearer <token>" \
-H "User-Agent: MyApp/1.0" \
-H "Content-Type: application/json" \
-d '{
"code": "123456"
}'