Integrate With TPAP Pro

Step-by-step guide on how to integrate with TPAP Pro.

Available in

IN

India


Integrate TPAP Pro by following these steps:

Following are the flows available on our TPAP stack:

Customer Onboarding

Customer onboarding is a process of binding and registering the customer device by validating the mobile number. The customer's payment sources are linked to ensure seamless and hassle-free transactions. Additionally, You must create a fingerprint that acts as a unique identifier generated based on various attributes of the device. Know more about

.

Create a Device Fingerprint

Create an unique identifier using various attributes of the device. This identifier is used to recognise the specific device during subsequent transactions.

To generate a device fingerprint for the customer:

  1. Create a string with the following fields separated by a pipe (|).

    AttributesDescription
    SSIDA sim subscriber id from the native sim module.
    APP.IDThe package name of the app.
    device.UUIDThe advertisement id on Android.
    mobile_numberCustomer’s phone number present on the device.
    customer_referenceThe customer reference.
    timestampThe current time in the UNIX timestamp. Ensure to pass the same timestamp in the request header for x-device-fingerprint-timestamp .
    SSID|APP.ID|device.UUID|mobile_number|merchantCustomerId|timestamp
  2. Hash this string using the SHA-256 algorithm.

    deviceFingerprintPayload =
    "<ssid|app.id|device.uuid|mobile_number|customer_reference|timestamp>"MessageDigest digest = MessageDigest.getInstance("SHA-256");
    byte[] deviceFingerprint = digest.digest(deviceFingerprintPayload.getBytes(StandardCharsets.UTF_8));
  3. Send the timestamp within the headers.

Device Binding Status

The following table lists the different device binding status and their description. Know more about

.

StatusStepDescription
mobile_verification_pendingmobile_verificationThe mobile number verification is still pending by the receiver. This means the PSP is yet to receive a callback from the entity that is supposed to verify the number. You must poll the API again.
mobile_verification_expiredmobile_verificationPSP did not receive a callback from the entity that is supposed to verify the number within the expiry time. Hence, the device binding has expired. This is a terminal failure status, and you must stop polling.
mobile_verification_mismatchmobile_verificationThe customer mobile number received from the entity that is supposed to verify the number differs from the one you passed. This is a terminal failure status, and you can stop polling.
verifiedmobile_verificationThe verification is successful.
mobile_verification_failedmobile_verificationThe mobile verification is failed due to the invalid device details.
device_already_verifieddevice_bindingThe device is already verified.

Funds and Accounts Management

Funds and accounts management helps you manage payment sources and providers. The Razorpay APIs let you add more accounts, delete existing accounts and change PINs for accounts for hassle-free transactions. Know more about

.

Payments

The Payment module enables you to make various transactions using payment APIs. Below are the supported transaction types:

  • : Facilitate P2P (peer-to-peer) or P2M (peer-to-merchant) payments. The supported payment transfer types are:
    • Pay from a VPA to VPA.
    • Pay from a VPA to a payment source.
    • Pay from a payment source to a VPA.
    • Pay from one payment source to another.
    This API lets you enable the following payment options for customers:
    • Scan and Pay (UPI QR & Bharat QR): Customers can QR codes and make payments.
    • Intent Payment: Customers can make payment through an intent link.
    • Payment to a PSP merchant: Customers can make a payment using the merchant VPA.
    • P2P Pay (VPA and Account+IFSC): A person can pay to another person using a TPAP.
    • Self Pay: Customers can make transactions between their own accounts.
  • : This API lets you collect payments from others.
  • : This API lets you approve payment collect requests.
  • : This API lets you reject payment collect requests.

Mandates

You can create and manage mandates using the Razorpay APIs. Know more about

.

Complaints API

The Complaints API enables efficient handling of transaction-related issues.

Raise Complaint

Submit complaints about transactions to ensure prompt resolution.

Check Complaint Status

Track the progress and status of submitted complaints.

UPI Mapper

UPI Mapper provides a 1:1 mapping between VPAs and mobile or UPI numbers, enabling efficient and streamlined identification.

Credit Card on UPI

Enable credit card payments via UPI for enhanced flexibility. All features of account management apply to credit cards as well.

Recurring Mandates

Set up automated recurring payments for a variety of use cases, simplifying repeated transactions.

UPI One-time Mandate

Authorise one-time payments for specific transactions, offering greater flexibility and control.

Credit Lines on UPI

Enable transactions using pre-approved credit lines, helping users manage finances more effectively.

UPI Lite

Support low-value transactions with a simplified process, ensuring quick and seamless payments.

Global UPI

Enable international UPI payments, making cross-border transactions smooth and hassle-free.

Consider the following steps before taking your integration live.

Switch Test API Keys With Live API Keys

After confirming if your integration is working successfully, you can take the integration live by switching the Test Mode API Keys with the Live Mode Keys.

Watch this video to know how to generate Live API keys:

Subscribe to Webhooks

to configure and receive notifications when a specific event occurs. When one of these events is triggered, we send an HTTP POST payload in JSON to the webhook's configured URL.

Below are the headers you should pass while polling different APIs.

Header NameData TypeMandatory/OptionalDescription
AuthorisationstringMandatoryThe standard authorisation.
Content TypestringMandatoryThe content type. Supported value: application/json .
x-device-fingerprintstringMandatoryThe device fingerprint used to validate the request coming from the expected device.
x-device-fingerprint-timestampstringMandatoryThe UNIX timestamp to generate the device fingerprint.
x-customer-referencestringMandatoryThe unique identifier of the customer created by TPAP.

Is this integration guide useful?


integrate
TPAP Pro
go live checklist
tpap pro flows