MLT Schedule Event Object

A multi-leg transaction (MLT) schedule is used to automatically execute multi-leg transactions at a future date and time. You can use an MLT schedule to execute a one-time transaction or a series of recurring transactions.

The MLT Schedule Event object represents a transaction that has been created for an MLT schedule.

Attributes

id

string (UUID)

ID of the MLT.

stage

string enum, values: FUNDING, DISBURSING, CANCELLING

Current stage of the MLT. The following values are supported:

  • FUNDING  A new MLT has been created in RocketKOR. The MLT will remain in the FUNDING stage until all of the debit (funding leg) transactions have cleared or the MLT is cancelled.
  • DISBURSING  The debit (funding leg) transactions have cleared and the MLT has transitioned to the disbursement leg.
  • CANCELLING  The MLT has been cancelled.

status

string enum, values: PENDING, PROCESSING, FAILED, CANCELLED, COMPLETE

Current status of the MLT. The following values are supported:

  • PENDING  The MLT is waiting to be processed.
  • PROCESSING  The MLT debit (funding leg) and credit (disbursement leg) transactions are being processed.
  • FAILED  One or more of the MLT transactions has failed. Other transactions may be in process or completed. For possible ways to resolve a failed MLT, see the Update an MLT and Cancel an MLT APIs.
  • CANCELLED  The MLT has been cancelled.
  • COMPLETE  The MLT credit (disbursement leg) transactions have been completed.

name

string, max length: 60

Descriptive name for the MLT.

description

string

Description of the MLT.

memo

string

Brief note about the MLT.

metadata

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

Key/value pairs used to store additional information with the MLT.

currency  

string

Currency for the debit (funding leg ) and credit (disbursement leg) transactions. Must be an ISO 4217 alpha 3-character currency code.

totalAmount

string (decimal)

Total amount of all transactions defined in the MLT.

originatingChannel

string enum, values: EXTERNAL, INTERNAL, PORTAL

Channel used to create the MLT. Possible values are:

  • EXTERNAL  RocketKOR APIs.
  • INTERNAL  Internal service call.
  • PORTAL  Team Member using the RocketKOR Portal.

debitLegs

array

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

sequence

integer

Sequence number. Indicates the transaction’s position in the debits array.

financialAccountId  

string (UUID)

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

maskedAccountNumber

string

Masked account number for the Financial Account (bank account number or card number).

paymentReasonId  

string

ID representing the payment reason for the transaction. For the MLT debit transaction, paymentReasonId uses a fixed value of funds_transfer.

amount  

string (decimal)

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

  • Either amount or amountPercentage is required. The request will fail if both parameters are provided.
  • If the debit transaction includes amount, the credit transaction cannot include amountPercentage.
  • If the transaction is created using amountPercentage, the response amount will show the actual transaction value.

amountPercentage  

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. The request will fail if both parameters are provided.
  • If the debit transaction includes amountPercentage, the credit transaction cannot include amount.
  • If the transaction is created using amountPercentage, the response amount will show the actual transaction value.

settlementPriority  

string enum, values: IMMEDIATE, SAME_DAY, NEXT_DAY, SCHEDULED

Expected priority for settling the transaction. The following values are supported:

  • IMMEDIATE  Near real-time.
  • SAME_DAY  Same business day.
  • NEXT_DAY  Next business day.
  • SCHEDULED  Reserved for future use.

This parameter is configurable for some RocketKOR solutions, such as ACH and Wire.

Notes:

  • For MLT ACH transactions, the default value is SAME_DAY.
  • Push-to-Card transactions always use the IMMEDIATE settlement priority.
  • Wire transactions only allow the SAME_DAY and NEXT_DAY settlement priorities.

transactionId

string (UUID)

ID of the debit transaction.

solution  

string

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

latestStatus

object

Current status of the transaction.

status

string enum, values: NEW, PENDING, PROCESSING, APPROVED, SETTLED, CLEARED, CANCELLED, DECLINED, REVERSED, ERROR

