# RESEARCH: Annie Phone — UPI, Banking, and Legal Landscape (India)

**Context:** Rajesh is buying a Google Pixel 9a for Annie to control via ADB automation. Annie runs on a server and controls the phone programmatically. This document covers the full legal, practical, and technical landscape.

---

## 1. SIM Card Options

### How Many SIMs Can Rajesh Get on His Aadhaar?

India's Department of Telecommunications (DoT) allows **up to 9 SIM cards per person per Aadhaar** across all operators combined (6 in restricted zones: J&K, Assam, North East). This is a hard ceiling enforced via TAFCOP (Telecom Analytics for Fraud Management).

Rajesh can check how many SIMs are already linked at: **tafcop.dgtelecom.gov.in**

Since 2025, **biometric verification via Aadhaar is mandatory for all new SIM activations**. Getting a second SIM on the same Aadhaar is routine and legal — it is done millions of times for dual-SIM phones.

### Jio vs Airtel vs Vi — Which is Best for Annie's Phone?

| Operator | Best Plan | Cost/Month | Data | Notes |
|----------|-----------|------------|------|-------|
| **Jio** | ₹189 | ₹189/28 days | 2 GB | Cheapest full-featured plan. Best data network in most cities. |
| **Airtel** | ₹199 | ₹199/28 days | 2 GB | Slightly pricier. More reliable voice in some areas. |
| **Vi** | ₹99–₹155 | ₹99/15 days | 200 MB | Cheapest but limited data. Vi's network quality is declining. |
| **BSNL** | ~₹107 | 90 days | Minimal | Very long validity but slow network. |

**Recommendation for Annie: Jio at ₹189/month.** Best data reliability for API calls, ADB debug traffic over USB is local so SIM data is secondary, but Jio's network quality is best for OTP delivery (critical for UPI setup).

**Absolute minimum to keep SIM alive:** Under TRAI rules, ₹20 gives 30 days of SIM existence — but no calls/SMS/data. The practical minimum for functional OTP delivery is Jio's ₹189 plan.

### eSIM vs Physical SIM — Which is Better?

**Physical SIM is strongly recommended** for Annie's phone. Reasons:

- ADB automation is on a server-controlled phone sitting on a desk. Physical SIM swap risk is zero.
- eSIM re-provisioning requires app interaction (MyJio / Airtel app) which is harder to automate.
- Banking apps do SIM binding — they detect the IMEI + SIM combination. A physical SIM stays fixed; eSIM profiles can be swapped, which may trigger bank re-verification.
- Google Pixel 9a supports dual SIM (one physical + one eSIM), so using physical SIM for Annie and eSIM slot for a backup is possible.

**eSIM compatibility:** Google Pixel 9 and 9a are confirmed eSIM-compatible with Jio, Airtel, and Vi in India as of 2025.

### Can Annie Make/Receive Calls on This SIM?

**Yes — technically.** ADB can trigger USSD codes and calls. However:
- Calls require audio routing (microphone + speaker) which needs to be automated.
- For Annie's use case (ordering food, bookings), most interactions are app-based, not voice calls.
- OTP receipt via SMS is the critical SIM function.
- ADB can read SMS via `adb shell content query --uri content://sms/inbox`.

---

## 2. UPI Setup

### The Core Constraint

UPI is fundamentally tied to **phone number ↔ bank account**, not phone number ↔ device. The SIM with the registered number must be physically present in the device during UPI registration (OTP verification via SMS).

### Can One Bank Account Use Two Phone Numbers?

**No — not directly.** A bank account is registered with exactly one mobile number for UPI purposes. You cannot have the same bank account accessible via two different UPI phone numbers simultaneously.

**Options:**

1. **UPI Circle (Full Delegation) — RECOMMENDED for Annie**
   - Rajesh (primary) grants Annie's phone number/device as a "secondary user"
   - Monthly cap: ₹15,000 | Per-transaction cap: ₹5,000
   - Full delegation: Annie's phone can initiate and complete payments autonomously
   - Partial delegation: Annie initiates, Rajesh authenticates — useful for larger amounts
   - Rajesh can revoke at any time
   - Up to 5 secondary users per primary account
   - App biometric/passcode mandatory on secondary device
   - **Supported on:** BHIM app, Google Pay (partially)

