Insta Deactivate VPA API

The Insta Deactivate VPA API is used to deactivate the VPA embedded in the insta static QR permanently. After the VPA is deactivated using this API, the QR cannot be scanned from any UPI application like Google Pay, PhonePe etc and transactions cannot be done through UPI in future.

Environment

Request parameter

Parameter

Description

Value

key

This parameter must contain the merchant key provided by PayU.
Reference: For more information on how to generate the Key and Salt, refer to any of the following:

  • *Production**: Generate Production Merchant Key and Sat.
  • *Test**: Generate Test Merchant Key and Salt.

Your Test Key

command

This parameter must have the API command name.

expire_insta_account

hash

This parameter must contain the hash value to be calculated at your end. The string used for calculating the hash as follows:

sha512(key|command|var1|salt)

c24ee06c7cf40314ede424
b1fcc2b97a12f97a7d3dd2
06876eef16660eb09fd374
fd82861f66d8152e

var1

This parameter must contain the fields in a JSON format. For more information, refer to DESCRIPTION OF VAR1 PARAMETER FIELDS.

Refer to SAMPLE VAR1 section.

Fields in var1 parameter description

Key

Description

Sample

merchantVpa mandatory

Merchant's VPA is the VPA which needs to be deactivated/blocked permanently

smsplustestqr789@indus

instaProduct
mandatory

QR generation flag. Fixed value - qr

qr

remarks
optional

This can be used for audit trail later

Account closed

Sample var1

{
  "merchantVpa": "smsplustestqr789@indus",
  "instaProduct": "qr"
}

Sample request

curl --location --request POST 'https://info.payu.in/merchant/postservice.php' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'key=J****g' \
--data-urlencode 'command=expire_insta_account' \
--data-urlencode 'hash=d4d166daed5252d9ae592f65b54b4d38a4f4c1daa24bd5d8902c58960f6556240859398417b1634da3ed4f92f4e88f7c9426e78efdb69aae26ad95d97266f8d5' \
--data-urlencode 'var1={"merchantVpa":"smsplustestqr789@indus","instaProduct":"qr"}'
import http.client

conn = http.client.HTTPSConnection("info.payu.in")
payload = 'key=J****g&command=expire_insta_account&hash=d4d166daed5252d9ae592f65b54b4d38a4f4c1daa24bd5d8902c58960f6556240859398417b1634da3ed4f92f4e88f7c9426e78efdb69aae26ad95d97266f8d5&var1=%7B%22merchantVpa%22%3A%22smsplustestqr789%40indus%22%2C%22instaProduct%22%3A%22qr%22%7D'
headers = {
  'Content-Type': 'application/x-www-form-urlencoded'
}
conn.request("POST", "/merchant/postservice.php", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://info.payu.in/merchant/postservice.php',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS => 'key=J****g&command=expire_insta_account&hash=d4d166daed5252d9ae592f65b54b4d38a4f4c1daa24bd5d8902c58960f6556240859398417b1634da3ed4f92f4e88f7c9426e78efdb69aae26ad95d97266f8d5&var1=%7B%22merchantVpa%22%3A%22smsplustestqr789%40indus%22%2C%22instaProduct%22%3A%22qr%22%7D',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/x-www-form-urlencoded'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
OkHttpClient client = new OkHttpClient().newBuilder()
  .build();
MediaType mediaType = MediaType.parse("application/x-www-form-urlencoded");
RequestBody body = RequestBody.create(mediaType, "key=J****g&command=expire_insta_account&hash=d4d166daed5252d9ae592f65b54b4d38a4f4c1daa24bd5d8902c58960f6556240859398417b1634da3ed4f92f4e88f7c9426e78efdb69aae26ad95d97266f8d5&var1={\"merchantVpa\":\"smsplustestqr789@indus\",\"instaProduct\":\"qr\"}");
Request request = new Request.Builder()
  .url("https://info.payu.in/merchant/postservice.php")
  .method("POST", body)
  .addHeader("Content-Type", "application/x-www-form-urlencoded")
  .build();
Response response = client.newCall(request).execute();

Response parameters

Parameter

Description

status

This parameter returns the status of web service call. The status can be any of the following:

0 - If web service call failed.
1 - If web service call succeeded

msg

The following message is displayed to indicate that the VPA is permanently blocked now, and the QR cannot be scanned to make any UPI transactions.
merchantVpa deactivated

Sample response

{
  "status": "1",
  "msg": "merchantVpa deactivated"
}