RING by Kissht: Personal Loan icon

RING personal-loan, CoinZ, CKYC and EMI APIs

OnEMI Technology Solutions Limited · Lending 4.9 ★

RING by Kissht: Personal Loan is OnEMI Technology Solutions Limited's India consumer-lending client (Play package com.ideopay.user, the Pay With Ring stack that also ships Kissht). Borrowers register with a mobile number, finish 100% digital PAN and KYC, then take an unsecured personal loan from ₹5,000 to ₹5,00,000 over 6–60 months at interest from 1% per month (published APR 17%–45%). The Play listing's worked example sanctions ₹60,000 for 18 months at 33% p.a. with a ₹4,248 processing fee including GST and a ₹4,271 EMI; net disbursal is ₹55,752. Funds are described as same-day after online agreements with RBI-registered NBFCs Si Creva Capital, MAS Financial Services, Northern Arc Capital and SMFG India Credit. The same Android client hosts PayWithRing UPI, a revolving Flexi/Ring limit, an SBM wallet-card, CoinZ rewards, Credit Pulse bureau scores, account-aggregator bank pulls, BNPL and insurance add-ons. Google Play rates it about 4.87 across 1,213,540 reviews and the listing claims 10 million-plus Indian users; it sits next to Kissht (com.fastbanking), Money View, KreditBee and CASHe for salaried and self-employed borrowers.

CoinZ reward ledgers pin coinz to the signed-in borrower, and Credit Pulse detail returns credit_score with last_score_updated_at after PAN validation.

Active EMI books expose emi_amount, outstanding_amount and loan_reference_number; the Flexi wallet snapshot carries wallet_balance and available_limit. Account-aggregator FIP lists add fip_id and fip_name for bank-statement pulls. Collections, LOS and loyalty teams reconcile disbursals, bureau-driven offers and CoinZ redemptions from those objects, and openData Studio turns them into callable open data.

Screenshots

  • RING by Kissht: Personal Loan screenshot 1
  • RING by Kissht: Personal Loan screenshot 2
  • RING by Kissht: Personal Loan screenshot 3
  • RING by Kissht: Personal Loan screenshot 4
  • RING by Kissht: Personal Loan screenshot 5
  • RING by Kissht: Personal Loan screenshot 6
  • RING by Kissht: Personal Loan screenshot 7
  • RING by Kissht: Personal Loan screenshot 8

API surface

