Customers may want to set up scheduled payments for their mortgage or to move money into savings.
schedule
and payment_instruction
. schedule
is a schedule configuration to define the frequency and number of recurring payments. payment_instruction
defines how the payments are executed. There are two fields: type
defines the supported payment types like ACH
and INTERNAL_TRANSFER
, and request
will be the same request body for the corresponding payments.
The resource also has the fields description
and metadata
, so the users can provide additional information for the resources.
POST /v0/payment_schedules
start_date
: The scheduled date of the first recurrence to be executed. Please note that the scheduled date and execution date (details below) cannot be earlier than today’s date, depends on the underlying bank’s timezone.frequency
: The recurrence could be executed on a DAILY
, WEEKLY
, or MONTHLY
basis.interval
: Interval describes the number of frequency between the recurrence. For example, you have interval
set to 2 with frequency
set to DAILY
, then this recurrence will be executed every other day.count
: Total number of the recurrence.end_date
: The last date of the recurrence could be executed. The date is exclusive. Important: count
and end_date
are optional fields, but you have to provide exactly one of them to avoid the infinite recurrence.frequency
is set to MONTHLY
, but the next scheduled date does not have the day of the month, then it will be the last day of the month, e.g. start_date
is Jan 31 with interval
is 1, then the next recurrence will be Feb 28/29.
Execution date is based on the underlying bank’s business dates. If a scheduled date falls on the bank’s holiday or weekend, then the execution date will be the last business day of the scheduled date. Otherwise, it will be the same as the scheduled date.
ACTIVE
: The payment schedule has the next scheduled date and execution date determined and will be executed at the execution time.CANCELLED
: The payment schedule has been cancelled. This status can be set via the payment schedule update endpoint. Once the status is set, the next scheduled date and execution date will be set to null, so no future payments will be executed.EXPIRED
: The payment schedule has completed all the recurrence based on the schedule
, so no future payments will be executed.next_payment_date
and status
are the new fields. This means the next execution will be on 2022-04-26
, it will call POST /v0/internal_transfers
with the request
as the request body. Once it is completed, both execution_date
and schedule_date
will be set to 2022-04-28
GET /v0/payment_schedules/payments
description
, metadata
, and payment_instruction
are identical as payment schedule at the time of payment is executed.
payment_date
is the date of the payment is executed
status
is the enumeration value
COMPLETED
: The payment is executed successfully, you can use transaction_id
to retrieve further information via internal transfer endpoint GET /v0/transactions/posted/{TRANSACTION_ID}
ERROR
: The payment execution failed. You should look into error_details
for further information and make the manual payment. Schedule will NOT retry on any failed payments.next_payment_date
will be updated.