Confirm Disbursement
POST {api-url}/confirm?ns={community}
Confirms a completed disbursement, releasing the funds to the recipients and making the vouchers spendable. This is the final step in the process. This endpoint can also be used to schedule the confirmation for a future date and time.
Parameters
Section titled βParametersβ| Field | Type | Requirement | Description |
|---|---|---|---|
UIDx | Integer | Required | The unique internal identifier for this disbursement. |
ShouldNotify | Boolean | Required | If true, recipients will be notified upon confirmation. |
ScheduledTime | String | Optional | If provided, schedules the release of funds at the specified GMT+2 time (YYYY/MM/DD HH:MM). "" (empty string) reverts the status back to Awaiting Confirmation. null will release funds immediately. |
Metadata | String | Optional | Any other detail to store on this transaction. |
Example Body
Section titled βExample Bodyβ{ "UIDx": 637, "ScheduledTime": null, "ShouldNotify": true, "Metadata": "{\"ActorUserIDs\": \"547828938941114\"}"}Parameters
Section titled βParametersβ| Field | Type | Description |
|---|---|---|
Action | String | Describes the result of the call (Confirmed, Created Schedule, Deleted Schedule). |
VoucherRoute | Object | The complete and updated VoucherRoute object for the disbursement. |
Example Body
Section titled βExample Bodyβ{ "Action": "Confirmed", "VoucherRoute": { "TID": "14966718673", "ReverseTID": "", "UIDx": 637, "DisbursementID": "7bcddfd9-5b87-4d61-adb7-16f2c0cb32c1", "Name": "Disbursement Test #1", "Status": "Released", "Username": "FunderDemo", "ExpectedTotal": 208006280, "FeesTotal": 99960, "RollbackTotal": 0, "RollbackFeesTotal": 0, "CostPerManualVoucher": 100, "CostPerUserVoucher": 10, "VoucherCount": 9996, "ScheduledTime": "2025/11/06 13:52", "ShouldNotify": false, "IsSingleUse": true, "ShowVouchers": false, "CheckIDCellMatch": true, "URL": "https://dev1celbux.appspot.com/FAPI?cmd=wbin", "Community": "fundingco" }}curl -X POST '{api-url}/confirm?ns={community}' \-H 'Authorization: bearer YOUR_TOKEN' \-H 'Content-Type: application/json' \-d '{"UIDx":637,"ScheduledTime":null,"ShouldNotify":true,"Metadata":"{\"ActorUserIDs\": \"547828938941114\"}"}'using System;using System.Net.Http;using System.Text;using System.Threading.Tasks;
class Program{ static async Task Main(string[] args) { var client = new HttpClient(); var request = new HttpRequestMessage(HttpMethod.Post, "{api-url}/confirm?ns={community}"); request.Headers.Add("Authorization", "bearer YOUR_TOKEN");
var jsonPayload = @"{ ""UIDx"": 637, ""ScheduledTime"": null, ""ShouldNotify"": true, ""Metadata"": ""{\""ActorUserIDs\"": \""547828938941114\""}""}"; request.Content = new StringContent(jsonPayload, Encoding.UTF8, "application/json");
var response = await client.SendAsync(request); response.EnsureSuccessStatusCode();
var responseBody = await response.Content.ReadAsStringAsync(); Console.WriteLine(responseBody); }}package main
import ( "fmt" "io/ioutil" "net/http" "strings")
func main() { url := "{api-url}/confirm?ns={community}" payload := strings.NewReader(`{"UIDx":637,"ScheduledTime":null,"ShouldNotify":true,"Metadata":"{\"ActorUserIDs\": \"547828938941114\"}"}`)
req, _ := http.NewRequest("POST", url, payload) req.Header.Add("Authorization", "bearer YOUR_TOKEN") req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req) defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body) fmt.Println(string(body))}import java.net.URI;import java.net.http.HttpClient;import java.net.http.HttpRequest;import java.net.http.HttpResponse;
public class ApiRequest { public static void main(String[] args) throws Exception { var payload = """ { "UIDx": 637, "ScheduledTime": null, "ShouldNotify": true, "Metadata": "{\"ActorUserIDs\": \"547828938941114\"}"} """;
var request = HttpRequest.newBuilder() .uri(URI.create("{api-url}/confirm?ns={community}")) .header("Authorization", "bearer YOUR_TOKEN") .header("Content-Type", "application/json") .POST(HttpRequest.BodyPublishers.ofString(payload)) .build();
var response = HttpClient.newHttpClient().send(request, HttpResponse.BodyHandlers.ofString()); System.out.println(response.body()); }}// Requires Node.js v18+(async () => { const url = '{api-url}/confirm?ns={community}'; const payload = { "UIDx": 637, "ScheduledTime": null, "ShouldNotify": true, "Metadata": { "ActorUserIDs": "547828938941114" }};
try { const response = await fetch(url, { method: 'POST', headers: { 'Authorization': 'bearer YOUR_TOKEN', 'Content-Type': 'application/json' }, body: JSON.stringify(payload) }); const data = await response.json(); console.log(data); } catch (error) { console.error('Error:', error); }})();<?php$curl = curl_init();
curl_setopt_array($curl, array( CURLOPT_URL => '{api-url}/confirm?ns={community}', 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 => '{ "UIDx": 637, "ScheduledTime": null, "ShouldNotify": true, "Metadata": "{\"ActorUserIDs\": \"547828938941114\"}"}', CURLOPT_HTTPHEADER => array( 'Authorization: bearer YOUR_TOKEN', 'Content-Type: application/json' ),));
$response = curl_exec($curl);curl_close($curl);echo $response;import requestsimport json
url = "{api-url}/confirm?ns={community}"payload = { "UIDx": 637, "ScheduledTime": None, "ShouldNotify": True, "Metadata": { "ActorUserIDs": "547828938941114" }}
headers = { "Authorization": "bearer YOUR_TOKEN", "Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)print(response.json())require 'uri'require 'net/http'require 'json'
url = URI("{api-url}/confirm?ns={community}")
http = Net::HTTP.new(url.host, url.port)http.use_ssl = true
request = Net::HTTP::Post.new(url)request["Authorization"] = 'bearer YOUR_TOKEN'request["Content-Type"] = 'application/json'
request.body = JSON.dump({ "UIDx": 637, "ScheduledTime": null, "ShouldNotify": true, "Metadata": { "ActorUserIDs": "547828938941114" }})
response = http.request(request)puts response.read_body