Payments
Retrieve a Flutterwave v4 order charge
Alias of the campaign charge retrieval logic for Redis order checkout. It validates client, program, charge id, and optional session id against stored Redis state, retrieves the provider status, updates Redis, and returns the common Flutterwave v4 charge payload.
GET
/
frontend
/
flutterwave-v4
/
order-charge
/
{client_id}
/
{program_id}
/
{charge_id}
/
{session_id}
Retrieve a Flutterwave v4 order charge
curl --request GET \
--url https://api.gratona.com/v1/frontend/flutterwave-v4/order-charge/{client_id}/{program_id}/{charge_id}/{session_id}import requests
url = "https://api.gratona.com/v1/frontend/flutterwave-v4/order-charge/{client_id}/{program_id}/{charge_id}/{session_id}"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.gratona.com/v1/frontend/flutterwave-v4/order-charge/{client_id}/{program_id}/{charge_id}/{session_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.gratona.com/v1/frontend/flutterwave-v4/order-charge/{client_id}/{program_id}/{charge_id}/{session_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.gratona.com/v1/frontend/flutterwave-v4/order-charge/{client_id}/{program_id}/{charge_id}/{session_id}"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.gratona.com/v1/frontend/flutterwave-v4/order-charge/{client_id}/{program_id}/{charge_id}/{session_id}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gratona.com/v1/frontend/flutterwave-v4/order-charge/{client_id}/{program_id}/{charge_id}/{session_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{}{
"message": "Not Found",
"status": "error"
}{
"message": "Something went wrong. Please try again.",
"status": "error",
"error": "invalid_request",
"code": "DONOR_NOT_FOUND"
}{
"message": "Something went wrong. Please try again.",
"status": "error",
"error": "invalid_request",
"code": "DONOR_NOT_FOUND"
}Path Parameters
Client id stored in the Redis charge state.
Program id stored in the Redis charge state.
Flutterwave charge id to retrieve.
Optional Redis frontend session id. When supplied, it must match the session stored for the charge.
Response
Current Flutterwave order charge status.
The response is of type object.
⌘I
Retrieve a Flutterwave v4 order charge
curl --request GET \
--url https://api.gratona.com/v1/frontend/flutterwave-v4/order-charge/{client_id}/{program_id}/{charge_id}/{session_id}import requests
url = "https://api.gratona.com/v1/frontend/flutterwave-v4/order-charge/{client_id}/{program_id}/{charge_id}/{session_id}"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.gratona.com/v1/frontend/flutterwave-v4/order-charge/{client_id}/{program_id}/{charge_id}/{session_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.gratona.com/v1/frontend/flutterwave-v4/order-charge/{client_id}/{program_id}/{charge_id}/{session_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.gratona.com/v1/frontend/flutterwave-v4/order-charge/{client_id}/{program_id}/{charge_id}/{session_id}"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.gratona.com/v1/frontend/flutterwave-v4/order-charge/{client_id}/{program_id}/{charge_id}/{session_id}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gratona.com/v1/frontend/flutterwave-v4/order-charge/{client_id}/{program_id}/{charge_id}/{session_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{}{
"message": "Not Found",
"status": "error"
}{
"message": "Something went wrong. Please try again.",
"status": "error",
"error": "invalid_request",
"code": "DONOR_NOT_FOUND"
}{
"message": "Something went wrong. Please try again.",
"status": "error",
"error": "invalid_request",
"code": "DONOR_NOT_FOUND"
}