Create a single-leg transaction (SLT) schedule that will automatically execute SLT transactions at a future date and time. You can use an SLT schedule to execute a one-time transaction or a series of recurring transactions.
In an SLT, the move money operation is performed in a single stage or “leg”. The same transaction is used to obtain funds from a debit account, then transfer the funds to a credit account.
POST /v2/scheduled-transactions
Authorization: Bearer <access_token>
Idempotency-Key: <key>
where <key> is a v4 UUID or any other unique string with a minimum length of 6 characters and a maximum length of 255 characters.
The idempotency key identifies the request. If a network error occurs, you can safely retry the request using the same idempotency key and the request will only be executed once. This ensures that calling the API multiple times will not result in duplicate requests. For more information, see Idempotent Calls.
transactionSpec REQUIRED
object
Details for the transaction(s) created by the SLT schedule.
metadata CONDITIONAL
string, max items: 6, value max length: 1024
Key/value pairs used to store additional information about the transaction. ACH transactions must include one or more of the following metadata parameters.
|
Parameter |
Description |
|---|---|
|
rkorACHEntryType |
Required for all ACH transactions. ACH Standard Entry Class (SEC) code. The following codes are supported. For more information, see ACH File Details.
|
|
rkorACHIndividualId |
Required if rkorACHEntryType is CIE, PPD, or TEL. Individual Identification Number. |
|
rkorACHCheckSerialNumber |
Required if rkorACHEntryType is ARC, BOC, POP, or RCK. Serial number of the check from a Converted Check Copy. |
|
rkorACHTerminalCity |
Required if rkorACHEntryType is POP. Terminal city. |
|
rkorACHTerminalState |
Required if rkorACHEntryType is POP. Terminal state. |
The following metadata parameters are returned in the response.
|
Parameter |
Description |
|---|---|
|
rkorProvider |
ACH Provider. Possible values are PAYGEARS and SNB. |
|
rkorReasonCode |
Return Reason Code. Present in RETURN transaction responses. |
|
rkorReasonDescription |
Return Reason Description. Present in RETURN transaction responses. |
|
rkorDiscretionaryData |
Return Transaction Identifier. Present in RETURN transaction responses. |
debitFinancialAccountId REQUIRED
string (UUID)
ID of the Financial Account used as the debit account (source of funds) for the transaction.
creditFinancialAccountId REQUIRED
string (UUID)
ID of the Financial Account used as the credit account (receiver of funds) for the transaction.
transactionType REQUIRED
string enum, values: SEND, REQUEST
Type of transaction. The following values are supported:
SEND Push funds from the debit Financial Account to the credit Financial Account.
For example, a SEND transaction would be used if a Business Account (owner of the debit Financial Account) is sending a refund to a Customer (owner of the credit Financial Account).
REQUEST Pull funds to the credit Financial Account from the debit Financial Account.
For example, a REQUEST transaction would be used if a Business Account (owner of the credit Financial Account) is collecting a rent payment from a Customer (owner of the debit Financial Account).
solution REQUIRED
string
Name of the RocketKOR solution used for the transaction.
paymentReasonId REQUIRED
string
ID representing the payment reason for the transaction. Use the Payment Reasons API to retrieve a list of available IDs.
amount CONDITIONAL
string (decimal)
Transaction amount.
debitBalancePercent CONDITIONAL
string (decimal)
Percentage of the debitFinancialAccountId balance to use as the transaction amount. Supports 4 decimal places. For example, to specify 12.25%, use the value 0.1225.
currency REQUIRED
string
Currency used for the transaction. Must be an ISO 4217 alpha 3-character currency code.
settlementPriority CONDITIONAL
string enum, values: IMMEDIATE, SAME_DAY, NEXT_DAY, SCHEDULED
Required for ACH transactions. Optional for Wire transactions. Not required for Push-to-Card transactions.
Expected priority for settling the transaction. The following values are supported:
Note If settlementPriority is not specified for ACH transactions, the value NEXT_DAY will be used.
description CONDITIONAL
string, max length: 100
Required for the Wire solution. Not available for other solutions.
Brief description of the transaction. If the value exceeds the maximum length, the value will be truncated to 100 characters when the transaction is submitted for processing.
memo
string, max length: 100
Only available for the Wire solution.
Brief additional note about the transaction. If the value exceeds the maximum length, the value will be truncated to 100 characters when the transaction is submitted for processing.
initiatorAccountHolderId
string (UUID)
ID of the RocketKOR account that initiated the transaction. This can be a Business Account or a Customer Account.
startDateTime REQUIRED
string, pattern: ^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[01])T([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])(\.[0-9]{1,6})?$
Date and time to initiate the SLT schedule. Must be provided in the following ISO 8601 format without the time zone designator:
year-month-dayThours:minutes:seconds[.fractions-of-second]
where:
Example: 2023‐08‐31T15:53:00.123
The date will be interpreted using the timeZone parameter, and UTC format will be used if timeZone is not provided.
For recurring transactions, this is the date and time when the recurrenceRule will take effect. For example, let’s say a request has the following parameters:
"startDateTime": "2023-08-31T12:00:00",
"recurrenceRule: "FREQ=WEEKLY;BYDAY=MO"
In this example, the start date is on a Thursday and the recurrence rule is weekly executions each Monday. Therefore the first transaction will be created on Monday, September 4th, at 12:00 pm in the specified time zone.
timeZone
string
Time zone for startDateTime. The following values are supported:
calendarType
string enum, values: BANKING, DEFAULT
Type of calendar to use for the SLT schedule.
recurrenceRule
string
Rule used to schedule transactions on a recurring basis. Must be specified using the IETF iCalendar RFC 5545 RRULE property.
For example, let’s say a request has the following parameters:
"timeZone": "America/New_York",
"startDateTime": "1997-09-02T09:00:00",
"recurrenceRule": "FREQ=DAILY;UNTIL=19971224T000000"
This request will create transactions at the following times:
September 2, 1997 to October 25, 1997 (inclusive) at 9:00 AM EDT
October 26, 1997 to December 23, 1997 (inclusive) at 9:00 AM EST
name CONDITIONAL
string, max length: 60
Name of the SLT schedule. Required if recurrenceRule is provided.
Returns a unique ID for the SLT schedule.
SAMPLE REQUEST
{
"transactionSpec": {
"metadata": {
"rkorACHEntryType": "CCD",
"myPaymentId": "100000333",
"invoiceNumber": "123232333",
"authorizedBy": "user@email.com"
},
"debitFinancialAccountId": "6a017f06-83a3-44b7-be6f-5e5cae4a9ed7",
"creditFinancialAccountId": "4py56a34-4686-1539-c2ga-1a723g55dlq3",
"transactionType": "SEND",
"solution": "ach",
"paymentReasonId": "bill-payment",
"amount": "1000.00",
"currency": "USD",
"settlementPriority": "SAME_DAY",
"description": "",
"memo": "",
"initiatorAccountHolderId": "ebfa3e16-63c4-48e3-ae59-a3194a867269"
},
"startDateTime": "2023-12-01T10:15:30:00",
"timeZone": "America/Toronto",
"calendarType": "BANKING",
"recurrenceRule": "FREQ=DAILY;UNTIL=20231224T000000",
"name": "Loan Payment"
}
SAMPLE RESPONSE
"cc754cd5-292f-47e6-94f2-73319f979d53"
Step into the future of Finance with RocketKOR! Simplify payments, banking, lending, and data analytics using our versatile KOR Platform.
A Rocket Financial Inc. company
@ 2024 RocketKOR, Inc. All rights reserved.