Bills & payments

Send a Razorpay payment link with a bill

Customer taps a link, pays via UPI/card/wallet, money goes directly to your bank. LFG never holds funds.

10 min setup + 30 sec per bill read

Customer taps a link, pays via UPI/card/wallet, money goes directly to your bank. LFG never holds funds.

Before you start

  • A Razorpay account (free signup at razorpay.com)

Steps

  1. 01

    Create a Razorpay account

    Sign up at razorpay.com — needs your PAN, GST (if applicable), bank details. Takes 5-10 min.

    dashboard.razorpay.com/signup
  2. 02

    Generate API keys

    Razorpay Dashboard → Settings → API Keys → Generate Key. Copy Key ID (rzp_live_… or rzp_test_…) and Key Secret. The secret is only shown once — save it now.

    Key ID
    rzp_live_XXXXXXXXXXXX
    Key Secret
    shown only once — save now
  3. 03

    Connect in LFG

    Open any bill → click "Connect Razorpay to send a payment link" → paste both keys → Save. LFG encrypts the secret at rest.

    Connect Razorpay
  4. 04

    (Optional) Set up auto-mark-paid

    Razorpay → Webhooks → Add webhook. URL: https://leadforgrow.com/api/webhooks/razorpay. Events: payment_link.paid, payment_link.expired, payment_link.cancelled. Add a secret string, paste that same string into LFG under Webhook Secret. Now paid bills auto-flip to "Paid" without manual clicks.

  5. 05

    Send a payment link

    Bill detail → "Send payment link on WhatsApp". Customer receives a link, taps, pays. Money settles directly to your bank via Razorpay.

    Pay Your Business
    ₹3,400
    rzp.io/i/abc123

Tips

  • Razorpay charges 2% + GST per transaction. LFG takes zero cut.
  • Use test keys (rzp_test_…) first. Test payments are free and use test cards.
  • When the customer pays, they see YOUR business name on the Razorpay page, not LeadForGrow.

Common issues

  • "Razorpay refused the link request"

    Usually invalid keys. Regenerate in Razorpay Dashboard and re-paste. Also check the account is "Live" not just "Activated for tests".

  • Customer pays but bill stays "Sent"

    Webhook is not set up. Follow step 4 above, or click "Mark as paid" manually.