• Getting Started
    • Website Integration
      Mobile Integration (Android/IOS)
      Enterprise Solutions
      Accept Payments
      Process Payments
      API References
      Other Processes

      Fetch Bin Details API

      Checksum required: Yes

      Use Case

      • To check if the BIN entered by the user is a valid card BIN from which Paytm can process a payment
      • To check if subscription payments is available on the BIN. e.g. subscription is not supported on SBI DC. Hence if a user enters a BIN belonging to SBI DC, subscription unavailability will be indicated in isSubscriptionAvailable attribute
      • To get the card details like card scheme and issuing bank of the BIN
      • To get past 15 minutes success rate on the BIN. In case the success rate is low, then the customer can be notified to use another card or payment method


      • This API should be called the moment customer completes entering first 6 digits of the card. In case of an error received in response, same should be notified to the customer instantly

      Request Attributes

      API Content format: JSON


      version String (4)Version of the API. Current version is v1.No
      requestTimestamp String (15)UNIX timestamp of the time request is being sentNo
      channelId String (3)Channel through which call is initiated.
      For websites, the value is WEB.
      For Mobile websites/App, the value is WAP.
      txnToken String (64)Unique Transaction Token generated in response of Initiate Transaction API / Initiate Subscription API. Merchant has to send back the same transaction token everytime in each subsequent API Call to communicate with PG.Yes


      bin String (6)Starting 6 digits of credit or debit card numberYes
      paymentMode String (3)The payment mode used by customer for transaction. If it is 'EMI', we check for EMI details for a particular emiType and channelCode only.No
      emiType String (11)CREDIT_CARD/DEBIT_CARDNo
      channelCode String (5)Bank Code for which EMI details are requiredNo
      txnType String (7)Payment flow - NONE/ADDANDPAY/HYBRIDNo
      isEMIDetail StringReturned in response if InitiateTxn request had requestType PAYMENT, NATIVE_SUBSCRIPTIONNo

      Response Attributes


      version String (2)Version of the API passed in the request.No
      responseTimestamp String (15)UNIX Timestamp of the responseYes


      binDetail BinDetailBIN details like issuing bank name, Card scheme (Visa/Master..) are provided hereYes
      hasLowSuccessRate hasLowSuccessIdentifier to depict low success rate on the payment mode/instrument in past 15 minutes. If the success rate is low, user should be communicated the same on the cashier page and motivated to choose a different payment instrumentYes
      authModes Array of String (5)Auth mode available on BIN (PIN/OTP)Yes
      iconUrl String (255)Icon URL of issuing bank of saved cardYes
      resultInfo ResultInfoResult information of API requestYes
      errorMessageCaptures the error encounteredYes
      isSubscriptionAvailable BooleanDepicts if subscription payments is available on this BIN or not. In case the value true, then subscription payments is supportedNo
      pcf PCFPost convenience fees if applicableNo
      extraParamsMap Map<String , Object>Map for any additional data that is required to be provided in the responseNo
      isHybridDisabled BooleanSpecifies whether Hybrid paymode is disabled on this card or notYes


      bin String (6)Bank Identification NumberYes
      issuingBank String (100)issuing BankYes
      issuingBankCode String (15)Bank Code. For eg : SBI,HDFCYes
      paymentMode String (15)The payment mode used by customer for transaction. If it is 'EMI', we check for EMI details for a particular emiType and channelCode only.Yes
      channelName String (15)Name of card scheme of the BIN - Visa,Master, Rupay etc.Yes
      channelCode String (15)Code of card scheme of the BIN - Visa, Master, Rupay etc.Yes
      cnMin String (2)Minimum card number digitsYes
      cnMax String (2)Maximum card number digitsYes
      cvvR String (5)CVV required or notYes
      cvvL String (1)CVV lengthYes
      expR String (5)Expiry required or notYes
      isIndian String (5)Whether card is Indian or notYes
      isActive String (5)BIN status (true, false)Yes


      status BooleanIf success rate is lower in last 15 minutes, then the value is returned as trueYes
      msg String (500)Message to display the user about the low success rateNo


      feeAmount MoneyPost convenience feesYes
      taxAmount MoneyTotal tax amountYes
      totalTransactionAmount MoneyTotal txn amount after including pcf chargesYes


      currency String(3)Currency Code (INR)Yes
      value String (regexp = [0-9]+([.][0-9]{1, 2})?, length less than 16 characters)Transaction value upto decimalYes


      resultCodeStringResult code returned to merchant . Max length of result code can be 64Yes
      resultStatusStringStatus of API call
      (S:Success, F:Failure, U:Unknown)
      resultMsgString (256)Result Message contains information about the result.Yes

      Response Codes and Messages

      1006FSession Expired Exception
      200Fsuccessful operation
      2013FMid in the query PARAM doesn’t match with the Mid send in the request
      2014FOrderId in the query param doesn’t match with the OrderId send in the request
      1003FBin number is not valid
      2011FPayment not allowed for your card,Please try again using other card
      00000900USystem error


      Staging: https://securegw-stage.paytm.in/fetchBinDetail?mid={mid}&orderId={order-id}

      Production: https://securegw.paytm.in/fetchBinDetail?mid={mid}&orderId={order-id}

      Request CodeResponse JSON
      curl -X POST 'https://securegw-stage.paytm.in/fetchBinDetail?mid={mid}&orderId={order-id}' --header 'Content-Type: application/json' --data '{"head":{"txnToken":"{transaction-token}"},"body":{"bin":"{bin}"}}'