The endpoints and request/response examples below are reconstructed from the app's interface — illustrative, not a live capture.

  • Send Android login OTP

    POST /v1/otp/dispatch osint

    Sends a login OTP to mobile_number so the RING authentication screen can verify the borrower and mint tokens.

    Auth: Unauthenticated; mobile_number and device_id in JSON body. Response seeds the OTP-confirm step.

    • mobile_number
    • device_id
    • user_id
    • otp_reference_number
    • success
    • message
    POST /v1/otp/dispatch HTTP/1.1
    Content-Type: application/json
    X-Client-OS-Version: 35
    
    {
      "mobile_number": "9876543210",
      "device_id": "a1b2c3d4e5f6"
    }
    {
      "success": true,
      "message": "OTP sent",
      "data": {
        "mobile_number": "9876543210",
        "user_id": "USR-10028441",
        "otp_reference_number": "OTP-8821"
      }
    }
  • Android OTP authentication

    POST /v1/otp/confirm osint

    Exchanges the SMS OTP for access_token, refresh_token, auth_token and user_id used on later signed-in calls.

    Auth: OTP plus mobile_number in the JSON body; response mints access_token and refresh_token.

    • access_token
    • refresh_token
    • auth_token
    • user_id
    • mobile_number
    • otp
    • device_id
    POST /v1/otp/confirm HTTP/1.1
    Content-Type: application/json
    X-Client-OS-Version: 35
    
    {
      "mobile_number": "9876543210",
      "otp": "482913",
      "device_id": "a1b2c3d4e5f6"
    }
    {
      "success": true,
      "data": {
        "access_token": "eyJhbGciOiJIUzI1NiJ9...",
        "refresh_token": "rt_9f3a",
        "auth_token": "at_7c2a",
        "user_id": "USR-10028441",
        "mobile_number": "9876543210"
      }
    }
  • Fetch CKYC record

    GET /v1/kyc/profile osint

    Returns the signed-in borrower's CKYC identity row: name, PAN, masked Aadhaar, CKYC KIN and registered address used on the digital KYC confirmation screen.

    Auth: Authorization: Bearer access_token issued after OTP sign-in; refresh_token renews the session.

    • full_name
    • date_of_birth
    • pan_number
    • aadhaar_number
    • ckyc_kin_number
    • ckyc_address
    • pincode
    • mobile_number
    GET /v1/kyc/profile HTTP/1.1
    Authorization: Bearer <access_token>
    {
      "success": true,
      "data": {
        "full_name": "PRIYA SHARMA",
        "date_of_birth": "1992-08-14",
        "pan_number": "ABCDE1234F",
        "aadhaar_number": "XXXX-XXXX-3210",
        "ckyc_kin_number": "10001234567890",
        "ckyc_address": "12 MG Road, Bengaluru 560001",
        "pincode": "560001",
        "mobile_number": "9876543210"
      }
    }
  • Fetch bureau credit score

    GET /v1/credit/bureau-score opendata

    Reads the bureau meter on the credit-score screen: current score, last refresh timestamp and the 300–900 scale bounds.

    Auth: Authorization: Bearer access_token issued after OTP sign-in; refresh_token renews the session.

    • credit_score
    • current_score
    • last_score_updated_at
    • upper_score
    • lower_score
    • pan_number
    • score
    GET /v1/credit/bureau-score HTTP/1.1
    Authorization: Bearer <access_token>
    {
      "success": true,
      "data": {
        "credit_score": 754,
        "current_score": 754,
        "last_score_updated_at": "2026-10-12T06:40:00Z",
        "upper_score": 900,
        "lower_score": 300,
        "pan_number": "ABCDE1234F",
        "score": 754
      }
    }
  • Credit Pulse user detail

    GET /v1/credit/health/profile opendata

    Loads the standalone Credit Pulse profile used on the paid bureau-toolkit screen after PAN validation.

    Auth: Authorization: Bearer access_token issued after OTP sign-in; refresh_token renews the session.

    • credit_score
    • creditPulseStatus
    • pan_number
    • last_score_updated_at
    • full_name
    GET /v1/credit/health/profile HTTP/1.1
    Authorization: Bearer <access_token>
    {
      "success": true,
      "data": {
        "credit_score": 754,
        "creditPulseStatus": "ACTIVE",
        "pan_number": "ABCDE1234F",
        "last_score_updated_at": "2026-10-12T06:40:00Z",
        "full_name": "PRIYA SHARMA"
      }
    }
  • List user loans

    GET /v1/loans openfinance

    Returns the borrower's Insta/Flexi loan book: sanctioned loan_amount, EMI, outstanding, disbursal_amount, next due date and tenure.

    Auth: Authorization: Bearer access_token issued after OTP sign-in; refresh_token renews the session.

    • active_loan
    • loan_reference_number
    • loan_status
    • loan_amount
    • emi_amount
    • emi_count
    • outstanding_amount
    • disbursal_amount
    • due_date
    • next_emi_date
    • interest_rate
    • tenure
    • processing_fee
    GET /v1/loans HTTP/1.1
    Authorization: Bearer <access_token>
    {
      "success": true,
      "data": {
        "active_loan": true,
        "loans": [
          {
            "loan_reference_number": "LN-552188",
            "loan_status": "ACTIVE",
            "loan_amount": 60000.0,
            "emi_amount": 4271.0,
            "emi_count": 18,
            "outstanding_amount": 55752.0,
            "disbursal_amount": 55752.0,
            "due_date": "2026-11-05",
            "next_emi_date": "2026-11-05",
            "interest_rate": 33.0,
            "tenure": 18,
            "processing_fee": 4248.0
          }
        ]
      }
    }
  • Credit-line offer

    GET /v1/credit-line/offer openfinance

    Reads the sanctioned Flexi/Ring line offer: offer amount, remaining available_limit, processing fee, ROI and the KFS document link.

    Auth: Authorization: Bearer access_token issued after OTP sign-in; refresh_token renews the session.

    • offer_id
    • offer_amount
    • available_limit
    • credit_limit
    • eligible_credit_limit
    • processing_fee
    • interest_rate
    • tenure
    • kfs_url
    GET /v1/credit-line/offer HTTP/1.1
    Authorization: Bearer <access_token>
    {
      "success": true,
      "data": {
        "offer_id": "OFF-22016",
        "offer_amount": 80000.0,
        "available_limit": 62500.0,
        "credit_limit": 80000.0,
        "eligible_credit_limit": 80000.0,
        "processing_fee": 1999.0,
        "interest_rate": 19.99,
        "tenure": 12,
        "kfs_url": "/v1/documents/kfs-preview"
      }
    }
  • Initiate disbursal

    POST /v1/disbursals/start openfinance

    Starts same-day bank disbursal after the borrower accepts the offer and returns disbursal_status plus the destination account reference.

    Auth: Authorization: Bearer access_token issued after OTP sign-in; refresh_token renews the session.

    • disbursal_status
    • disbursal_amount
    • disbursal_destination_reference_number
    • loan_reference_number
    • loan_amount
    POST /v1/disbursals/start HTTP/1.1
    Authorization: Bearer <access_token>
    Content-Type: application/json
    
    {
      "loan_reference_number": "LN-552188",
      "loan_amount": 60000.0
    }
    {
      "success": true,
      "data": {
        "disbursal_status": "IN_PROGRESS",
        "disbursal_amount": 55752.0,
        "disbursal_destination_reference_number": "HDFC0000123-XXXX3210",
        "loan_reference_number": "LN-552188"
      }
    }
  • Calculate foreclosure

    POST /v1/loans/foreclosure-quote openfinance

    Quotes the foreclosure payoff: remaining outstanding, foreclosure fees, extra interest and the total foreclosure_amount on the close-loan screen.

    Auth: Authorization: Bearer access_token issued after OTP sign-in; refresh_token renews the session.

    • foreclosure_amount
    • foreclosure_fees
    • outstanding_amount
    • foreclosure_interest_amount
    • due_date
    • loan_reference_number
    POST /v1/loans/foreclosure-quote HTTP/1.1
    Authorization: Bearer <access_token>
    Content-Type: application/json
    
    {
      "loan_reference_number": "LN-552188"
    }
    {
      "success": true,
      "data": {
        "foreclosure_amount": 30120.0,
        "foreclosure_fees": 499.0,
        "outstanding_amount": 28750.0,
        "foreclosure_interest_amount": 871.0,
        "due_date": "2026-11-05"
      }
    }
  • CoinZ reward balance

    GET /v1/rewards/balance opendata

    Reads the CoinZ loyalty balance shown on the RING rewards home card; redeem and history sit on sibling rewards routes.

    Auth: Authorization: Bearer access_token issued after OTP sign-in; refresh_token renews the session.

    • coinz
    • user_id
    • status
    GET /v1/rewards/balance HTTP/1.1
    Authorization: Bearer <access_token>
    {
      "success": true,
      "data": {
        "coinz": 1250,
        "user_id": "USR-10028441",
        "status": "ACTIVE"
      }
    }
  • Account-aggregator FIP list

    GET /v1/bank-sharing/providers openbanking

    Lists Financial Information Providers the borrower can consent to on the account-aggregator income-verify screen.

    Auth: Authorization: Bearer access_token issued after OTP sign-in; refresh_token renews the session.

    • fip_id
    • fip_name
    • fip_types
    • fip_list
    GET /v1/bank-sharing/providers HTTP/1.1
    Authorization: Bearer <access_token>
    {
      "success": true,
      "data": {
        "fip_list": [
          {
            "fip_id": "HDFC-FIP",
            "fip_name": "HDFC Bank",
            "fip_types": ["DEPOSIT"]
          }
        ]
      }
    }
  • Flexi wallet balance

    GET /v1/flexi-wallet/overview openbanking

    Reads the SBM/Ring Flexi wallet snapshot on the home limit card: wallet balance, savings-account number and remaining credit limit.

    Auth: Authorization: Bearer access_token issued after OTP sign-in; refresh_token renews the session.

    • wallet_balance
    • account_balance
    • wallet_ac_no
    • available_limit
    • credit_limit
    GET /v1/flexi-wallet/overview HTTP/1.1
    Authorization: Bearer <access_token>
    {
      "success": true,
      "data": {
        "wallet_balance": 12450.75,
        "account_balance": 12450.75,
        "wallet_ac_no": "SBM000112233",
        "available_limit": 62500.0,
        "credit_limit": 80000.0
      }
    }
  • Initiate repayment

    POST /v1/repayments/start openbanking

    Starts an EMI or foreclosure repayment and returns repayment_reference_number plus pending status for the Juspay/Razorpay checkout.

    Auth: Authorization: Bearer access_token issued after OTP sign-in; refresh_token renews the session.

    • status
    • repayment_amount
    • repayment_reference_number
    • loan_reference_number
    • amount
    POST /v1/repayments/start HTTP/1.1
    Authorization: Bearer <access_token>
    Content-Type: application/json
    
    {
      "amount": 4271.0,
      "loan_reference_number": "LN-552188"
    }
    {
      "success": true,
      "data": {
        "status": "PENDING",
        "repayment_amount": 4271.0,
        "repayment_reference_number": "PAY-8821",
        "loan_reference_number": "LN-552188"
      }
    }
  • Home-screen main nav

    GET /v1/home/navigation opendata

    Returns the home-screen main-nav tiles that gate Get Loan, Credit Pulse, insurance and other RING product entries.

    Auth: Authorization: Bearer access_token issued after OTP sign-in; refresh_token renews the session.

    • main_nav
    • nav_id
    • status
    GET /v1/home/navigation HTTP/1.1
    Authorization: Bearer <access_token>
    {
      "success": true,
      "data": {
        "main_nav": [
          {
            "nav_id": "GET_LOAN",
            "status": "ACTIVE"
          },
          {
            "nav_id": "CREDIT_PULSE",
            "status": "ACTIVE"
          }
        ]
      }
    }
  • Customer inbox messages

    GET /v1/messages opendata

    Pages the in-app customer inbox used for collections nudges, offer expiry and KYC reminders.

    Auth: Authorization: Bearer access_token issued after OTP sign-in; refresh_token renews the session.

    • inbox
    • status
    • user_id
    GET /v1/messages HTTP/1.1
    Authorization: Bearer <access_token>
    {
      "success": true,
      "data": {
        "inbox": [
          {
            "status": "UNREAD",
            "user_id": "USR-10028441"
          }
        ]
      }
    }

