Update a charge
curl --request PUT \
--url https://developersandbox-api.flutterwave.com/charges/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"meta": {},
"authorization": {}
}
'import requests
url = "https://developersandbox-api.flutterwave.com/charges/{id}"
payload = {
"meta": {},
"authorization": {}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({meta: {}, authorization: {}})
};
fetch('https://developersandbox-api.flutterwave.com/charges/{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://developersandbox-api.flutterwave.com/charges/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'meta' => [
],
'authorization' => [
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://developersandbox-api.flutterwave.com/charges/{id}"
payload := strings.NewReader("{\n \"meta\": {},\n \"authorization\": {}\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://developersandbox-api.flutterwave.com/charges/{id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"meta\": {},\n \"authorization\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://developersandbox-api.flutterwave.com/charges/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"meta\": {},\n \"authorization\": {}\n}"
response = http.request(request)
puts response.read_body{
"message": "<string>",
"data": {
"id": "chg_nONgeAGY97",
"amount": 12.34,
"fees": [
{
"type": "vat",
"amount": 12.3
}
],
"billing_details": {
"email": "cornelius@gmail.com",
"name": {
"first": "King",
"middle": "Leo",
"last": "LeBron"
},
"phone": {
"country_code": "234",
"number": "08012345678"
}
},
"currency": "NGN",
"customer_id": "cus_3XarBILKQS",
"description": "<string>",
"disputed": false,
"settled": false,
"settlement_id": [
"<string>"
],
"meta": {},
"next_action": {
"type": "redirect_url",
"redirect_url": {
"url": "https://developer-sandbox-ui-sit.flutterwave.cloud/redirects?opay&token=eyJhbGciOiJIUzI1NiJ9.eyJjbGllbnRJZCI6ImNiYThhMTkwLTE2OGUtNGNmZS05NmY5LTE2NDZhYjFhOWNkYiIsImNoYXJnZUlkIjoiY2hnX25PTmdlQUdZOTciLCJzdWIiOiJjYmE4YTE5MC0xNjhlLTRjZmUtOTZmOS0xNjQ2YWIxYTljZGIiLCJpYXQiOjE3MzgzMTc3MTAsImV4cCI6MTczODMxODAxMH0.QgLoZYfNhHJOJJvOsLA9eLoxOjGF0qnuehPMgMP4zD4"
}
},
"payment_method_details": {
"id": "pmd_WRq7L4TM8p",
"type": "card",
"card": {
"expiry_month": "09",
"expiry_year": "32",
"first6": "123412",
"last4": "1234",
"network": "MASTERCARD",
"billing_address": {
"city": "New York",
"country": "US",
"line1": "123 Main Street",
"postal_code": "10001",
"state": "New York",
"line2": "Apt 4B"
},
"cof": {
"enabled": true,
"agreement_id": "Agreement00w02W1",
"recurring_amount_variability": "VARIABLE",
"agreement_type": "UNSCHEDULED",
"trace_id": "123456789"
},
"card_holder_name": "Alex James"
},
"customer_id": "cus_3XarBILKQS",
"meta": {},
"device_fingerprint": "62wd23423rq324323qew1",
"client_ip": "154.123.220.1",
"created_datetime": "2024-12-03T13:54:21.546559974Z"
},
"redirect_url": "https://www.google.com",
"refunded": false,
"reference": "<string>",
"status": "succeeded",
"created_datetime": "2023-11-07T05:31:56Z"
}
}{
"status": "failed",
"error": {
"type": "REQUEST_NOT_VALID",
"code": "10400",
"message": "Request is not valid",
"validation_errors": [
{
"field_name": "amount",
"message": "must not be null"
}
]
}
}{
"status": "failed",
"message": "UNAUTHORIZED",
"error": {
"type": "UNAUTHORIZED",
"code": "10401",
"message": "unauthorized"
}
}{
"status": "failed",
"message": "<string>",
"error": {
"type": "FORBIDDEN",
"code": "10403",
"message": "Forbidden"
}
}Charges
Update a charge
Update a charge
PUT
/
charges
/
{id}
Update a charge
curl --request PUT \
--url https://developersandbox-api.flutterwave.com/charges/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"meta": {},
"authorization": {}
}
'import requests
url = "https://developersandbox-api.flutterwave.com/charges/{id}"
payload = {
"meta": {},
"authorization": {}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({meta: {}, authorization: {}})
};
fetch('https://developersandbox-api.flutterwave.com/charges/{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://developersandbox-api.flutterwave.com/charges/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'meta' => [
],
'authorization' => [
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://developersandbox-api.flutterwave.com/charges/{id}"
payload := strings.NewReader("{\n \"meta\": {},\n \"authorization\": {}\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://developersandbox-api.flutterwave.com/charges/{id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"meta\": {},\n \"authorization\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://developersandbox-api.flutterwave.com/charges/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"meta\": {},\n \"authorization\": {}\n}"
response = http.request(request)
puts response.read_body{
"message": "<string>",
"data": {
"id": "chg_nONgeAGY97",
"amount": 12.34,
"fees": [
{
"type": "vat",
"amount": 12.3
}
],
"billing_details": {
"email": "cornelius@gmail.com",
"name": {
"first": "King",
"middle": "Leo",
"last": "LeBron"
},
"phone": {
"country_code": "234",
"number": "08012345678"
}
},
"currency": "NGN",
"customer_id": "cus_3XarBILKQS",
"description": "<string>",
"disputed": false,
"settled": false,
"settlement_id": [
"<string>"
],
"meta": {},
"next_action": {
"type": "redirect_url",
"redirect_url": {
"url": "https://developer-sandbox-ui-sit.flutterwave.cloud/redirects?opay&token=eyJhbGciOiJIUzI1NiJ9.eyJjbGllbnRJZCI6ImNiYThhMTkwLTE2OGUtNGNmZS05NmY5LTE2NDZhYjFhOWNkYiIsImNoYXJnZUlkIjoiY2hnX25PTmdlQUdZOTciLCJzdWIiOiJjYmE4YTE5MC0xNjhlLTRjZmUtOTZmOS0xNjQ2YWIxYTljZGIiLCJpYXQiOjE3MzgzMTc3MTAsImV4cCI6MTczODMxODAxMH0.QgLoZYfNhHJOJJvOsLA9eLoxOjGF0qnuehPMgMP4zD4"
}
},
"payment_method_details": {
"id": "pmd_WRq7L4TM8p",
"type": "card",
"card": {
"expiry_month": "09",
"expiry_year": "32",
"first6": "123412",
"last4": "1234",
"network": "MASTERCARD",
"billing_address": {
"city": "New York",
"country": "US",
"line1": "123 Main Street",
"postal_code": "10001",
"state": "New York",
"line2": "Apt 4B"
},
"cof": {
"enabled": true,
"agreement_id": "Agreement00w02W1",
"recurring_amount_variability": "VARIABLE",
"agreement_type": "UNSCHEDULED",
"trace_id": "123456789"
},
"card_holder_name": "Alex James"
},
"customer_id": "cus_3XarBILKQS",
"meta": {},
"device_fingerprint": "62wd23423rq324323qew1",
"client_ip": "154.123.220.1",
"created_datetime": "2024-12-03T13:54:21.546559974Z"
},
"redirect_url": "https://www.google.com",
"refunded": false,
"reference": "<string>",
"status": "succeeded",
"created_datetime": "2023-11-07T05:31:56Z"
}
}{
"status": "failed",
"error": {
"type": "REQUEST_NOT_VALID",
"code": "10400",
"message": "Request is not valid",
"validation_errors": [
{
"field_name": "amount",
"message": "must not be null"
}
]
}
}{
"status": "failed",
"message": "UNAUTHORIZED",
"error": {
"type": "UNAUTHORIZED",
"code": "10401",
"message": "unauthorized"
}
}{
"status": "failed",
"message": "<string>",
"error": {
"type": "FORBIDDEN",
"code": "10403",
"message": "Forbidden"
}
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
A unique identifier to track this operation. It must be between 12 and 255 characters in length.
Required string length:
12 - 255An optional scenario key that can be used to simulate specific behaviors or test different scenarios within the API. Providing this header allows you to trigger predefined responses or alter data based on the key's value, which can be useful for testing, development, or demonstrating specific functionalities. The key should be a string of 1 to 1000 characters.
Path Parameters
ID of the charge.
Example:
"chg_EFAHCzELJb"
Body
application/json
Was this page helpful?
⌘I