Transaction status. The following values are supported:

  • NEW  The transaction has been created in RocketKOR.
  • PENDING  The transaction has been moved from the RocketKOR Transaction Domain to one of the RocketKOR Processing Domains. The transaction is still in the RocketKOR system (meaning it has not been transmitted to the Provider for processing) and is in a state where it can be cancelled.
  • PROCESSING  One of the following is true: (a) the transaction is in a RocketKOR Processing Domain but can no longer be cancelled, or (b) the transaction has been transmitted to the Provider for processing.
  • APPROVED  Disbursement has been approved by the Provider.
  • SETTLED  The transaction has been settled by the Provider.
  • CLEARED  The Sponsor has indicated that funds movement for the transaction is complete. The funds are now available in the Master Settlement Account (MSA). This status is only applicable for “received” transactions.
  • CANCELLED  The transaction has been cancelled.
  • DECLINED  Disbursement has been declined by the Provider.
  • REVERSED  A transaction was submitted by RocketKOR to move funds in the opposite direction of the initial transaction. This “reverses” the transaction by moving the funds back to the original account.
  • ERROR  The transaction could not be processed due to one or more errors (for example, the Provider system is unavailable after a number of retries). The ERROR status is only activated after RocketKOR determines that it cannot continue processing the transaction.

message

string

Description of the status change.

createdBy

object

Entity that created the transaction status.

id

string (UUID)

ID of the entity. Will be blank if createdBy.type is internal.

type

string enum, values: employee, internal, kor_employee, service-account

Type of entity. The following values are supported:

  • employee  Team Member using the RocketKOR Portal.
  • internal  Internal service call.
  • kor_employee  Rocket Financial employee.
  • service-account  Service Account using APIs.

createdAt

string (date-time), format: yyyy-MM-dd’T’HH:mm:ss.SSSz

Date and time the status was assigned to the transaction.

_embedded

object

Embedded subresources for the debit transaction. Includes details for the Financial Account and account holder.

financialAccount

object

Details for the Financial Account used in the transaction.

name  

string, min length: 1, max length: 100

Name for the Financial Account. This is an informal name used for the account in RocketKOR.

category  

string enum, values: EXTERNAL, INTEGRATED, INTERNAL

Financial Account category. The following values are supported:

  • EXTERNAL  Linked to an account that is issued or managed by an outside financial institution. Example: A debit card or bank account issued by a financial institution.
  • INTEGRATED  Linked to a third-party account at a third-party institution. Example: A debit card or bank account issued on RocketKOR.
  • INTERNAL  Created within RocketKOR to manage funds and track account balances for a Customer. Not linked to an account at a financial institution.

accountHolderType

string enum, values: CUSTOMER

Type of entity that owns the Financial Account. Returned if the account holder is a Customer. Omitted if the account holder is a Business Account.

type

string enum, values: BANK, CARD

Type of Financial Account. The following values are supported:

  • BANK  Bank account
  • CARD  Debit, credit, or prepaid card

subtype

string enum; values for BANK Financial Accounts: CHECKING, SAVING; values for CARD Financial Accounts: CREDIT, DEBIT, PREPAID

Financial Account subtype.

  • Values supported for BANK Financial Accounts: SAVING, CHECKING
  • Values supported for CARD Financial Accounts: CREDIT, DEBIT, PREPAID

bankAccount

object

Returned if a bank account is attached to the Financial Account. Note that either the bankAccount or card object is returned.

bankName  

string

Name of the financial institution.

nameOnAccount

string, min length: 1, max length: 40

Name of the bank account owner.

card

object

Returned if a card is attached to the Financial Account. Note that either the bankAccount or card object is returned.

firstName  

string, min length: 1, max length: 40

Customer’s first name as it appears on the card.

middleName

string, min length: 1, max length: 40

Customer’s middle name as it appears on the card.

lastName  

string, min length: 1, max length: 40