2. **Same Number on Both Phones (Not Recommended)**
   - Technically, you can install GPay/PhonePe on multiple devices with the same login
   - UPI PIN setup requires the SIM to be in the device during registration
   - After setup, the SIM can be moved back — but OTP for new transactions still goes to the registered number
   - This creates a split-brain problem: OTPs go to the SIM's current phone

3. **Separate Bank Account for Annie (Best Long-Term Architecture)**
   - Open a zero-balance savings account (Fi Money, Jupiter, IDFC FIRST are instant/digital)
   - Link Annie's SIM number as the registered mobile
   - Rajesh transfers a fixed budget to this account weekly/monthly
   - Annie operates UPI from this account with her own phone number
   - Complete isolation: Annie's spending cannot touch Rajesh's main account

### What Happens if UPI is Active on Two Phones with Same Number?

The UPI registration is device+SIM bound. Installing the same app on a new device with the same number **deactivates** the old device's UPI registration. You cannot have two active UPI registrations for the same bank account on two different physical devices with the same number simultaneously. The last registered device wins.

### GPay/PhonePe/Paytm on Multiple Devices — Same Account?

- **Google Pay:** Supports multi-device login for the same Google account, but UPI bank account registration is per-device. Adding a bank account on a new device re-sends OTP to the registered mobile number.
- **PhonePe:** One primary device at a time for UPI transactions. Can browse the app on multiple devices but UPI requires the SIM.
- **Paytm:** After RBI restrictions on Paytm Payments Bank (March 2024), Paytm Wallet is severely restricted. Existing balance can be used but new loading is blocked.

---

## 3. Banking Apps

### Can Banking Apps Be Installed on a Second Phone?

**Yes, but with re-registration.** All major Indian banking apps (HDFC, ICICI, SBI YONO, Axis) allow installation on a new device, but:

1. The new device registration **automatically deregisters the previous device**
2. Registration requires OTP sent to the registered mobile number
3. A new MPIN must be set (or the existing one re-entered after device verification)
4. **SIM binding** is mandatory — the app detects IMEI + SIM combination

**Implication for Annie:** If Annie's phone has a different SIM from Rajesh's registered mobile, she cannot register HDFC/ICICI/SBI banking apps on her phone using Rajesh's account. The bank OTP goes to Rajesh's number, but Annie's phone needs it locally to complete binding.

**Workaround:** Use a separate bank account (Rajesh as nominee/second holder) with Annie's SIM as the registered mobile. Then Annie's phone can register and use that account's banking app independently.

### MPIN and Device Binding

- **MPIN** is a 4–6 digit PIN set during banking app registration; it is device-independent (can be the same across devices) but verified after device binding.
- **Device binding** = IMEI of Annie's Pixel 9a + SIM ICCID tied to the bank's backend.
- If Annie's phone is wiped/replaced, the binding breaks and re-registration is needed (OTP to registered mobile again).
- **ADB cannot bypass** this binding check — it happens server-side.

### Does Automated Interaction with Banking Apps Violate Terms of Service?

**Almost certainly yes for direct bank apps.** HDFC, SBI, ICICI, and Axis all have Terms of Use that prohibit:
- Automated, scripted, or robotic access to the app
- Reverse engineering or interfacing with the app via unauthorized means

ADB-based automation falls into a legal grey zone:
- It is Rajesh's own phone and Rajesh's own account
- There is no case law in India specifically criminalizing self-directed ADB automation of personal banking apps
- However, if a transaction goes wrong and the bank investigates, discovery of ADB automation could void fraud protection and shift liability to the user

**Safer alternatives to direct banking app automation:**
- UPI via GPay/PhonePe (less locked-down apps)
- IMPS/NEFT via the bank's own UPI API integration
- Bank-issued debit card payments (no SIM binding for the card itself)

