Schedule Payments›Manage
Pay now
Charge this schedule's payment immediately, on top of its normal plan. The schedule's dates, status and cycle are unchanged. Works on active and paused schedules (use Retry for failed). The result arrives on your webhook.
Send your secret key in the
P-API-KEY header. Keep it on your server, never in an app or browser.Responses
- 200Success
- 422Error
Request
curl --request POST \ --url 'https://api.paybeta.ng/v2/scheduled-payments/scheduleReference/pay-now' \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'P-API-KEY: YOUR_SECRET_KEY'curl --request POST \ --url 'https://api.sandbox.paybeta.ng/v2/scheduled-payments/scheduleReference/pay-now' \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'P-API-KEY: YOUR_SECRET_KEY'
<?php use Illuminate\Support\Facades\Http; $response = Http::withHeaders([ 'Accept' => 'application/json', 'Content-Type' => 'application/json', 'P-API-KEY' => 'YOUR_SECRET_KEY', ])->post('https://api.paybeta.ng/v2/scheduled-payments/scheduleReference/pay-now'); $data = $response->json();<?php use Illuminate\Support\Facades\Http; $response = Http::withHeaders([ 'Accept' => 'application/json', 'Content-Type' => 'application/json', 'P-API-KEY' => 'YOUR_SECRET_KEY', ])->post('https://api.sandbox.paybeta.ng/v2/scheduled-payments/scheduleReference/pay-now'); $data = $response->json();
const response = await fetch('https://api.paybeta.ng/v2/scheduled-payments/scheduleReference/pay-now', { method: 'POST', headers: { "Accept": "application/json", "Content-Type": "application/json", "P-API-KEY": "YOUR_SECRET_KEY", }, }); const data = await response.json();const response = await fetch('https://api.sandbox.paybeta.ng/v2/scheduled-payments/scheduleReference/pay-now', { method: 'POST', headers: { "Accept": "application/json", "Content-Type": "application/json", "P-API-KEY": "YOUR_SECRET_KEY", }, }); const data = await response.json();
import requests response = requests.request( "POST", "https://api.paybeta.ng/v2/scheduled-payments/scheduleReference/pay-now", headers={ "Accept": "application/json", "Content-Type": "application/json", "P-API-KEY": "YOUR_SECRET_KEY", }, ) data = response.json()import requests response = requests.request( "POST", "https://api.sandbox.paybeta.ng/v2/scheduled-payments/scheduleReference/pay-now", headers={ "Accept": "application/json", "Content-Type": "application/json", "P-API-KEY": "YOUR_SECRET_KEY", }, ) data = response.json()
POST /v2/scheduled-payments/scheduleReference/pay-now HTTP/1.1 Host: api.paybeta.ng Accept: application/json Content-Type: application/json P-API-KEY: YOUR_SECRET_KEYPOST /v2/scheduled-payments/scheduleReference/pay-now HTTP/1.1 Host: api.sandbox.paybeta.ng Accept: application/json Content-Type: application/json P-API-KEY: YOUR_SECRET_KEY
import java.net.URI; import java.net.http.HttpClient; import java.net.http.HttpRequest; import java.net.http.HttpResponse; HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("https://api.paybeta.ng/v2/scheduled-payments/scheduleReference/pay-now")) .header("Accept", "application/json") .header("Content-Type", "application/json") .header("P-API-KEY", "YOUR_SECRET_KEY") .method("POST", HttpRequest.BodyPublishers.noBody()) .build(); HttpResponse<String> response = HttpClient.newHttpClient() .send(request, HttpResponse.BodyHandlers.ofString()); System.out.println(response.body());import java.net.URI; import java.net.http.HttpClient; import java.net.http.HttpRequest; import java.net.http.HttpResponse; HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("https://api.sandbox.paybeta.ng/v2/scheduled-payments/scheduleReference/pay-now")) .header("Accept", "application/json") .header("Content-Type", "application/json") .header("P-API-KEY", "YOUR_SECRET_KEY") .method("POST", HttpRequest.BodyPublishers.noBody()) .build(); HttpResponse<String> response = HttpClient.newHttpClient() .send(request, HttpResponse.BodyHandlers.ofString()); System.out.println(response.body());
using System.Net.Http; using System.Text; using var client = new HttpClient(); var request = new HttpRequestMessage(new HttpMethod("POST"), "https://api.paybeta.ng/v2/scheduled-payments/scheduleReference/pay-now"); request.Headers.TryAddWithoutValidation("Accept", "application/json"); request.Headers.TryAddWithoutValidation("P-API-KEY", "YOUR_SECRET_KEY"); var response = await client.SendAsync(request); var data = await response.Content.ReadAsStringAsync(); Console.WriteLine(data);using System.Net.Http; using System.Text; using var client = new HttpClient(); var request = new HttpRequestMessage(new HttpMethod("POST"), "https://api.sandbox.paybeta.ng/v2/scheduled-payments/scheduleReference/pay-now"); request.Headers.TryAddWithoutValidation("Accept", "application/json"); request.Headers.TryAddWithoutValidation("P-API-KEY", "YOUR_SECRET_KEY"); var response = await client.SendAsync(request); var data = await response.Content.ReadAsStringAsync(); Console.WriteLine(data);
package main import ( "fmt" "io" "net/http" ) func main() { req, _ := http.NewRequest("POST", "https://api.paybeta.ng/v2/scheduled-payments/scheduleReference/pay-now", nil) req.Header.Set("Accept", "application/json") req.Header.Set("Content-Type", "application/json") req.Header.Set("P-API-KEY", "YOUR_SECRET_KEY") res, err := http.DefaultClient.Do(req) if err != nil { panic(err) } defer res.Body.Close() data, _ := io.ReadAll(res.Body) fmt.Println(string(data)) }package main import ( "fmt" "io" "net/http" ) func main() { req, _ := http.NewRequest("POST", "https://api.sandbox.paybeta.ng/v2/scheduled-payments/scheduleReference/pay-now", nil) req.Header.Set("Accept", "application/json") req.Header.Set("Content-Type", "application/json") req.Header.Set("P-API-KEY", "YOUR_SECRET_KEY") res, err := http.DefaultClient.Do(req) if err != nil { panic(err) } defer res.Body.Close() data, _ := io.ReadAll(res.Body) fmt.Println(string(data)) }
require "net/http" require "json" uri = URI("https://api.paybeta.ng/v2/scheduled-payments/scheduleReference/pay-now") request = Net::HTTP::Post.new(uri) request["Accept"] = "application/json" request["Content-Type"] = "application/json" request["P-API-KEY"] = "YOUR_SECRET_KEY" response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == "https") do |http| http.request(request) end data = JSON.parse(response.body)require "net/http" require "json" uri = URI("https://api.sandbox.paybeta.ng/v2/scheduled-payments/scheduleReference/pay-now") request = Net::HTTP::Post.new(uri) request["Accept"] = "application/json" request["Content-Type"] = "application/json" request["P-API-KEY"] = "YOUR_SECRET_KEY" response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == "https") do |http| http.request(request) end data = JSON.parse(response.body)
import okhttp3.MediaType.Companion.toMediaType import okhttp3.OkHttpClient import okhttp3.Request import okhttp3.RequestBody.Companion.toRequestBody val client = OkHttpClient() val request = Request.Builder() .url("https://api.paybeta.ng/v2/scheduled-payments/scheduleReference/pay-now") .method("POST", "".toRequestBody(null)) .addHeader("Accept", "application/json") .addHeader("Content-Type", "application/json") .addHeader("P-API-KEY", "YOUR_SECRET_KEY") .build() client.newCall(request).execute().use { response -> println(response.body?.string()) }import okhttp3.MediaType.Companion.toMediaType import okhttp3.OkHttpClient import okhttp3.Request import okhttp3.RequestBody.Companion.toRequestBody val client = OkHttpClient() val request = Request.Builder() .url("https://api.sandbox.paybeta.ng/v2/scheduled-payments/scheduleReference/pay-now") .method("POST", "".toRequestBody(null)) .addHeader("Accept", "application/json") .addHeader("Content-Type", "application/json") .addHeader("P-API-KEY", "YOUR_SECRET_KEY") .build() client.newCall(request).execute().use { response -> println(response.body?.string()) }
import Foundation var request = URLRequest(url: URL(string: "https://api.paybeta.ng/v2/scheduled-payments/scheduleReference/pay-now")!) request.httpMethod = "POST" request.setValue("application/json", forHTTPHeaderField: "Accept") request.setValue("application/json", forHTTPHeaderField: "Content-Type") request.setValue("YOUR_SECRET_KEY", forHTTPHeaderField: "P-API-KEY") let (data, _) = try await URLSession.shared.data(for: request) print(String(data: data, encoding: .utf8)!)import Foundation var request = URLRequest(url: URL(string: "https://api.sandbox.paybeta.ng/v2/scheduled-payments/scheduleReference/pay-now")!) request.httpMethod = "POST" request.setValue("application/json", forHTTPHeaderField: "Accept") request.setValue("application/json", forHTTPHeaderField: "Content-Type") request.setValue("YOUR_SECRET_KEY", forHTTPHeaderField: "P-API-KEY") let (data, _) = try await URLSession.shared.data(for: request) print(String(data: data, encoding: .utf8)!)
import 'package:http/http.dart' as http; final response = await http.post( Uri.parse('https://api.paybeta.ng/v2/scheduled-payments/scheduleReference/pay-now'), headers: { 'Accept': 'application/json', 'Content-Type': 'application/json', 'P-API-KEY': 'YOUR_SECRET_KEY', }, ); print(response.body);import 'package:http/http.dart' as http; final response = await http.post( Uri.parse('https://api.sandbox.paybeta.ng/v2/scheduled-payments/scheduleReference/pay-now'), headers: { 'Accept': 'application/json', 'Content-Type': 'application/json', 'P-API-KEY': 'YOUR_SECRET_KEY', }, ); print(response.body);
Response
{
"success": true,
"message": "Payment started. Your schedule dates are unchanged. Check the schedule shortly for the result.",
"data": {
"reference": "SCH-7F3K9QX2AB12",
"service": "data",
"service_label": "Internet Data",
"biller": "mtn_data",
"biller_label": "MTN Data",
"biller_code": "mtn-1gb-30days",
"product_name": "MTN 1GB - 30 Days",
"customer_id": "08031234567",
"customer_name": null,
"amount": 1000,
"frequency": "monthly",
"frequency_label": "Monthly",
"starts_at": "2026-11-01T09:00:00+01:00",
"ends_at": null,
"next_run_at": "2026-11-01T09:00:00+01:00",
"status": "active",
"failure_reason": null,
"can_retry": false,
"can_cancel": true,
"can_pause": true,
"can_pay_now": true,
"can_resume": false,
"resume_needs_start_at": false,
"paused_at": null,
"can_edit": true,
"archived": false,
"can_reactivate": false,
"can_delete": false,
"reactivation_needs_start_at": false,
"cancelled_at": null,
"total_runs": 0,
"last_run_at": null,
"last_run": null,
"description": "Data for Mum",
"summary": "Internet Data scheduled for the beneficiary 08031234567",
"created_at": "2026-10-05T12:00:00+01:00"
}
}
{
"success": false,
"message": "A payment for this schedule is already processing. Please wait a moment.",
"errors": {
"schedule": [
"A payment for this schedule is already processing. Please wait a moment."
]
}
}