RocketKOR

Edit a Scheduled Multi-Leg Transaction

You can edit a scheduled multi-leg transaction (MLT) before the start date (startDateTime). The scheduled MLT cannot be modified after the start date. This API is available for some RocketKOR solutions, such as ACH.

Endpoint

PUT /v2/scheduled-transactions/{id}

Authorization Header

Authorization: Bearer <access_token>

Path Parameters

id  REQUIRED

string (UUID)

ID of the scheduled multi-leg transaction (MLT).

Request Body

multiLegTransactionSpec  REQUIRED

object

Details for the debit and credit transactions created for the scheduled MLT.

currency  REQUIRED

string

Currency for the debit (funding leg ) and credit (disbursement leg) transactions created for the MLT. Must be an ISO 4217 alpha 3-character currency code. RocketKOR supports USD and CAD currencies.

metadata

string, max items: 6, value max length: 1024

Use a maximum of 6 key/value pairs to store additional information with the MLT. Note that a fixed value is currently used for the rkorACHEntryType parameter for multi-leg transactions.

name

string, max length: 60

Name of the MLT. Use a meaningful name to help you identify the MLT.

description

string

Description of the MLT.

memo

string

Brief note about the MLT.

debits  REQUIRED

array

Debit transaction for the MLT funding leg. This transaction is used to obtain funds from the debit Financial Account.

financialAccountId  REQUIRED

string (UUID)

ID of the Financial Account used as the debit account (source of funds) for the transaction.

paymentReasonId  REQUIRED

string

ID representing the payment reason for the transaction. MLTs currently use a fixed value for paymentReasonId.

solution  REQUIRED

string

Name of the RocketKOR solution used for the transaction. MLT debit transactions currently use the ACH solution.

amount  CONDITIONAL

string (decimal)

Transaction amount. The amount must conform to any transaction limits.

  • Either amount or amountPercentage is required. Note that if both these parameters are provided, the request will fail.
  • If the debit transaction includes amount, the credit transaction cannot include amountPercentage.

amountPercentage  CONDITIONAL

string (decimal)

Percentage of the debit Financial Account balance to use as the transaction amount. The amount must conform to any transaction limits.

  • Either amount or amountPercentage is required. Note that if both these parameters are provided, the request will fail.
  • If the debit transaction includes amountPercentage, the credit transaction cannot include amount.

credits  REQUIRED

array

Credit transaction for the MLT disbursement leg. This transaction is used to disburse funds to the credit Financial Account.

financialAccountId  REQUIRED

string (UUID)

ID of the Financial Account used as the credit account (receiver of funds) for the transaction.

paymentReasonId  REQUIRED

string

ID representing the payment reason for the transaction. MLTs currently use a fixed value for paymentReasonId.

solution  REQUIRED

string

Name of the RocketKOR solution used for the transaction.

amount

string (decimal)

Transaction amount. The amount must conform to any transaction limits.

  • If the debit transaction includes amountPercentage, the credit transaction cannot include amount.
  • If provided, amount must be the same as the debit transaction amount.
  • Either amount or amountPercentage can be provided. Note that if both these parameters are provided, the request will fail.

amountPercentage

string (decimal)

Percentage of the debit Financial Account balance to use as the transaction amount. The amount must conform to any transaction limits.

  • If the debit transaction includes amount, the credit transaction cannot include amountPercentage.
  • If provided, amountPercentage must be the same as the debit transaction amountPercentage.
  • Either amount or amountPercentage can be provided. Note that if both these parameters are provided, the request will fail.

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 scheduled MLT. Must be provided in the following ISO 8601 format without the time zone designator:

year-month-dayThours:minutes:seconds[.fractions-of-second]

where:

  • year is four digits
  • month is two digits
  • day is two digits
  • T is the literal “T” character used to delimit a date portion from a time portion
  • hours is two digits representing the number of hours from 00 to 23
  • minutes is two digits representing the number of minutes from 00 to 59
  • seconds is two digits representing the number of seconds from 00 to 59
  • fractions-of-second (optional) is one or more digits representing a fraction of a second

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:

  • Z, GMT, UTC or UT for the UTC time zone
  • zone offsets from UTC starting with + or (example: +4)
  • zone offsets from UTC starting with UTC+, UTC+, GMT+, GMT-, UT+ or UT-
  • any other ID is parsed as Region ID according to the IANA Time Zone Database (example: America/New_York is -04)

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

description

string

Description of the scheduled MLT.

name  CONDITIONAL

string, max length: 60

Name of the scheduled MLT. Required if recurrenceRule is provided.

Returns

Returns the Scheduled Multi-Leg Transaction object for the updated transaction.

SAMPLE REQUEST

				
					{
  "multiLegTransactionSpec": {
    "currency": "USD",
    "metadata": {
      "rkorACHEntryType": "CCD",
      "myPaymentId": "100000333",
      "invoiceNumber": "123232333",
      "authorizedBy": "user@email.com"
    },
    "name": "MLT-123",
    "description": "",
    "memo": "",
    "debits" [
      {
        "financialAccountId": "6a017f06-83a3-44b7-be6f-5e5cae4a9ed7",
        "paymentReasonId": "funds_transfer",
        "solution": "ach",
        "amount": "1000.00",
        "amountPercentage": ""
      }
    ],
    "credits" [
      {
        "financialAccountId": "4py56a34-4686-1539-c2ga-1a723g55dlq3",
        "paymentReasonId": "funds_transfer",
        "solution": "ach",
        "amount": "1000.00",
        "amountPercentage": ""
      }
    ]
  },
  "startDateTime": "2023-12-01T10:15:30:00",
  "timeZone": "America/Toronto",
  "recurrenceRule": "FREQ=DAILY;UNTIL=20231224T000000",
  "description": "",
  "name": "Scheduled MLT-123"
}
				
			

SAMPLE RESPONSE

				
					{
  "id": "a2cccfdc-c0f4-4a0e-84b0-2f2414797ad8",
  "status": "ACTIVE",
  "createdTransactionsCount": 0,
  "pendingTransactionsCount": 0,
  "multiLegTransactionSpec": {
    "currency": "USD",
    "metadata": {
      "rkorACHEntryType": "CCD",
      "myPaymentId": "100000333",
      "invoiceNumber": "123232333",
      "authorizedBy": "user@email.com"
    },
    "name": "MLT-123",
    "description": "",
    "memo": "",
    "debits" [
      {
        "financialAccountId": "6a017f06-83a3-44b7-be6f-5e5cae4a9ed7",
        "paymentReasonId": "funds_transfer",
        "solution": "ach",
        "amount": "1000.00",
        "amountPercentage": ""
      }
    ],
    "credits" [
      {
        "financialAccountId": "4py56a34-4686-1539-c2ga-1a723g55dlq3",
        "paymentReasonId": "funds_transfer",
        "solution": "ach",
        "amount": "1000.00",
        "amountPercentage": ""
      }
    ]
  },
  "startDateTime": "2023-12-01T10:15:30:00",
  "timeZone": "America/Toronto",
  "recurrenceRule": "FREQ=DAILY;UNTIL=20231224T000000",
  "description": "",
  "name": "Scheduled MLT-123"
}