---
title: UPI One-Time Mandate Use Cases
slug: one-time-mandate/use-cases
excerpt: >-
  Use UPI One-Time Mandate for rentals, insurance, hotel bookings, groceries,
  home services, and high-demand allocations.
hidden: false
sidebar_order: 3
metadata:
  title: UPI One-Time Mandate Use Cases | Pine Labs Online Payments
  description: >-
    Explore practical UPI OTM use cases for rentals, insurance, hotel bookings,
    grocery delivery, home services, ticketing, and lotteries.
  keywords: >-
    UPI OTM use cases, UPI One-Time Mandate examples, block funds use cases,
    deferred capture UPI
sidebar_label: Use Cases
---

UPI One-Time Mandate is best suited for transactions where the merchant needs payment assurance upfront but should debit the customer only after fulfilment, approval, or final bill calculation.

## Use case fit checklist

Use UPI OTM when most of these conditions apply:

- The final charge amount may be lower than the estimated amount.
- The delivery or service is completed after checkout.
- The customer should not be debited before fulfilment.
- Failed payment at fulfilment would create operational or revenue risk.
- Refund volume is high because orders change or get cancelled after checkout.

## Common use cases

<div className="not-prose card-grid-3">
  <div className="card-grid-item">
    <span className="inline-flex items-center justify-center w-10 h-10 rounded-lg bg-[#D0F6E5]/60 mb-2"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#003434" strokeWidth="1.8" strokeLinecap="round" strokeLinejoin="round"><path d="M14 16H9m10 0h2v-6a2 2 0 0 0-2-2h-3l-2-4H8L6 8H3a2 2 0 0 0-2 2v6h2"/><circle cx="6.5" cy="16.5" r="2.5"/><circle cx="17.5" cy="16.5" r="2.5"/></svg></span>
    <h3>Travel and vehicle rentals</h3>
    <p>Block a security deposit and estimated trip charges before handover. Capture the final bill after vehicle return, then release the unused balance.</p>
  </div>
  <div className="card-grid-item">
    <span className="inline-flex items-center justify-center w-10 h-10 rounded-lg bg-[#D0F6E5]/60 mb-2"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#003434" strokeWidth="1.8" strokeLinecap="round" strokeLinejoin="round"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.68 0C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.5 3.8 17 5 19 5a1 1 0 0 1 1 1v7Z"/><path d="m9 12 2 2 4-4"/></svg></span>
    <h3>Insurance underwriting</h3>
    <p>Block the premium while medical review or risk checks are in progress. Capture only after policy approval, or release the block if rejected.</p>
  </div>
  <div className="card-grid-item">
    <span className="inline-flex items-center justify-center w-10 h-10 rounded-lg bg-[#D0F6E5]/60 mb-2"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#003434" strokeWidth="1.8" strokeLinecap="round" strokeLinejoin="round"><path d="M3 21h18"/><path d="M5 21V7l8-4v18"/><path d="M19 21V11l-6-4"/><path d="M9 9h.01"/><path d="M9 13h.01"/><path d="M9 17h.01"/></svg></span>
    <h3>Hotel and hospitality bookings</h3>
    <p>Reserve the estimated stay amount and incidental buffer during booking. Capture the final checkout amount and release the remaining funds.</p>
  </div>
  <div className="card-grid-item">
    <span className="inline-flex items-center justify-center w-10 h-10 rounded-lg bg-[#D0F6E5]/60 mb-2"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#003434" strokeWidth="1.8" strokeLinecap="round" strokeLinejoin="round"><circle cx="8" cy="21" r="1"/><circle cx="19" cy="21" r="1"/><path d="M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h8.78a2 2 0 0 0 1.95-1.57l1.65-7.43H5.12"/><path d="M9 7c0-2 1.5-3.5 3-3.5S15 5 15 7"/></svg></span>
    <h3>Fresh grocery delivery</h3>
    <p>Block the maximum estimated cart value when item weights or availability can change. Capture the exact packed order value after fulfilment.</p>
  </div>
  <div className="card-grid-item">
    <span className="inline-flex items-center justify-center w-10 h-10 rounded-lg bg-[#D0F6E5]/60 mb-2"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#003434" strokeWidth="1.8" strokeLinecap="round" strokeLinejoin="round"><path d="M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.1-3.1a6 6 0 0 1-7.9 7.9l-6 6a2.1 2.1 0 0 1-3-3l6-6a6 6 0 0 1 7.9-7.9l-3.1 3.1Z"/></svg></span>
    <h3>Home services and repairs</h3>
    <p>Block the base service fee plus a repair buffer at booking. Capture the approved final work order amount after the job is complete.</p>
  </div>
  <div className="card-grid-item">
    <span className="inline-flex items-center justify-center w-10 h-10 rounded-lg bg-[#D0F6E5]/60 mb-2"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#003434" strokeWidth="1.8" strokeLinecap="round" strokeLinejoin="round"><path d="M2 9a3 3 0 0 1 0 6v2a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-2a3 3 0 0 1 0-6V7a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2Z"/><path d="M13 5v2"/><path d="M13 17v2"/><path d="M13 11v2"/></svg></span>
    <h3>Ticketing and lotteries</h3>
    <p>Block funds for applicants in a high-demand allocation pool. Capture only for selected users and release everyone else's block instantly.</p>
  </div>
</div>

## Choosing between OTM and immediate UPI debit

| Scenario | Recommended flow | Reason |
|---|---|---|
| Product is delivered instantly | Standard UPI payment | The final amount and fulfilment are known at checkout |
| Order can be cancelled before fulfilment | UPI OTM | Release is simpler than post-debit refund |
| Final bill can change | UPI OTM | Capture only the final payable amount |
| Multiple debits are needed from one approved pool | UPI Reserve Pay | OTM supports one successful capture |

## Next steps

- Review [Integration Steps](/upi-one-time-mandate/integration-steps) to implement the OTM lifecycle.
- Review [FAQs](/upi-one-time-mandate/faqs) for limits, validity, and capture behaviour.