### RBI Regulations on Automated/AI-Driven Transactions

**There is no explicit RBI regulation banning AI-driven personal payments** as of March 2026.

Relevant frameworks:
- **RBI FREE-AI Framework (August 2025):** Advisory, not binding. Targets regulated entities (banks, NBFCs, PSOs) — not individual users using AI tools for their own transactions.
- **RBI Authentication Directions 2025 (September 2025):** Requires second-factor authentication for digital payment transactions, moving beyond SMS OTP. This affects how UPI PIN is presented — not whether AI can use it.
- **e-Mandate Rules:** Recurring payments up to ₹5,000 auto-debit without OTP; above ₹5,000 requires OTP each time. AI can handle sub-₹5,000 recurring without intervention.

**Key principle:** RBI regulations govern **regulated entities** (banks), not how an individual chooses to interact with their own account. An individual authorizing an AI to click buttons on their behalf (like a power of attorney agent) is not regulated.

---

## 4. Legal Considerations (India)

### Is It Legal for an AI to Make Payments on Rajesh's Behalf?

**Yes, with caveats.** Indian law does not prohibit an AI from mechanically executing instructions on behalf of its human owner. The legal framework to understand:

1. **Agency law (Indian Contract Act, 1872):** An agent (human or automated system) can act on behalf of a principal. The key requirement is **prior authorization** from the principal (Rajesh). An AI executing pre-approved payment instructions is analogous to a standing instruction or automated payment system.

2. **Information Technology Act, 2000:** Automated electronic transactions are valid if they use authentication mechanisms (digital signatures, OTPs) that trace back to the authorized person. The UPI PIN entered by Annie's automation is Rajesh's authorization token.

3. **There is no Indian precedent** specifically addressing AI agents operating bank accounts. The closest analogy is:
   - Corporate treasury systems that auto-execute payments
   - Algorithmic trading systems that execute financial transactions
   - Both are legal when the human principal has authorized the automation and the execution uses valid authentication

### Liability if Something Goes Wrong

**Liability falls on Rajesh** if:
- Annie makes a wrong payment (fat-finger, wrong merchant)
- Annie is deceived by a fraudulent UPI ID
- A bug causes a double-payment

**RBI's zero-liability/limited-liability framework for unauthorized transactions** applies only when fraud is caused by third parties or bank negligence — not when the account holder's own agent (Annie) makes the error.

**Critical protection:** The Telegram confirmation gate before every payment is both a legal protection (Rajesh explicitly authorized each transaction) and a UX safeguard.

### DPDP Act 2023 — Data Protection Implications

The Digital Personal Data Protection Act 2023 is now largely in force (full compliance deadline: May 2027 for most provisions). Implications:

- **Annie processes Rajesh's financial data** (transaction amounts, merchant names, account details). Since Annie is Rajesh's own system and Rajesh is both the data principal and data fiduciary of his own personal system, this is a self-directed data processing scenario — not a commercial data processing scenario.
- If Annie ever sends transaction data to external APIs (Claude for parsing, etc.), those APIs are the regulated entities, not Annie.
- **Key requirement:** Any third-party service Annie calls that processes Rajesh's financial data must have consent (captured at setup time). Claude API, OpenAI, etc., have their own DPA agreements.
- **Banking data is "sensitive personal data"** under DPDP. If Annie stores transaction logs (recommended for audit), they should be stored locally on Titan (not cloud), encrypted at rest.

---

## 5. Spending Limits and Controls

### UPI Transaction Limits

| Limit Type | Amount |
|-----------|--------|
| Per transaction (standard) | ₹1,00,000 |
| Per day (P2P) | ₹1,00,000 (bank-dependent; some banks: ₹25,000–₹50,000) |
| Per day (P2M — merchants) | Up to ₹10,00,000 (raised by NPCI for P2M) |
| New user (first 24h) | ₹5,000 max |
| UPI Circle full delegation — per transaction | ₹5,000 |
| UPI Circle full delegation — per month | ₹15,000 |
| Special categories (hospitals, education, govt) | ₹5,00,000 |