Customer’s last name as it appears on the card.

maskedAccountNumber

string

Masked account number for the Financial Account (bank account number or card number).

accountHolderId

string (UUID)

ID of the entity that owns the Financial Account. Returned if the account holder is a Customer. This field is not returned if the account holder is a Business Account.

financialAccount

object

Deprecated. Details for the Financial Account used in the transaction. Contains the same information as the _embedded.financialAccount object.

creditLegs

array

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

sequence

integer

Sequence number. Indicates the transaction’s position in the credits array.

financialAccountId  

string (UUID)

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

maskedAccountNumber

string

Masked account number for the Financial Account (bank account number or card number).

paymentReasonId  

string

ID representing the payment reason for the transaction. Use the Payment Reasons API to retrieve a list of available IDs.

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. The request will fail if both parameters are provided.
  • If the transaction is created using amountPercentage, the response amount will show the actual transaction value.

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. The request will fail if both parameters are provided.
  • If the transaction is created using amountPercentage, the response amount will show the actual transaction value.

settlementPriority  

string enum, values: IMMEDIATE, SAME_DAY, NEXT_DAY, SCHEDULED

Expected priority for settling the transaction. The following values are supported:

  • IMMEDIATE  Near real-time.
  • SAME_DAY  Same business day.
  • NEXT_DAY  Next business day.
  • SCHEDULED  Reserved for future use.

This parameter is configurable for some RocketKOR solutions, such as ACH and Wire.

Notes:

  • For MLT ACH transactions, the default value is SAME_DAY.
  • Push-to-Card transactions always use the IMMEDIATE settlement priority.
  • Wire transactions only allow the SAME_DAY and NEXT_DAY settlement priorities.

transactionId

string (UUID)

ID of the credit transaction.

solution  

string

Name of the RocketKOR solution used for the transaction.

latestStatus

object

Current status of the transaction.

status

string enum, values: NEW, PENDING, PROCESSING, APPROVED, SETTLED, CLEARED, CANCELLED, DECLINED, REVERSED, ERROR

Transaction status. The following values are supported:

  • NEW  The transaction has been created in RocketKOR.
  • PENDING  The transaction has been moved from the RocketKOR Transaction Domain to one of the RocketKOR Processing Domains. The transaction is still in the RocketKOR system (meaning it has not been transmitted to the Provider for processing) and is in a state where it can be cancelled.
  • PROCESSING  One of the following is true: (a) the transaction is in a RocketKOR Processing Domain but can no longer be cancelled, or (b) the transaction has been transmitted to the Provider for processing.
  • APPROVED  Disbursement has been approved by the Provider.
  • SETTLED  The transaction has been settled by the Provider.
  • CLEARED  The Sponsor has indicated that funds movement for the transaction is complete. The funds are now available in the Master Settlement Account (MSA). This status is only applicable for “received” transactions.
  • CANCELLED  The transaction has been cancelled.
  • DECLINED  Disbursement has been declined by the Provider.
  • REVERSED  A transaction was submitted by RocketKOR to move funds in the opposite direction of the initial transaction. This “reverses” the transaction by moving the funds back to the original account.
  • ERROR  The transaction could not be processed due to one or more errors (for example, the Provider system is unavailable after a number of retries). The ERROR status is only activated after RocketKOR determines that it cannot continue processing the transaction.

message

string

Description of the status change.

createdBy

object

Entity that created the transaction status.

id

string (UUID)

ID of the entity. Will be blank if createdBy.type is internal.

type

string enum, values: employee, internal, kor_employee, service-account

Type of entity. The following values are supported:

  • employee  Team Member using the RocketKOR Portal.
  • internal  Internal service call.
  • kor_employee  Rocket Financial employee.
  • service-account  Service Account using APIs.

createdAt

string (date-time), format: yyyy-MM-dd’T’HH:mm:ss.SSSz

Date and time the status was assigned to the transaction.

_embedded

object

