Create an SLT

A single-leg transaction (SLT) requires two Financial Accounts: a debit account and a credit account. These accounts must belong to the Business Account associated with the request access token.

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.

Debit Account

  • The funds will be taken from this account. The debit account can be a Business Financial Account or Customer Financial Account.

Credit Account

  • The funds will be transferred to this account. The credit account can be a Business Financial Account, Customer Financial Account, or Recipient Financial Account.

You can create two types of transactions, SEND and REQUEST. Both transaction types are used to transfer funds from the debit account to the credit account.

SEND Transaction

  • Funds are pushed from the debit account to the credit account. This type of transaction is used when the debit account owner is sending money to the credit account owner.
  • 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 Transaction

  • Funds are pulled from the credit account to the debit account. This type of transaction is used when the debit account owner is requesting money from the credit account owner.
  • For example, a REQUEST transaction would be used if a Business Account (owner of the debit Financial Account) is collecting a rent payment from a Customer (owner of the credit Financial Account).

Endpoint

POST /v1/transactions

Authorization Header

Authorization: Bearer <access_token>

Idempotency-Key Header

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.

Request Body

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.

  • ARC  Accounts Receivable Entry
  • BOC  Back Office Conversion
  • CCD  Cash Concentration or Disbursement
  • CIE  Customer Initiated Entry
  • CTX  Corporate Trade Exchange
  • IAT  International
  • POP  Point of Purchase Entry
  • PPD  Prearranged Payment and Deposit Entry
  • RCK  Re-Presented Check Entry
  • TEL  Telephone-Initiated Entry
  • WEB  Internet Initiated Entry

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  REQUIRED

string (decimal)

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

currency  

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:

  • IMMEDIATE  Near real-time. Push-to-Card transactions always use the IMMEDIATE settlement priority. Not available for ACH And Wire transactions.
  • SAME_DAY  Same business day. Available for ACH And Wire transactions.
  • NEXT_DAY  Next business day. Available for ACH And Wire transactions.
  • SCHEDULED  Reserved for future use.

Note  If settlementPriority is not specified for ACH transactions, the value NEXT_DAY will be used.

initiatorAccountHolderId

string (UUID)

ID of the RocketKOR account that initiated the transaction. This can be a Business Account or a Customer Account.

externalTransactionInitiatorId

string

External identifier. Can be used to capture your internal ID for the user that initiated the transaction on the client application.

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.

Returns

Returns the SLT object. This object contains the transaction details, including a unique ID for the transaction.

SAMPLE REQUEST

				
					{
  "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",
  "initiatorAccountHolderId": "ebfa3e16-63c4-48e3-ae59-a3194a867269",
  "externalTransactionInitiatorId": "c62d1e6b-39ce-496e-bf6d-8a019d2f534e",
  "description": "",
  "memo": ""
}
				
			

SAMPLE RESPONSE

				
					{
  "businessAccountId": "de30132c-e67a-4af7-89ec-f2109863b7f7",
  "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",
  "paymentReason": "Bill payment",
  "amount": "1000.00",
  "currency": "USD",
  "settlementPriority": "SAME_DAY",
  "createdAt": "2021-07-01T17:40:22.601Z",
  "createdBy": {
    "id": "b6333b53-3222-4227-a71e-718b25ca3ea4",
    "type": "service-account"
  },
  "description": "",
  "memo": "",
  "initiatorAccountHolderId": "ebfa3e16-63c4-48e3-ae59-a3194a867269",
  "externalTransactionInitiatorId": "c62d1e6b-39ce-496e-bf6d-8a019d2f534e",
  "originatingChannel": "EXTERNAL",
  "id": "2av81w47-9367-1295-h4ng-1q520p28wfn1",
  "latestStatus": {
    "status": "NEW",
    "message": "Transaction creation successful",
    "createdBy": {
      "id": "b6333b53-3222-4227-a71e-718b25ca3ea4",
      "type": "service-account"
    },
    "createdAt": "2021-07-01T17:40:22.601Z"
  },
  "reversalReason": ""
}
				
			
Exit mobile version