### Can Rajesh Set Custom Limits for Annie's UPI?

**Via UPI Circle: Yes, partially.** The ₹15,000/month and ₹5,000/transaction caps are NPCI-set — you cannot raise them, but you are choosing to stay within them.

**Via separate bank account: Full control.** Rajesh transfers ₹X to Annie's account each month. When the balance hits ₹0, Annie cannot transact. This is the cleanest spending control.

### Recommended Spending Control Architecture

```
Rajesh's main account (HDFC/ICICI/SBI)
    ↓ weekly/monthly transfer (manual or auto)
Annie's budget account (Fi/Jupiter/IDFC FIRST zero-balance)
    ↓ UPI registered to Annie's SIM
Annie's Pixel 9a
    ↓ ADB automation
PhonePe or GPay (UPI)
    ↓ payment
Merchant
```

This creates a hard financial firewall: Annie can never spend more than what's in the budget account.

### Prepaid Wallets as Safer Alternatives

| Wallet | Max Balance | Monthly Limit | Notes |
|--------|------------|---------------|-------|
| PhonePe Wallet | ₹2,00,000 (Full KYC) | None (just balance cap) | Interoperable UPI QR |
| Amazon Pay Balance | ₹2,00,000 (Full KYC) | None | Amazon purchases only + UPI QR |
| BBPS Wallets | ₹10,000 (Min KYC) | ₹10,000 | Bill payments only |
| **Note:** Paytm Wallet | N/A | N/A | **BLOCKED** — RBI restrictions since March 2024, do not use |

**Recommendation:** If Rajesh does not want a separate bank account, a **Full KYC PhonePe Wallet** or **Amazon Pay Balance** with a fixed loaded amount is the cleanest prepaid option. Top up manually; Annie can only spend what's loaded.

---

## 6. Practical Architecture Recommendations

### Option A: Separate SIM + Separate Budget Bank Account (RECOMMENDED)

**Architecture:**
- New Jio physical SIM on Rajesh's Aadhaar (routine, ₹189/month)
- New zero-balance savings account: Fi Money, Jupiter, or IDFC FIRST (instant online opening, just Aadhaar + PAN)
- Mobile number for the account = Annie's new SIM number
- Rajesh transfers ₹2,000–₹5,000/month to this account
- Annie's Pixel 9a has this SIM; GPay or PhonePe registered with this number + this account

**Pros:**
- Complete financial isolation from Rajesh's main accounts
- No risk of bank re-registration conflicts
- Full spending control (balance = spending cap)
- Legal clarity: this is Rajesh's account that he has authorized Annie to operate

**Cons:**
- Requires opening a second bank account (1 hour online)
- Must manually transfer budget each month (can be automated via NEFT standing instruction)

### Option B: UPI Circle Delegation from Rajesh's Main Account

**Architecture:**
- Keep existing SIM/account structure for Rajesh's iPhone
- Get a second SIM (Annie's Pixel 9a)
- Register the second device in UPI Circle as a "trusted secondary user" on Rajesh's GPay
- Annie's phone can initiate payments up to ₹5,000/txn and ₹15,000/month

**Pros:**
- No second bank account needed
- Uses Rajesh's existing bank account
- NPCI-blessed legitimate delegation mechanism

**Cons:**
- ₹15,000/month and ₹5,000/transaction hard limits (cannot be raised)
- More complex to set up initially
- Still relatively new feature (August 2024); app support varies

### Option C: Same Number, Forwarded SMS (Fragile, Not Recommended)

Using Rajesh's primary SIM number on Annie's phone requires physically moving the SIM or using SMS forwarding apps. This is fragile, breaks WhatsApp/Telegram on one device, and creates constant OTP-routing problems. Avoid.

### Food Delivery / Ride-Hailing Apps

**Swiggy and Zomato:**
- Both require phone number registration with OTP
- The account is tied to the phone number, not the device
- **Annie's SIM number can have its own Swiggy/Zomato account** — separate from Rajesh's
- This means Annie's food orders are on a separate account (separate order history)
- Rajesh's preferences/address must be added to Annie's account manually
- Delivery address is stored in the account, so once set up, Annie can order to Rajesh's home seamlessly

**Uber and Ola:**
- Similar: phone number = account identifier
- Annie can have a separate Uber account on her SIM
- Rajesh's payment method (Rajesh's UPI/card) can be added to Annie's account — this is allowed and common
- Ride history will be on Annie's account, not Rajesh's