Embedded subresources for the credit transaction. Includes details for the Financial Account and account holder.

financialAccount

object

Details for the Financial Account used in the transaction.

name  

string, min length: 1, max length: 100

Name for the Financial Account. This is an informal name used for the account in RocketKOR.

category  

string enum, values: EXTERNAL, INTEGRATED, INTERNAL

Financial Account category. The following values are supported:

  • EXTERNAL  Linked to an account that is issued or managed by an outside financial institution. Example: A debit card or bank account issued by a financial institution.
  • INTEGRATED  Linked to a third-party account at a third-party institution. Example: A debit card or bank account issued on RocketKOR.
  • INTERNAL  Created within RocketKOR to manage funds and track account balances for a Customer. Not linked to an account at a financial institution.

accountHolderType

string enum, values: CUSTOMER, RECIPIENT

Type of entity that owns the Financial Account. Returned if the account holder is a Customer or Recipient. Omitted if the account holder is a Business Account.

type

string enum, values: BANK, CARD

Type of Financial Account. The following values are supported:

  • BANK  Bank account
  • CARD  Debit, credit, or prepaid card

subtype

string enum; values for BANK Financial Accounts: CHECKING, SAVING; values for CARD Financial Accounts: CREDIT, DEBIT, PREPAID

Financial Account subtype.

  • Values supported for BANK Financial Accounts: SAVING, CHECKING
  • Values supported for CARD Financial Accounts: CREDIT, DEBIT, PREPAID

bankAccount

object

Returned if a bank account is attached to the Financial Account. Note that either the bankAccount or card object is returned.

bankName  

string

Name of the financial institution.

nameOnAccount

string, min length: 1, max length: 40

Name of the bank account owner.

card

object

Returned if a card is attached to the Financial Account. Note that either the bankAccount or card object is returned.

firstName  

string, min length: 1, max length: 40

First name of the Customer or Recipient, as it appears on the card.

middleName

string, min length: 1, max length: 40

Middle name of the Customer or Recipient, as it appears on the card.

lastName  

string, min length: 1, max length: 40

Last name of the Customer or Recipient, as it appears on the card.

maskedAccountNumber

string

Masked account number for the Financial Account (bank account number or card number).

accountHolderId

string (UUID)

ID of the entity that owns the Financial Account. Returned if the account holder is a Customer or Recipient. This field is not returned if the account holder is a Business Account.

financialAccount

object

Deprecated. Details for the Financial Account used in the transaction. Contains the same information as the _embedded.financialAccount object.

createdBy

object

Entity that created the transaction.

id

string (UUID)

ID of the entity. Will be blank if createdBy.type is internal.

type

string enum, values: employee, internal, kor_employee, service-account

Type of entity. The following values are supported:

  • employee  Team Member using the RocketKOR Portal.
  • internal  Internal service call.
  • kor_employee  Rocket Financial employee.
  • service-account  Service Account using APIs.

createdAt

string (date-time), format: yyyy-MM-dd’T’HH:mm:ss.SSSz

Date and time the transaction was created in the RocketKOR system.

updatedBy

object

Entity that last updated the transaction.

id

string (UUID)

ID of the entity. Will be blank if updatedBy.type is internal.

type

string enum, values: employee, internal, kor_employee, service-account

Type of entity. The following values are supported:

  • employee  Team Member using the RocketKOR Portal.
  • internal  Internal service call.
  • kor_employee  Rocket Financial employee.
  • service-account  Service Account using APIs.

updatedAt

string (date-time), format: yyyy-MM-dd’T’HH:mm:ss.SSSz

Date and time the transaction was last updated.

