
Updated: June 2026
The PalmPay USSD code is *861#. Dial it from the phone number linked to your PalmPay account, and you have access to transfers, airtime, data, bill payments, and balance checks — no internet required, on any phone, across all four major Nigerian networks.
One thing most guides skip: *861# will not work unless you have activated USSD banking inside the PalmPay app first and set a 4-digit PIN. This is a one-time setup. If you have never done it, the code will fail silently. This guide covers that setup step, every functional code, what each one does, what the service costs, and how to fix the problems that trip up most users.
The One Setup Step That Makes or Breaks Everything
Before you can use PalmPay USSD, you must activate the feature inside the PalmPay app. If you do not activate it, the USSD code will not work. This is the single most important operational fact about the PalmPay USSD service — and it is the reason many users dial *861#, get no response or an error message, and conclude the service is broken. It is not broken. It is dormant.
The activation sequence is straightforward and only happens once:
- Open the PalmPay app on your smartphone.
- Go to Settings (or look for Offline Banking or USSD in the app menu depending on your app version).
- Select Activate USSD or Set Up Offline Banking.
- Create a 4-digit USSD PIN — this is separate from your app transaction PIN and will be required for every USSD session.
- Confirm the PIN to complete activation.
To activate PalmPay USSD banking, dial *861# from the phone number registered on your PalmPay account and set up a 4-digit USSD PIN. Some app versions complete activation fully inside the app; others prompt you to dial *861# to finalise. Follow whichever flow your version of the app shows.
After this one-time setup, you can use *861# indefinitely without touching the app — even when your data is exhausted, your WiFi is down, or you are using a basic feature phone.
PIN security note: Your USSD PIN is the only thing standing between your PalmPay wallet and an unauthorized USSD transaction. Do not share it. PalmPay will never ask for it over a call or SMS. If you suspect compromise, freeze your account immediately via the app or contact PalmPay customer care.
USSD Code for PalmPay — The Complete Reference Table
All codes below are based on published PalmPay documentation and verified sources at time of writing. Codes and menu structures may be updated by PalmPay. Confirm current functionality by dialing *861# and navigating the live menu.
| Function | USSD Code | Notes |
|---|---|---|
| Open main menu | *861# | Entry point for all services |
| Transfer (PalmPay or bank) | *861*1# | Prompts for account type, number, amount |
| Buy airtime for yourself | *861*2*Amount# | Example: *861*2*500# for ₦500 |
| Buy airtime for someone else | *861*2*Amount*PhoneNumber# | Example: *861*2*200*08012345678# |
| Buy data | *861*3# | Select network and bundle from menu |
| Pay bills | *861*4# | Electricity, cable TV, internet, betting |
| Check wallet balance | *861*5# | Enter PIN to display current balance |
| Forgot PIN / Reset | *861# → Support → Forgot PIN | Follow on-screen prompts |
| Freeze account | *861*9# | Emergency use if account is compromised |
The shortcut codes — *861*1#, *861*2#, *861*3# — skip the main menu and jump directly to the relevant function. They save time for users who transact frequently and know exactly what they need. For less frequent use or new users, the main *861# menu is easier to navigate since it walks you through each step with prompts.
Why the USSD Service Exists — and Who It Is Actually Built For
palmpay launched in Nigeria in 2019 and scaled rapidly on the back of its app-first experience. Some references list *652# as an access code, but the official PalmPay USSD code widely in use today is *861#. The *652# code was associated with an earlier period of the service. If you encounter it referenced in older content or on unofficial sources, disregard it — *861# is the verified current code.
The USSD channel was built specifically to serve users that the app alone cannot reliably reach. PalmPay USSD works on any phone across all networks — MTN, Airtel, Glo, and 9Mobile — and dialing the main *861# code is free, though most Nigerian telecom providers charge around ₦6 to ₦7 per USSD session.
That session cost is a detail that every regular USSD user should understand. It is not a PalmPay charge — it is a telco infrastructure charge billed by your network operator per USSD session, regardless of whether the session results in a completed transaction. A user who dials *861#, navigates two menus, then abandons the session has still been charged ₦6–₦7 by their network. Over a month of daily USSD use, that accumulates to between ₦180 and ₦210 in session charges alone — purely in telco overhead, not transaction fees.
For a POS agent processing ten or more USSD sessions daily, this is a meaningful operating cost. For a low-volume user who checks their balance occasionally without data, it is negligible. The appropriate use of the USSD channel is contextual — it is most efficient for urgent, no-data situations, not as a replacement for the app in environments where data is accessible.
Also Read: OPay vs PalmPay: Which Is Better for Your Business in Nigeria?
How to Transfer Money Using PalmPay USSD
Transferring money through USSD works for both PalmPay-to-PalmPay and PalmPay-to-bank transactions. PalmPay USSD supports bank transfers to many major Nigerian banks including GTBank, Zenith Bank, Access Bank, UBA, and First Bank.
Via the shortcut code: Dial *861*1# directly. The system will prompt you to choose between a PalmPay wallet recipient and a bank account recipient. Enter the account number, confirm the account name displayed on screen, enter the amount, and confirm with your USSD PIN.
Via the main menu: Dial *861#, select Transfers from the menu, choose your transfer type, and follow the prompts.
One non-obvious friction point: USSD sessions in Nigeria time out in under 30 seconds of inactivity. If you are transferring to a bank account, have the recipient’s 10-digit account number ready before you dial. Entering it mid-session while someone reads it out to you is one of the most common ways sessions expire before completion, requiring you to restart — and pay another session charge.
If a transfer completes but the recipient does not receive the funds within a few minutes, do not retry immediately. Wait, check your own balance via *861*5#, and if funds have left your wallet, contact PalmPay support with your transaction reference. Initiating a duplicate transfer while an original is pending can result in a double debit that takes time to reverse.
Airtime and Data: Where USSD Actually Earns Its Value
Airtime purchase via USSD is the single most practical use case for the channel — particularly for the scenario every Nigerian mobile user encounters: phone data exhausted, cannot access the app, need to recharge immediately.
For self: Dial *861*2*Amount#. Example: *861*2*500# to recharge ₦500. For others: Dial *861*2*Amount*PhoneNumber#. Example: *861*2*200*08012345678# to send ₦200 to another line.
The shortcut format eliminates menu navigation entirely — you get airtime in a single dial. This is the code worth memorizing and saving in your phone’s contacts or notes for the exact moment you need it.
For data bundles, dial *861*3# and select your network provider from the menu, then choose the bundle size. The available bundles reflect what PalmPay’s data aggregation partnerships support at the time — some niche bundles available directly from your telco may not appear in the PalmPay USSD data menu. If you do not find the bundle you need, purchasing airtime via USSD and converting it to data through your telco’s own USSD is a reliable alternative.
The Problems That Stop PalmPay USSD From Working — and How to Fix Them
The most common USSD failure is using the wrong SIM. You must use the phone number registered with your PalmPay account. If you have a dual-SIM phone and your PalmPay-registered number is in SIM 2, but SIM 1 is your default for calls and USSD, every dial will fail. Switch your active USSD SIM to the correct slot before dialing.
NIN verification failures commonly occur because of discrepancies in personal information across different databases. A parallel issue applies to USSD PIN mismatches: if you set your USSD PIN during activation and have forgotten it, do not attempt repeated wrong PINs — accounts lock after a threshold of failed attempts. Reset via *861# → Support → Forgot PIN, or through the PalmPay app directly.
Other common failure causes and fixes:
- Session timeout: Have all details ready before dialing — account numbers, amounts, recipient phone numbers.
- Network congestion: Avoid peak hours between 5–8pm when USSD infrastructure is under highest load. Using USSD between 10am and 2pm typically yields a higher success rate.
- Insufficient airtime for session fee: Your line needs at least ₦6–₦10 to sustain a USSD session. A zero-balance line will terminate the session immediately.
- Unactivated USSD feature: If the code has never worked for you, return to the app and complete the activation setup described at the beginning of this guide.
What PalmPay USSD Cannot Do — and When to Use the App Instead
The USSD channel is a reduced-function interface, not a full replacement for the app. Functions that require it include: receiving cashback rewards, accessing PalmPay’s savings products, viewing detailed transaction history, updating account information, or managing security settings beyond a PIN reset.
If you are transacting regularly in an environment with data access, the app is faster, cheaper (no session fees), and provides full confirmation details including reference numbers and receipts. USSD is the channel for when the app is not an option — not the channel of preference when both are available.
Most USSD sessions expire in less than 30 seconds, so it is best to use USSD when you are ready to transact immediately, not to browse options. Treat *861# the same way you would treat a quick cash machine withdrawal: know what you need before you start, execute it, and confirm completion before ending the session.
Wrapping up
The *861# code covers the full range of daily financial transactions most Nigerians need from a mobile wallet — transfers, airtime, data, bills, and balance — without a data connection, on any handset. Its operational relevance is structural, not incidental: in a market where internet access is intermittent and data balances deplete without warning, an offline banking channel is not a convenience feature, it is infrastructure.
The one constraint that determines whether USSD works for you is setup: activate it in the app once, create a PIN you will remember, and confirm you are always dialing from your registered SIM. Everything else follows from those three actions.
For high-volume users — particularly POS agents and SME operators — the telco session fee accumulates. Factor it in. App-first where possible, USSD where necessary.
Also Read: OPay USSD Code 2026: Full List, How to Use & Fix Failures