**Alternative (simpler for food delivery):** Many restaurants now allow ordering via WhatsApp. If Annie's Pixel has WhatsApp on her SIM number, she can order directly from restaurant WhatsApp bots without needing Swiggy/Zomato accounts.

---

## 7. Safety and Approval Gates

### Recommended Transaction Flow (Annie)

```
1. Annie identifies payment intent (user voice/text command or proactive action)
2. Annie constructs transaction details (amount, recipient, purpose)
3. Annie sends Telegram confirmation to Rajesh:
   "Payment request: ₹350 to Swiggy Order #X12345 (Butter Chicken + Naan)
    [Approve] [Reject] [Modify]"
4. Rajesh taps [Approve] on Telegram
5. Annie executes the UPI payment via ADB
6. Annie confirms payment status: "Payment of ₹350 completed. UTR: XXXXXXXXXX"
7. Annie logs transaction to local ledger on Titan
```

### Approval Thresholds (Suggested)

| Amount | Action |
|--------|--------|
| ₹0–₹500 | Annie may be pre-authorized for specific merchants (e.g., recharge) — still logs |
| ₹501–₹5,000 | Telegram confirmation required, 2-minute timeout |
| ₹5,001+ | Explicit Telegram confirm + wait (no timeout) |
| Any new merchant | Always require Telegram confirmation, first time |

### Daily/Monthly Spending Caps (Technical)

Implement in `twf_tools.py` pattern (already established for TWF ordering):
- SQLite table: `annie_transactions(date, merchant, amount, category, approved_by)`
- Daily cap check before any payment initiation
- Monthly rollup report sent to Rajesh's Telegram every Sunday

### Transaction Logging

Every transaction should log:
- Timestamp (IST)
- Amount (₹)
- Merchant name
- UPI ID / VPA of recipient
- UTR (Unified Transaction Reference) — the bank's transaction ID
- Approval token (Telegram message ID that Rajesh approved)
- Screenshot of payment success (ADB screencap)

The UTR is the legally significant reference. Store it permanently. This is the audit trail that protects Rajesh in any dispute.

---

## 8. Summary Recommendation Table

| Question | Recommendation |
|----------|----------------|
| SIM for Annie's phone | New Jio physical SIM on Rajesh's Aadhaar. ₹189/month plan. |
| Bank account | New zero-balance account (Fi Money or IDFC FIRST) registered to Annie's SIM. Rajesh transfers budget monthly. |
| UPI app on Annie's phone | Google Pay or PhonePe registered to Annie's new number + Fi/IDFC account. |
| Rajesh's main account exposure | Zero — never linked to Annie's phone. |
| eSIM vs physical SIM | Physical SIM. Simpler, more stable for banking app binding. |
| Banking apps (HDFC/ICICI) | Do NOT install on Annie's phone with Rajesh's account. Use Annie's own account only. |
| Food delivery accounts | Create separate Swiggy/Zomato account on Annie's number. Add Rajesh's address and Annie's payment method. |
| Payment authorization | Telegram confirmation gate before every transaction above ₹500. |
| Legal status | Legal — Rajesh's own agent operating his own authorized account. |
| RBI compliance | No RBI regulation prohibits individual-authorized AI agent payments. |
| Liability | Rajesh is liable for Annie's payment errors. Telegram approval logs protect him in disputes. |
| Spending control | Budget account balance = hard cap. Plus daily limit in code. |

---

## 9. Open Questions to Resolve

