Schedule a Payment

Scheduled Payments

Scheduled payments let you set up a payment — or a series of payments — to run automatically on a date or recurring schedule you define. Instead of triggering each payment manually, you configure it once and the system takes care of the rest.

Common use cases:

  • Collecting a monthly subscription fee from a customer
  • Sending a weekly payroll disbursement
  • Setting up a 12-month installment plan
  • Billing on the 3rd Friday of every month

One-Time vs. Recurring

One-time payment

A single payment processed on a specific date. Omit Repeats and NumberOfPayments when creating it.

Recurring payment

A series of payments processed automatically at a regular interval. You control:

  • When it starts (StartDateTime)
  • How often it runs (Repeats, and optionally Interval and ByDay)
  • How many times it runs (NumberOfPayments)

How Recurrence Works

Every scheduled payment stores a list of upcoming payment dates, generated at creation time. When the system processes a date that has arrived, it fires the transaction and marks that date as complete.

Choosing a frequency

The Repeats field sets the base frequency:

ValueWhat it means
dailyEvery calendar day
weeklyEvery 7 days
bi-weeklyEvery 14 days
monthlySame date each month (last-day-of-month aware)
semi-monthlyTwice a month — on the 15th and the last day
quarterlyEvery 3 months
semi-annuallyEvery 6 months
annuallyOnce a year
weekdaysEvery Monday through Friday, skipping weekends

Adjusting the interval

Interval lets you skip multiples of a base frequency without needing a new Repeats value. It defaults to 1.

RepeatsIntervalResult
weekly1Every week (same as default)
weekly2Every other week
weekly3Every 3 weeks
monthly1Every month (same as default)
monthly3Every 3 months (equivalent to quarterly)
daily10Every 10 days
📘

Interval only applies to daily, weekly, monthly, and annually. For bi-weekly, quarterly, semi-annually, semi-monthly, and weekdays, the interval is fixed.

Pinning to a specific weekday (ByDay)

ByDay lets you anchor a payment to a particular day of the week rather than a calendar date. It works with weekly and monthly only.

For weekly — bare weekday abbreviation:

ValueMeaning
MOMonday
TUTuesday
WEWednesday
THThursday
FRFriday
SASaturday
SUSunday

For monthly — ordinal + weekday:

ValueMeaning
1FRFirst Friday of the month
2MOSecond Monday of the month
3FRThird Friday of the month
4WEFourth Wednesday of the month
-1FRLast Friday of the month
-1MOLast Monday of the month
📘

When ByDay is set and the StartDateTime does not fall on the target weekday, the first payment is automatically shifted to the next matching date on or after StartDateTime.


Common Patterns

Every other Friday

{
  "Repeats": "weekly",
  "Interval": 2,
  "ByDay": "FR",
  "StartDateTime": "2026-05-10 21:00:00",
  "NumberOfPayments": 26
}

3rd Friday of every month

{
  "Repeats": "monthly",
  "ByDay": "3FR",
  "StartDateTime": "2026-05-01 21:00:00",
  "NumberOfPayments": 12
}

Last Monday of every month

{
  "Repeats": "monthly",
  "ByDay": "-1MO",
  "StartDateTime": "2026-05-01 21:00:00",
  "NumberOfPayments": 12
}

Every weekday (Mon–Fri)

{
  "Repeats": "weekdays",
  "StartDateTime": "2026-05-10 21:00:00",
  "NumberOfPayments": 260
}

Monthly installment plan (12 months)

{
  "Repeats": "monthly",
  "StartDateTime": "2026-06-01 21:00:00",
  "NumberOfPayments": 12
}

Twice a month (15th and last day)

{
  "Repeats": "semi-monthly",
  "StartDateTime": "2026-05-10 21:00:00",
  "NumberOfPayments": 24
}

Managing Payments After Creation

Once created, a scheduled payment has two layers you can act on:

  • The schedule itself — cancel or edit the entire series (/cancel, /edit)
  • Individual upcoming dates — cancel or reschedule a single future payment without affecting the rest (/upcoming-payment/cancel, /upcoming-payment/edit)

For example, if a customer is going on holiday and wants to skip one payment, use /upcoming-payment/cancel on that specific date rather than cancelling the whole schedule.