Data categories

  • identity
  • kyc
  • credit-bureau
  • loan-accounts
  • emi-schedules
  • wallets
  • loyalty
  • account-aggregator

Where teams use this data

  • EMI-book reconciliation

    Collections and LOS bots pull emi_amount, outstanding_amount, next_emi_date and loan_reference_number nightly so the servicing ledger matches the in-app EMI calendar.

  • Bureau and Credit Pulse underwriting

    Credit desks read credit_score, last_score_updated_at and pan_number beside offer_amount and available_limit before accepting or refreshing a Flexi/Ring line.

  • CKYC identity matching

    KYC ops match ckyc_kin_number, pan_number, aadhaar_number and full_name against the CKYC registry when DigiLocker or video KYC stalls.

  • CoinZ and Flexi-limit monitoring

    Growth and treasury dashboards watch coinz, wallet_balance and available_limit to see unspent Ring/SBM line and unused loyalty stock.

Frequently asked questions

What identity fields does RING expose after login?

The CKYC call returns full_name, date_of_birth, pan_number, masked aadhaar_number, ckyc_kin_number, ckyc_address and pincode on the signed-in session.

Can I read EMI, disbursal and foreclosure amounts, not just the credit line?

Yes. The loans book returns loan_amount, emi_amount, outstanding_amount, disbursal_amount and next_emi_date. The disbursal start adds disbursal_status, and the foreclosure quote returns foreclosure_amount plus foreclosure_fees.

