Approve Transaction
The Approve Transaction API grants approval to pending transactions that have been initiated. It is necessary to provide the Transaction IDs of the specific transactions that require approval.
Method: POST
{{URL}}/jsonrpc
Headers
Name | Value |
---|---|
Content-Type | application/json |
Example
Payload Parameters
Parameter | Description |
---|---|
id Mandatory | String Unique ID for each request |
jsonrpc Mandatory | String JSON RPC VERSION - should be "2.0" |
method Mandatory | String Method Name - should be "VisaService.GetApprovalTickets" |
params Mandatory | Object |
transactionIds Mandatory | Array List of Transaction Ids to be approved |
- cURL
- C#
- Go
- NodeJs
curl --location --globoff '{{URL}}/jsonrpc' \
--header 'Content-Type: application/json' \
--data '{"id":"1","jsonrpc":"2.0","method":"VisaService.Approve","params":{"api":{"credential":"Basic ay5iYXN1dmFuQGJhbmtjYncub3JnOmUxYWY0Y2ExYzE1MDRiMTNiYzcxZjhlOTY0M2VjZTlj","signature":"{{signature}}"},"payload":{"transactionIds":["621e0fc7d711367ac1cae614"]}}}'
var options = new RestClientOptions("{{URL}}/jsonrpc")
{
MaxTimeout = -1,
};
var client = new RestClient(options);
var request = new RestRequest("", Method.Post);
request.AddHeader("Content-Type", "application/json");
var body = @"{
" + "\n" +
@" ""id"": ""1"",
" + "\n" +
@" ""jsonrpc"": ""2.0"",
" + "\n" +
@" ""method"": ""VisaService.Approve"",
" + "\n" +
@" ""params"": {
" + "\n" +
@" ""api"": {
" + "\n" +
@" ""credential"": ""Basic ay5iYXN1dmFuQGJhbmtjYncub3JnOmUxYWY0Y2ExYzE1MDRiMTNiYzcxZjhlOTY0M2VjZTlj"",
" + "\n" +
@" ""signature"": ""{{signature}}""
" + "\n" +
@" },
" + "\n" +
@" ""payload"": {
" + "\n" +
@" ""transactionIds"": [
" + "\n" +
@" ""621e0fc7d711367ac1cae614""
" + "\n" +
@" ]
" + "\n" +
@" }
" + "\n" +
@" }
" + "\n" +
@"}
" + "\n" +
@"";
request.AddStringBody(body, DataFormat.Json);
RestResponse response = await client.ExecuteAsync(request);
Console.WriteLine(response.Content);
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "{{URL}}/jsonrpc"
method := "POST"
payload := strings.NewReader(`{`+"
"+`
"id": "1",`+"
"+`
"jsonrpc": "2.0",`+"
"+`
"method": "VisaService.Approve",`+"
"+`
"params": {`+"
"+`
"api": {`+"
"+`
"credential": "Basic ay5iYXN1dmFuQGJhbmtjYncub3JnOmUxYWY0Y2ExYzE1MDRiMTNiYzcxZjhlOTY0M2VjZTlj",`+"
"+`
"signature": "{{signature}}"`+"
"+`
},`+"
"+`
"payload": {`+"
"+`
"transactionIds": [`+"
"+`
"621e0fc7d711367ac1cae614"`+"
"+`
]`+"
"+`
}`+"
"+`
}`+"
"+`
}`+"
"+`
`)
client := &http.Client {
}
req, err := http.NewRequest(method, url, payload)
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Content-Type", "application/json")
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := ioutil.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}
var https = require('follow-redirects').https;
var fs = require('fs');
var options = {
'method': 'POST',
'hostname': '{{URL}}',
'path': '/jsonrpc',
'headers': {
'Content-Type': 'application/json'
},
'maxRedirects': 20
};
var req = https.request(options, function (res) {
var chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function (chunk) {
var body = Buffer.concat(chunks);
console.log(body.toString());
});
res.on("error", function (error) {
console.error(error);
});
});
var postData = JSON.stringify({
"id": "1",
"jsonrpc": "2.0",
"method": "VisaService.Approve",
"params": {
"api": {
"credential": "Basic ay5iYXN1dmFuQGJhbmtjYncub3JnOmUxYWY0Y2ExYzE1MDRiMTNiYzcxZjhlOTY0M2VjZTlj",
"signature": "{{signature}}"
},
"payload": {
"transactionIds": [
"621e0fc7d711367ac1cae614"
]
}
}
});
req.write(postData);
req.end();
Body
{
"id": "1",
"jsonrpc": "2.0",
"method": "VisaService.Approve",
"params": {
"api": {
"credential": "Basic ay5iYXN1dmFuQGJhbmtjYncub3JnOmUxYWY0Y2ExYzE1MDRiMTNiYzcxZjhlOTY0M2VjZTlj",
"signature": "{{signature}}"
},
"payload": {
"transactionIds": [
"621e0fc7d711367ac1cae614"
]
}
}
}
Response: 201
Response Parameters
Parameter | Description |
---|---|
id | String Unique ID for each request |
jsonrpc | String JSON RPC VERSION - should be "2.0" |
result | Object |
message | String Approval confirmation message |
{
"jsonrpc": "2.0",
"result": {
"message": "Approved successfully"
},
"id": "1"
}