MLT Schedule Event Object

				
					{
  "id": "string(UUID)",
  "stage": "FUNDING | DISBURSING | CANCELLING",
  "status": "PENDING | PROCESSING | FAILED | CANCELLED | COMPLETE",
  "name": "string",
  "description": "string",
  "memo": "string",
  "metadata": {
    "key": "value"
  },
  "currency": "string",
  "totalAmount": "string(decimal)",
  "originatingChannel": "EXTERNAL | INTERNAL | PORTAL",
  "debitLegs": [
    {
      "sequence": integer,
      "financialAccountId": "string(UUID)",
      "maskedAccountNumber": "string",
      "paymentReasonId": "string",
      "amount": "string(decimal)", // amount or amountPercentage is returned
      "amountPercentage": "string(decimal)", // amount or amountPercentage is returned
      "settlementPriority": "IMMEDIATE | SAME_DAY | NEXT_DAY | SCHEDULED",
      "transactionId": "string(UUID)",
      "solution": "string",
      "latestStatus": {
        "status": "NEW | PENDING | PROCESSING | APPROVED | SETTLED | CLEARED | CANCELLED | DECLINED | REVERSED | ERROR",
        "message": "string(date-time)",
        "createdBy": {
          "id": "string(UUID)",
          "type": "employee | internal | kor_employee | service-account"
        },
        "createdAt": "string(date-time)"
      },
      "_embedded": {
        "financialAccount": {
          "name": "string",
          "category": "EXTERNAL | INTEGRATED | INTERNAL",
          "accountHolderType": "CUSTOMER", // omitted if the account holder is a Business Account
          "type": "BANK | CARD",
          "subtype": "CHECKING | SAVING | CREDIT | DEBIT | PREPAID",
          "bankAccount": { // bankAccount or card is returned
            "bankName": "string",
            "nameOnAccount": "string"
          },
          "card": { // bankAccount or card is returned
            "firstName": "string",
            "middleName": "string",
            "lastName": "string"
          },
          "maskedAccountNumber": "string"
        },
        "accountHolderId": "string(UUID)" // omitted if the account holder is a Business Account
      },
      "financialAccount": {...} // deprecated
    }
  ],
  "creditLegs": [
    {
      "sequence": integer,
      "financialAccountId": "string(UUID)",
      "maskedAccountNumber": "string",
      "paymentReasonId": "string",
      "amount": "string(decimal)", // amount or amountPercentage is returned
      "amountPercentage": "string(decimal)", // amount or amountPercentage is returned
      "settlementPriority": "IMMEDIATE | SAME_DAY | NEXT_DAY | SCHEDULED",
      "transactionId": "string(UUID)",
      "solution": "string",
      "latestStatus": {
        "status": "NEW | PENDING | PROCESSING | APPROVED | SETTLED | CLEARED | CANCELLED | DECLINED | REVERSED | ERROR",
        "message": "string(date-time)",
        "createdBy": {
          "id": "string(UUID)",
          "type": "employee | internal | kor_employee | service-account"
        },
        "createdAt": "string(date-time)"
      },
      "_embedded": {
        "financialAccount": {
          "name": "string",
          "category": "EXTERNAL | INTEGRATED | INTERNAL",
          "accountHolderType": "CUSTOMER | RECIPIENT", // omitted if the account holder is a Business Account
          "type": "BANK | CARD",
          "subtype": "CHECKING | SAVING | CREDIT | DEBIT | PREPAID",
          "bankAccount": { // bankAccount or card is returned
            "bankName": "string",
            "nameOnAccount": "string"
          },
          "card": { // bankAccount or card is returned
            "firstName": "string",
            "middleName": "string",
            "lastName": "string"
          },
            "maskedAccountNumber": "string"
          },
          "accountHolderId": "string(UUID)" // omitted if the account holder is a Business Account
        },
        "financialAccount": {...} // deprecated
    }
  ],
  "createdBy": {
    "id": "string(UUID)",
    "type": "employee | internal | kor_employee | service-account"
  },
  "createdAt": "string(date-time)",
  "updatedBy": {
    "id": "string(UUID)",
    "type": "employee | internal | kor_employee | service-account"
  },
  "updatedAt": "string(date-time)"
}
				
			
Exit mobile version