How does RING authenticate borrowers?

The OTP dispatch and confirm calls mint access_token, refresh_token and auth_token. Later signed-in calls send Authorization: Bearer access_token. Truecaller login sits beside SMS OTP.

Which RING-only products sit on the same session?

CoinZ loyalty (coinz balance, history, redeem), standalone Credit Pulse bureau toolkit, account-aggregator FIP lists, the home-screen navigation tiles, an in-app customer inbox, plus the shared Flexi/SBM wallet and Insta EMI book.

Apps similar to RING by Kissht: Personal Loan

  • Kissht: Instant Personal Loans — Kissht is OnEMI Technology Solutions Limited's India digital-lending app for unsecured personal and business loans from ₹5,000 to ₹5,00,000 over 6–60 months at a published APR of 17%–45%.
  • KreditBee — KreditBee is Krazybee Services Limited's India lending app for personal loans from ₹6,000 to ₹10,00,000 over 6–60 months, plus UPI payments, two-wheeler loans and business loans through RBI-registered NBFC partners.
  • Moneyview — Moneyview is an India finance app that disburses personal loans from ₹5,000 to ₹10,00,000 over 3–60 months and also offers home loans, credit cards, UPI, digital gold and a free CIBIL score check.
  • Branch Instant Personal Loan — Branch Instant Personal Loan is Branch International's India app for unsecured personal loans up to ₹5,00,000 over 4–24 months, with published interest of 12%–66% p.a. and an RBI-registered NBFC lender.
  • PhonePe — PhonePe is an India UPI super-app that also runs a digital personal-loan flow with 6–48 month tenures and partner lenders including Aditya Birla, Piramal, IDFC First, L&T Finance, PayU Finance and Credit Saison India.
  • Paytm — Paytm is an India UPI super-app that also lets users apply for personal loans from ₹50,000 to ₹25,00,000 over 6–60 months at published rates of 10.99%–35% p.a.
  • Fibe — Fibe is an India instant personal-loan app offering unsecured loans up to ₹10 lakh over 6–36 months, with published interest from 18% p.a. and no foreclosure charges, plus UPI, credit-score tools and loans against mutual funds.
  • Paisabazaar: Credit Score App — Paisabazaar is an India credit-score and loan marketplace where users can check bureau scores and compare personal-loan offers from 30+ banks and NBFCs, with published rates from 9.99% p.a. and amounts up to ₹50 lakh.

Topics

  • ring by kissht
  • paywithring personal loan
  • onemi
  • coinz rewards
  • credit pulse
  • ckyc kin
  • flexi ring limit
  • account aggregator fip
  • emi calendar india
  • sbm wallet

Need this app's data API integrated?

We deliver scoped integrations for any named app — from USD 500 with source-code handoff, or hosted access billed per call. Tell us the data you need.

  • NDA + SOW on every engagement
  • Delivery in 3–7 days
  • Payment only after acceptance
  • Work scoped to authorized use

Get a quote