Home
Home
  1. Payment Management
  • Welcome
    • About Ontime
    • Overview
    • Test and Learn Projects
  • Authentication
  • Availability Check
    • Light Availability Check
      POST
    • Full Availability Check
      POST
  • Payment Management
    • Mandates
      • Create a new mandate
      • Cancel an existing mandate
      • Get a Mandate
      • Get many Mandates
    • Payment Requests
      • Instruct a new payment request
      • Cancel an existing payment request
      • Get a Payment
      • Get many Payments
  • Payouts
    • Get a Payout
      GET
    • Get Available Payouts
      GET
  • Webhooks
    • Mandate Created/Updated
    • Payment Request Created/Updated
    • Payout Created
  1. Payment Management

Payment Requests

Purpose — A payment request (PR) instructs Ontime to deduct a single, fixed amount from a consumer’s salary on the next payroll cycle covered by an active mandate. Payment requests are the work-horse of your billing flow—create one for every instalment, fee, or ad-hoc charge you wish to collect.
Every payment request must reference an active mandate; otherwise Ontime will reject the call with 403 Conflict.

Key points & cautions#

Mandate required – the mandate_id you supply must be active; otherwise you receive 403 Forbidden.
One‑off by design – payment requests are not recurring. For multi‑instalment plans, generate a new PR for each instalment or build the schedule in your own system.
Idempotency = safety – include Idempotency-Key on every call. Resending the same body + key is safe and will never double‑charge.
Allow Post Due Date Deduction – when making your request you can opt to allow post due date deductions. This means that if the next payroll date falls after your due date, Ontime still collects and remits funds at the earliest possible payout. By default this is set to false, meaning that if the next payroll date falls after your due date, Ontime will reject the payment request.
Cancellation window – you may DELETE a payment request until it enters payroll processing. After that point, the endpoint returns 409 Conflict.
Status via webhooks – rely on payment_request_updated events to know when money is Confirmed, PaidIn, PaidOut, or Failed.

Webhooks#

Ontime sends webhooks based on key events. For Payment Requests these are:
Payment Request created/updated
Previous
Get many Mandates
Next
Instruct a new payment request