RocketKOR

Create a LinX Workflow

Create a LinX workflow for a new or existing Customer. The workflow defines the activities RocketKOR will execute for the Customer.

When you create a workflow request, RocketKOR sends a link directly to the Customer via SMS. The Customer will use this link to review and complete the workflow steps.

Note  For details on the activities you can include in a workflow, see LinX Workflow Steps.

Endpoint

POST /v2/linx/workflows

Authorization Header

Authorization: Bearer <access_token>

Request Body

title  REQUIRED

string

Name for the LinX workflow. This name is used internally and should describe the purpose of the workflow. Example: Send refund to John Smith

expireIn

integer

Request expiry period (in days). The request and the link provided to the Customer will expire at this time.

parameters  REQUIRED

object

Parameters to include in the workflow.

 

The following parameters apply to the notification step.

channel  REQUIRED

string enum, values: SMS

Notification method used to send the request to the Customer.

phoneNumber  REQUIRED

string

Customer’s mobile phone number. The LinX request is sent to this number via SMS.

introductoryMessage

string

Introductory text to add to the beginning of the SMS message.

 

There are no parameters for the customer-account step.

 

The following parameters apply to the lookup-profile step.

customerId  REQUIRED

string (UUID)

ID of the Customer Account.

 

The following parameters apply to the financial-account step.

financialAccountSubType  REQUIRED

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

Financial Account subtype.

 

The following parameters apply to the lookup-financial-account step.

customerFinancialAccountId  REQUIRED

string (UUID)

ID of an existing Customer Financial Account.

  • If transactionType is SEND, this account will receive funds from baFinancialAccountId.
  • If transactionType is REQUEST, this account will send funds to baFinancialAccountId.

 

The following parameters apply to the move-money step.

transactionType  REQUIRED

string enum, values: SEND, REQUEST

Type of transaction. The following values are supported:

  • SEND  Transfer funds from baFinancialAccountId to the Customer Financial Account. The Customer Financial Account is defined in financial-account (new Financial Account) or lookup-financial-account (existing Financial Account).
  • REQUEST  Transfer funds from the Customer Financial Account to baFinancialAccountId. The Customer Financial Account is defined in financial-account (new Financial Account) or lookup-financial-account (existing Financial Account).

solution  REQUIRED

string enum, values: push-to-card, ach, wire

RocketKOR solution used for the transaction.

baFinancialAccountId  REQUIRED

string (UUID)

ID of the second Financial Account to be used in the transaction.

  • If transactionType is SEND, this account will send funds to the Customer Financial Account. The Customer Financial Account is defined in financial-account (new Financial Account) or lookup-financial-account (existing Financial Account).
  • If transactionType is REQUEST, this account will receive funds from the Customer Financial Account. The Customer Financial Account is defined in financial-account (new Financial Account) or lookup-financial-account (existing Financial Account).

currency  REQUIRED

string

Currency used for the transaction. Must be an ISO 4217 alpha 3-character currency code.

amount  REQUIRED

number

Amount of the transaction. Must be a positive number.

priority  CONDITIONAL

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

default value: IMMEDIATE

Required for ACH and Wire transactions.

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.

Push to Card transactions always use the IMMEDIATE settlement priority.

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.

paymentReasonId  REQUIRED

string

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

steps  REQUIRED

array of objects

Steps included in the workflow. The steps must be listed in the following order:

  1. notification
  2. customer-account or lookup-profile
  3. financial-account or lookup-financial-account
  4. move-money

For more information, see LinX Workflow Steps.

name

string enum, values: notification, customer-account, lookup-profile, financial-account, lookup-financial-account, move-money

Name of the step. The following values are supported:

  • notification  Send an SMS message to the Customer with a link to the request.
  • customer-account  Create a new Customer Account. Use this step if the workflow is for a new Customer.
  • lookup-profile  Find an existing Customer Account. Use this step if the workflow is for an existing Customer.
  • financial-account  Create a new external bank or card Financial Account for the Customer. This step can be used for both new and existing Customers.
  • lookup-financial-account  Find an existing Financial Account for the Customer. This step can be used for existing Customers only.
  • move-money  Create a transaction using the Customer’s Financial Account from financial-account or lookup-financial-account.

Notes:

  • notification is required as the first step in the workflow.
  • Either customer-account or lookup-profile is required as the second step in the workflow.
  • If both customer-account and lookup-profile are included in the workflow, the request will fail.
  • If the workflow includes move-money, either financial-account or lookup-financial-account is required.
  • If both financial-account and lookup-financial-account are included in the workflow, the request will fail.

For more information, see LinX Workflow Steps.

Returns

Returns a unique ID for the workflow and the workflow details. The following fields are returned.

workflowId

string (UUID)

ID of the LinX workflow.

result

object

Whether the workflow was created successfully and details for any errors.

successful

boolean

Whether the workflow was created successfully.

error

object

Workflow validation errors.

timestamp

string (date-time)

Date and time of the error.

traceId

string (date-time)

Internal ID used by RocketKOR Support.

message

string

Error message.

code

string

Error code.

errors

object

(Optional) List of detailed errors.

path

string

Path of the request field that caused the error.

message

string

Error message.

errorCode

string

Error code.

fieldErrors

array

Error information by field.

fieldName

string

Name of the field.

fieldCategory

string

Field category.

code

string

Error code.

message

string

Error message.

steps

array

Steps included in the workflow. For more information, see LinX Workflow Steps.

stepName

string enum, values: notification, customer-account, lookup-profile, financial-account, lookup-financial-account, move-money

Name of the workflow step.

stepId

string (UUID)

ID of the workflow step.

SAMPLE REQUEST

				
					{
  "title": "Send a rebate to John Doe",
  "expireIn": 2,
  "parameters": {
    "channel": "SMS",
    "phoneNumber": "+16471234567",
    "introductoryMessage": "You have a rebate",
    "customerId": "01ac41f3-86a3-4651-b043-c0fbc1e1adff",
    "customerFinancialAccountId": "d83ee738-786a-43cf-b1db-24c8788523c4",
    "transactionType": "SEND",
    "solution": "push-to-card",
    "baFinancialAccountId": "31c6d624-6a0c-4049-b1f1-f3ea7d00ba35",
    "currency": "USD",
    "amount": 256.25,
    "paymentReasonId": "payment-of-rebates"
  },
  "steps": [
    {
      "name": "notification"
    },
    {
      "name": "lookup-profile"
    },
    {
      "name": "lookup-financial-account"
    },
    {
      "name": "move-money"
    }
  ]
}
				
			

SAMPLE RESPONSE

				
					{
  "workflowId": "b6c0d73e-bd7b-4447-a30f-971ecad5fa8b",
  "result": {
    "successful": true
  },
  "steps": [
    {
      "stepName": "notification",
      "stepId": "07b6944a-70e1-48f0-bbb9-bf07b3c74820"
    },
    {
      "stepName": "lookup-profile",
      "stepId": "37fd1a41-d5bb-4b08-8474-86a329210c4b"
    },
    {
      "stepName": "lookup-financial-account",
      "stepId": "ed2c04d9-a1e2-4821-91c0-51b898e70213"
    },
    {
      "stepName": "move-money",
      "stepId": "c0168342-57d9-43fd-9cb3-8f30fc0605f5"
    }
  ]
}