1. **Which zero-balance bank account to open?** Fi Money is app-only and instant; IDFC FIRST has physical branches. Try Fi first.
2. **Will Fi/Jupiter allow UPI registration on a "secondary" number?** Yes — the account is opened with that number, so it is the primary registered mobile.
3. **Can Rajesh add his credit card as a payment method to Annie's Swiggy account?** Yes — Swiggy allows adding any card/UPI to any account. This lets Annie charge to Rajesh's credit card for cashback while operating on a separate account.
4. **UPI Circle vs separate account?** UPI Circle is fine for low-volume (₹15K/month) use. If Annie starts ordering groceries, groceries + food + recharge will exceed ₹15K/month quickly. Separate account is more scalable.
5. **ADB SMS reading for OTP:** `adb shell content query --uri content://sms/inbox --projection address,body,date` — verify this works on Pixel 9a with Android 15 before committing to this architecture.

---

## Sources

- [Airtel: How Many SIMs on Aadhaar](https://www.airtel.in/blog/prepaid/how-many-sim-cards-are-issued-on-aadhaar-card/)
- [IndiaTV: New SIM Rules 2025](https://www.indiatvnews.com/technology/news/new-sim-card-rules-aadhaar-based-biometric-verification-now-mandatory-2025-01-15-971363)
- [MobileTelco: Minimum Recharge Plans 2025](https://mobiletelco.in/telecom/minimum-recharge-plan-airtel-bsnl-jio-vi/)
- [Bajaj Finserv: UPI Two Accounts Same Number](https://www.bajajfinserv.in/two-bank-accounts-with-same-mobile-number-upi)
- [PaisaBazaar: UPI Circle Setup](https://www.paisabazaar.com/banking/upi-circle/)
- [NPCI: UPI Circle Official Circular](https://www.npci.org.in/PDF/npci/upi/circular/2024/UPI-OC-No-201-FY-24-25-Introduction-of-UPI%20Circle%E2%80%93Delegated-Payments-for-secondary-users.pdf)
- [Business Standard: NPCI Launches UPI Circle](https://www.business-standard.com/finance/personal-finance/npci-launches-upi-circle-for-secure-delegated-payments-with-trusted-users-124081900536_1.html)
- [Paytm: UPI Circle Transaction Limits](https://paytm.com/blog/payments/upi/what-is-upi-circle-transaction-limits/)
- [HDFC Bank: SIM Binding FAQ](https://www.hdfc.bank.in/need-help/mobile-banking-faqs)
- [ICICI Bank: iMobile Device FAQ](https://www.icici.bank.in/nri-banking/mobile-banking/imobile/imobile-faqs)
- [TaxGuru: RBI e-Mandate Limits 2024](https://taxguru.in/rbi/rbi-e-mandate-limits-2024.html)
- [Lexology: RBI FREE-AI Framework](https://www.lexology.com/library/detail.aspx?g=5481786f-8d45-48a6-897cd-a2b218f82d73)
- [Legal500: RBI FREE-AI Legal Landscape](https://www.legal500.com/developments/thought-leadership/rbis-free-ai-framework-navigating-the-legal-and-regulatory-landscape/)
- [IndusInd: UPI Transaction Limit Per Day](https://www.indusind.bank.in/iblogs/savings-account/upi-transaction-limit-per-day/)
- [Airtel: eSIM Pixel Activation Guide](https://www.airtel.in/blog/airtel-app/how-to-connect-esim-to-google-pixel-phone/)
- [EnKash: RBI PPI Guidelines 2025](https://www.enkash.com/resources/blog/rbi-ppi-guidelines-2025-rules-limits)
- [EY India: DPDP Act 2023 Compliance Guide](https://www.ey.com/en_in/insights/cybersecurity/decoding-the-digital-personal-data-protection-act-2023)
- [NPCI: DD News UPI P2M Limit ₹10 Lakh](https://ddnews.gov.in/en/npci-raises-daily-upi-payment-limit-on-p2m-transactions-to-%E2%82%B910-lakh/)
- [Google Pay: UPI Issuing Bank Limits](https://support.google.com/pay/india/answer/9616021?hl=en)
