Skip to main content

Boarding API (v1.0.5)

Download OpenAPI specification:Download

Welcome to the Boarding API documentation!

Here you will find our collection of endpoints for boarding an managing accounts.

Introduction

This is the reference documentation and schemas for the Boarding API.

Authentication

The platform uses API Keys to manage access to the API. You can pass the API key in the x-api-key header to the request. Talk you your sales rep about acquiring these API keys. Authorization is done via headers. You should pass the api key as the value to the x-api-key header. For example, x-api-key: ${API_KEY}.

Please note that you will be given 2 API keys, one public key and one private key. Use the private key for all server to server communication. The public key is used for interfacing wih the JS SDK.

Accounts

A Forward Account is created when you have an Application that has gone through the boarding process to get to an approved state. You can fetch a particular Account, find all the Accounts that you are associated with, and update account name and user_fields. Note:

  1. Each Account is required to have a Company as well as an Address.
  2. You can only view and patch Accounts if you have the correct level of access.

Fetch an Account By id

You will need the unique id for the Account.

Authorizations:
x-api-key
path Parameters
id
required
string

Responses

Fetch Accounts

You can fetch all the Accounts that are associated with you. Additionally there is further filtering available for Account Name or Business Id

Authorizations:
x-api-key
query Parameters
required
object (AccountFilterRequestDto)

Responses

Applications

This is an object that represents a Forward Application. This is how you get started on Forward to initiate the process of having an Account. You can Create a Draft Application or Update the Draft Application. Additionally, you can also generate an Application Link to update or submit a new Boarding application. All the Applications that were created by you can also be retrieved.

Fetch a boarding Application by id

Retrieve complete details about a specific boarding application by its unique identifier. This endpoint returns all application information including status, business details, company information, and configuration. Use this to review application details at any stage of the onboarding process, from draft to approved status. The response includes requires_bank_account_file_ids_on_submit: when true, your submit request must include file_ids with uploaded bank-validation documents.

Authorizations:
x-api-key
path Parameters
id
required
string

Responses

Update an existing draft boarding Application

Update an existing draft boarding application to modify or complete application details. Important: This endpoint can only be used to update applications that are in DRAFT status. Once an application has been submitted and moved to other statuses (such as UNDER_REVIEW, APPROVED, etc.), it cannot be updated through this route. Use this to save your progress, correct information, or add missing details before submitting the application. You may include external_account_id to set or update your partner identifier for the account. When updating user_fields, the value must conform to the Partner's user_fields_schema if validation is enabled.

Authorizations:
x-api-key
path Parameters
id
required
string
Request Body schema: application/json
business_id
required
string

The Business ID

name
required
string [ 0 .. 100 ] characters

Account Name

sales_code_id
string [ 0 .. 50 ] characters

Sales Code ID

object (AccountCompanyRequestDto)

Company Information - Supports both US (EIN) and Canadian (BN) applications

object (AddressRequestDto)

Address Info

object (ApplicationIndustryVolumeExtDto)

Partner-facing industry and volume. Use bank_volume for expected annual bank-rail processing volume; it is mapped to ACH annual fields on persist.

object (ServicesDeliveriesRequestDto)

Service Delivery Information

object (TransactionModesRequestDto)

Service Delivery Information

Array of objects (OwnerUpdateRequestDto)

Owners Information

processing_plan_id
string

Processing Plan id

terms_accepted
boolean

Terms and Conditions are accepted or not

object (PartnerDataDto)

Partner Data Information

country
string [ 0 .. 10 ] characters ^(US|CA)$
Default: "US"

Country code - US or CA

external_account_id
string [ 0 .. 255 ] characters

Partner's external identifier for the account (e.g. partner system account ID)

object

User-defined fields as free-form JSON object

Responses

Request samples

Content type
application/json
{
  • "business_id": "string",
  • "name": "string",
  • "sales_code_id": "string",
  • "company": {
    },
  • "business_address": {
    },
  • "industry_volume": {
    },
  • "services_deliveries": {
    },
  • "transaction_modes": {
    },
  • "owners": [
    ],
  • "processing_plan_id": "string",
  • "terms_accepted": true,
  • "partner_data": {
    },
  • "country": "US",
  • "external_account_id": "string",
  • "user_fields": {
    }
}

Deleting an existing Application in DRAFT or CANCELLED state

Permanently delete a boarding application that is in DRAFT or CANCELLED status. Important: This operation can only be performed on applications in DRAFT or CANCELLED states. Applications in other statuses (such as UNDER_REVIEW, APPROVED, DECLINED, etc.) cannot be deleted. Once an application is deleted, it will be permanently removed and will no longer appear in application lists or be accessible through the API. Use this to clean up draft applications that are no longer needed or to remove cancelled applications from your records.

Authorizations:
x-api-key
path Parameters
id
required
string

Responses

Submit a boarding Application

Submit a draft boarding application to move it to underwriting. The application must be in DRAFT status.

Access: Submit via API is an entitlement and is not available to every integration. Contact support if you want to learn more about eligibility or enabling this capability.

You can change most details about the application during the submit. Include the full application payload with any updates. Most fields from the draft can be modified in this request. Note: processing_plan_data cannot be changed on submit; the value from the draft is always used.

Make sure to select the signer. Exactly one owner in the owners array must have signer set to true. This is the person who will sign the agreement and become the primary business user.

Required fields for submit:

  • terms_accepted — must be true.
  • attest_verified — must be true (your attestation that the data is accurate).
  • terms_version — must match GET /applications/{id}/terms.
  • file_ids — required when GET /applications/{id} returns requires_bank_account_file_ids_on_submit true; use file IDs from this application's uploads.

Optional bank_account (US only): You may include US bank details for the business (routing_number, account_number, account_name, account_sub_type checking or savings). Not available when country is CA.

Typical workflow:

  1. GET /applications/{id}/terms for terms_version; GET /applications/{id} for requires_bank_account_file_ids_on_submit and other fields.
  2. Set terms_accepted and attest_verified to true; set terms_version.
  3. If required, upload documents (initiate/complete file upload) and pass file_ids on submit.
  4. Set one owner's signer to true.
  5. Submit the full application payload.

See create_application for ownership types, owner titles, and country-specific validations.

Authorizations:
x-api-key
path Parameters
id
required
string
Request Body schema: application/json
business_id
required
string

The Business ID under which the account will be created. Choose carefully: business users can manage accounts under the given Business, and this selection affects your workflows. Must match the application's business.

name
required
string [ 0 .. 100 ] characters

Account name. Display name for the merchant account. Max 100 characters.

sales_code_id
string [ 0 .. 50 ] characters

Optional. Sales code identifier.

required
object (AccountCompanyRequestDto)

Company Information - Supports both US (EIN) and Canadian (BN) applications

required
object (AddressRequestDto)

Address Info

required
object (ApplicationIndustryVolumeExtDto)

Partner-facing industry and volume. Use bank_volume for expected annual bank-rail processing volume; it is mapped to ACH annual fields on persist.

required
object (ServicesDeliveriesRequestDto)

Service Delivery Information

required
object (TransactionModesRequestDto)

Service Delivery Information

required
Array of objects (OwnerUpdateRequestDto) [ 1 .. 2147483647 ] items

At least one owner. Exactly one must have signer: true. Include id for existing owners.

processing_plan_id
required
string

Processing plan ID. Must be set before submit.

terms_accepted
boolean

Required: must be true to submit. Confirms that you have read and agreed to our terms. You can read the terms by doing a GET on the application (termsAndConditions and termsAndConditionsAddendum are returned in the response).

object (PartnerDataDto)

Partner Data Information

country
string [ 0 .. 10 ] characters ^(US|CA)$

Country: US or CA. Determines validation rules. Default US.

external_account_id
string [ 0 .. 255 ] characters

Optional. Your external identifier for the account.

object

Optional. Your custom key-value data. Conforms to your user_fields_schema when enabled for your configuration.

terms_version
string

Required when partner submit_apps_via_api_enabled is true: must match GET /applications/{id}/terms response terms_version.

attest_verified
boolean

Must be true to submit. You attest that the submitted application and bank details (if any) are accurate.

object (ApplicationSubmitBankAccountDto)

Optional US bank account for the business on submit. Only supported when submit country is US.

file_ids
Array of strings

When GET application returns requires_bank_account_file_ids_on_submit true, send one or more file IDs from uploads attached to this application. Omit or empty when that flag is false.

Responses

Request samples

Content type
application/json
{
  • "business_id": "string",
  • "name": "string",
  • "sales_code_id": "string",
  • "company": {
    },
  • "address": {
    },
  • "industry_volume": {
    },
  • "services_deliveries": {
    },
  • "transaction_modes": {
    },
  • "owners": [
    ],
  • "processing_plan_id": "string",
  • "terms_accepted": true,
  • "partner_data": {
    },
  • "country": "string",
  • "external_account_id": "string",
  • "user_fields": {
    },
  • "terms_version": "string",
  • "attest_verified": true,
  • "bank_account": {
    },
  • "file_ids": [
    ]
}

List boarding Applications

Retrieve a paginated list of all boarding applications associated with your account. Use the request parameters to filter results by status, business ID, or creation timestamps. Each item includes requires_bank_account_file_ids_on_submit when you need to attach file_ids on submit.

Authorizations:
x-api-key
query Parameters
required
object (ApplicationFilterRequestDto)

Application Filter Request

Responses

Create a boarding Application

Create a new draft boarding application to initiate the onboarding process on Forward. This endpoint creates an application in DRAFT status, which allows you to save your progress and complete the application over time. Note: Most fields in the request are optional - you can create a minimal draft and add details later, or provide complete information upfront.

Important: Once the application is submitted (via application link), it will be processed and go through our approval workflow. Note: Webhooks are available to receive real-time notifications about application status changes, eliminating the need for polling.

Country: The country field (or address.country) determines US vs Canadian (CA) application behavior. Set country to US or CA accordingly; ownership types and validations depend on the selected country. For payments terminology, US uses ACH and Canada uses EFT.

External Account ID: Optional external_account_id lets you store your own identifier for the account (e.g. partner system account ID). It is persisted with the application and copied to the Account when the application is approved; partners can also update it later via the Account API.

User Fields and Schema: Optional user_fields stores partner-defined key-value data. When the Partner has validate_user_fields_schema enabled, user_fields must conform to the Partner's user_fields_schema (JSON schema).

Company Ownership Types and Owner Titles (US): The following mapping shows valid owner titles for each company ownership type. Note: Owner title is optional where indicated (most clients pass null). These are optional during the 'Create Application' step and can be provided later.

LIMITED LIABILITY COMPANY

  • PRESIDENT
  • VICE_PRESIDENT
  • TREASURER
  • CEO
  • CFO
  • COO
  • SECRETARY
  • MEMBER

PRIVATE

  • PRESIDENT
  • VICE_PRESIDENT
  • SECRETARY
  • TREASURER
  • CEO
  • CFO
  • COO

TAX EXEMPT ORGANIZATION

  • ADMINISTRATOR

SOLO TRADER

  • OWNER

PARTNERSHIP

  • PARTNER

GOVERNMENT

  • Owner title is optional: pass null or omit (no titles required)

PUBLIC

  • Owner title is optional: pass null or omit (no titles required)

Canadian (CA) Business Types and Owner Titles: For applications with country = CA, use one of the following ownership types and the corresponding owner titles.

GENERAL_PARTNERSHIP

  • PARTNER

LIMITED_PARTNERSHIP

  • PARTNER

PRIVATE_CORPORATION_FEDERALLY_OR_PROVINCIALLY_INCORPORATED

  • PRESIDENT
  • VICE_PRESIDENT
  • SECRETARY
  • TREASURER
  • CEO
  • CFO
  • COO

PUBLIC_CORPORATION_SHARES_TRADED_ON_EXCHANGE

  • PRESIDENT
  • VICE_PRESIDENT
  • SECRETARY
  • TREASURER
  • CEO
  • CFO
  • COO

COOPERATIVE_FOR_PROFIT

  • PRESIDENT
  • VICE_PRESIDENT
  • SECRETARY
  • TREASURER
  • CEO
  • CFO
  • COO

COOPERATIVE_NOT_FOR_PROFIT

  • OWNER
  • PARTNER
  • PRESIDENT
  • VICE_PRESIDENT
  • SECRETARY
  • TREASURER
  • CEO
  • CFO
  • COO
  • MEMBER

NOT_FOR_PROFIT_ORGANIZATION_NON_CHARITY

  • OWNER
  • PARTNER
  • PRESIDENT
  • VICE_PRESIDENT
  • SECRETARY
  • TREASURER
  • CEO
  • CFO
  • COO
  • MEMBER

REGISTERED_CHARITY

  • OWNER
  • PARTNER
  • PRESIDENT
  • VICE_PRESIDENT
  • SECRETARY
  • TREASURER
  • CEO
  • CFO
  • COO
  • MEMBER

GOVERNMENT_ENTITY_FEDERAL_PROVINCIAL_MUNICIPAL_CROWN_CORPORATION

  • No owner titles required (government entity)

UNLIMITED_LIABILITY_CORPORATION_ULC

  • PRESIDENT
  • VICE_PRESIDENT
  • SECRETARY
  • TREASURER
  • CEO
  • CFO
  • COO

EXTRA_PROVINCIAL_CORPORATION_FOREIGN_CORPORATION_REGISTERED_IN_CANADA

  • PRESIDENT
  • VICE_PRESIDENT
  • SECRETARY
  • TREASURER
  • CEO
  • CFO
  • COO

FOREIGN_PARTNERSHIP_REGISTERED_IN_CANADA

  • PARTNER

COMMUNITY_CONTRIBUTION_COMPANY_FOR_PROFIT

  • PRESIDENT
  • VICE_PRESIDENT
  • SECRETARY
  • TREASURER
  • CEO
  • CFO
  • COO

COMMUNITY_CONTRIBUTION_COMPANY_NOT_FOR_PROFIT

  • OWNER
  • PARTNER
  • PRESIDENT
  • VICE_PRESIDENT
  • SECRETARY
  • TREASURER
  • CEO
  • CFO
  • COO
  • MEMBER
Authorizations:
x-api-key
Request Body schema: application/json
business_id
required
string

The Business ID under which the account will be created. Choose carefully: business users can manage accounts under the given Business, and this selection affects your workflows. The account will be scoped to this Business when approved.

name
required
string [ 0 .. 100 ] characters

Account name. Display name for the merchant account. Max 100 characters.

sales_code_id
string [ 0 .. 50 ] characters

Optional. Sales code identifier for tracking.

sales_agent_id
string [ 0 .. 50 ] characters

Optional. Sales agent identifier for tracking.

sales_group_id
string [ 0 .. 50 ] characters

Optional. Sales group identifier for tracking.

object (AccountCompanyRequestDto)

Company Information - Supports both US (EIN) and Canadian (BN) applications

object (AddressRequestDto)

Address Info

object (ApplicationIndustryVolumeExtDto)

Partner-facing industry and volume. Use bank_volume for expected annual bank-rail processing volume; it is mapped to ACH annual fields on persist.

object (ServicesDeliveriesRequestDto)

Service Delivery Information

object (TransactionModesRequestDto)

Service Delivery Information

Array of objects (MerchantOwnerCreationRequestDto)

Owner information. At least one owner required for submit. For create, can be added later. When submitting, exactly one owner must have signer: true.

processing_plan_id
required
string

Processing plan ID. Required. Select before generating link or submitting.

object (PartnerDataDto)

Partner Data Information

country
string [ 0 .. 10 ] characters ^(US|CA)$
Default: "US"

Country: US or CA. Determines validation rules and ownership types. Default US.

external_account_id
string [ 0 .. 255 ] characters

Optional. Your external identifier for the account (e.g. your system's account ID). Persisted and copied to the Account when approved.

object

Optional. Your custom key-value data as a JSON object. Conforms to your user_fields_schema when enabled for your configuration.

Responses

Request samples

Content type
application/json
{
  • "business_id": "string",
  • "name": "string",
  • "sales_code_id": "string",
  • "sales_agent_id": "string",
  • "sales_group_id": "string",
  • "company": {
    },
  • "address": {
    },
  • "industry_volume": {
    },
  • "services_deliveries": {
    },
  • "transaction_modes": {
    },
  • "owners": [
    ],
  • "processing_plan_id": "string",
  • "partner_data": {
    },
  • "country": "US",
  • "external_account_id": "string",
  • "user_fields": {
    }
}

Initiate multipart upload for an application file

Upload bank-validation documents when requires_bank_account_file_ids_on_submit is true on the application (for example, voided check or bank statement).

Flow

  1. Initiate (this call): Send filename, mimetype (application/pdf or image/png), size, purpose (underwriting_document), and optional document_type enum. You receive upload_id, key, and parts[].presigned_url.
  2. Upload: For each part, PUT raw bytes to its presigned_url (no JSON body, no Authorization header). Store each response ETag (keep quoting as returned).
  3. Complete: POST .../files/complete_upload with the same file metadata plus upload_id, key, and parts listing part_number and etag.

Presigned URLs expire quickly (often within minutes). Then reference returned file IDs in file_ids on submit.

Authorizations:
x-api-key
path Parameters
id
required
string
Request Body schema: application/json
filename
required
string [ 0 .. 255 ] characters

Original file name.

mimetype
required
string
Enum: "application/pdf" "image/png"

MIME type of the file (application/pdf or image/png).

size
required
integer <int64> >= 1

File size in bytes.

purpose
required
string [ 0 .. 255 ] characters

File business purpose.

document_type
string
Enum: "alien_registration_or_visa" "articles_of_incorporation" "business_bank_statement" "business_phone_bill" "business_tax_return" "drivers_license" "government_business_license" "government_photo_id" "irs_ein_letter" "irs_tax_exempt_letter" "operating_agreement" "other" "other_registration_document" "passport" "personal_bank_statement" "personal_phone_bill" "rental_or_lease_agreement" "social_security_card" "utility_bill" "w2"

Optional document classification.

Responses

Request samples

Content type
application/json
{
  • "filename": "string",
  • "mimetype": "application/pdf",
  • "size": 1,
  • "purpose": "string",
  • "document_type": "alien_registration_or_visa"
}

Complete multipart upload and attach file to application

Finishes the upload after parts are written to storage. Call only after initiate_upload and successful PUTs to each presigned_url.

Body: Same filename, mimetype, purpose, and optional document_type as initiate; size must match actual bytes uploaded; include upload_id, key, and all parts with etag from the storage responses.

Response: File metadata and message file_success. Use the file id in file_ids on submit when required.

Authorizations:
x-api-key
path Parameters
id
required
string
Request Body schema: application/json
upload_id
required
string

Multipart upload id.

key
required
string

S3 key used during initiate upload.

filename
required
string [ 0 .. 255 ] characters

Original file name.

mimetype
required
string
Enum: "application/pdf" "image/png"

MIME type of the file (application/pdf or image/png).

size
required
integer <int64> >= 1

File size in bytes.

purpose
required
string [ 0 .. 255 ] characters

File business purpose.

document_type
string
Enum: "alien_registration_or_visa" "articles_of_incorporation" "business_bank_statement" "business_phone_bill" "business_tax_return" "drivers_license" "government_business_license" "government_photo_id" "irs_ein_letter" "irs_tax_exempt_letter" "operating_agreement" "other" "other_registration_document" "passport" "personal_bank_statement" "personal_phone_bill" "rental_or_lease_agreement" "social_security_card" "utility_bill" "w2"

Optional document classification.

required
Array of objects (ApplicationFileCompleteUploadPartDto)

Completed multipart parts and ETags.

Responses

Request samples

Content type
application/json
{
  • "upload_id": "string",
  • "key": "string",
  • "filename": "string",
  • "mimetype": "application/pdf",
  • "size": 1,
  • "purpose": "string",
  • "document_type": "alien_registration_or_visa",
  • "parts": [
    ]
}

Get point-in-time terms for a boarding application

Returns the point-in-time terms snapshot for this application: terms_version, canonical_payload_json, and display strings parsed from that JSON. The snapshot is the effective terms (tenant terms with partner overrides when configured).

The snapshot is created when the application is created (POST /v1/applications). If none exists, this returns not found (you may not be enabled for API submit).

Submit: Send terms_version from this response on PUT /applications/{id}/submit together with terms_accepted true. Present the terms to the merchant using the display fields and/or canonical_payload_json as needed for your UI.

Authorizations:
x-api-key
path Parameters
id
required
string

Responses

Bank Account

Bank Account Information

Fetch Bank Accounts

Here you can fetch all the Bank Accounts that have been linked to Businesses that are linked to you.

Authorizations:
x-api-key
query Parameters
required
object (BankAccountExtFilterRequestExtDto)

Bank Account pagination and filter request

Responses

Get Bank account information

Here you can fetch a Bank Account and retrieve the status of a given bank account.

Authorizations:
x-api-key
path Parameters
id
required
string

Responses

Business

This is an object that represents a Forward Business associated with an Account. Every Account that you have must be associated with You can create a Business, fetch a particular Business or find all the Businesses that are associated to your Account.

Find all Businesses

You can find all Businesses or specifically filter by Name or Contact information.

Authorizations:
x-api-key
query Parameters
required
object (BusinessFilterRequestExtDto)

Business Information

Responses

Create a new Business

You can create a new Business that will be linked to your Account. We encourage you to complete all the fields while creating a new Business. Once you have created a Business you can start creating Applications and get associated Accounts.

Authorizations:
x-api-key
Request Body schema: application/json
name
required
string [ 0 .. 100 ] characters

Business Name

contact_email
string

Contact Email

contact_phone_number
string

Contact Phone Number

contact_phone_extension
string

Contact Phone Extension

contact_first_name
string [ 2 .. 50 ] characters

Contact First Name

contact_last_name
string [ 2 .. 50 ] characters

Contact Last Name

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "contact_email": "string",
  • "contact_phone_number": "string",
  • "contact_phone_extension": "string",
  • "contact_first_name": "string",
  • "contact_last_name": "string"
}

Fetch a Business by a unique id

Each Business has a unique id and must be associated with your Account. You can only search a Business you have access to.

Authorizations:
x-api-key
path Parameters
id
required
string

Responses

Locations

A Business on Forward can have one more Locations. Here you Create, Read, Update or Delete a Location for a Business.

Get a Location by unique id

You can review an existing Location that's assigned to a specific Business. Note: You can only review Business that you have access to.

Authorizations:
x-api-key
path Parameters
id
required
string

Responses

Edit a Location

Business Locations are always editable, please keep this information updated as your information changes.

Authorizations:
x-api-key
path Parameters
id
required
string
Request Body schema: application/json
name
required
string [ 0 .. 100 ] characters

Location Name

Responses

Request samples

Content type
application/json
{
  • "name": "string"
}

Delete a Location

If a Location needs to be deleted, you can use this endpoint to delete a Location at Forward.

Authorizations:
x-api-key
path Parameters
id
required
string

Responses

Find Locations

You can find all Locations that you have access to. Further filter on Business Location name and Business Id can be applied on the list of Locations.

Authorizations:
x-api-key
query Parameters
required
object (BusinessLocationFilterRequestExtDto)

Business Location Filter Information

Responses

Create a Location

This endpoint can be used to create a new Business Location only two fields are needed Business Id and Location Name.

Authorizations:
x-api-key
Request Body schema: application/json
business_id
required
string
name
required
string [ 0 .. 100 ] characters

Location Name

Responses

Request samples

Content type
application/json
{
  • "business_id": "string",
  • "name": "string"
}

MC Codes

Here you can find all Merchant Category Codes that are assigned to your Accounts. Please contact Forward support if you have any questions.

List all MCCs

Use this endpoint to list all of the MCCs that have been assigned to you. Please verify this information as it plays a key role in our payment processing flows, as well as the Application creation process.

Authorizations:
x-api-key
query Parameters
required
object (MccCodeFilterRequestDto)

MC Codes Filter Request

Responses

Payee

A Payee is a an entity in the platform's payment ecosystem. Using our Payee entity you can setup split payments for a given transaction. The lifecycle of a Payee is 1. A prospective payee receives an application to apply as a Payee, Note: Bank Account details is submitted with the Payee Application. Note: you can create a new payee application using link endpoint. 2. Once a payee application is filled out the application gets submitted to underwriting. 3. If our process approves the application a new payee entity comes into existence. The default state of the newly created Payee is active. You can deactivate or toggle activate for a Payee.

Deactivate an existing Payee

Deactivate a payee to temporarily disable it from being used in split payment transactions. A deactivated payee cannot receive payments as part of transaction splits, but the payee record is preserved and can be reactivated later. Use this when you need to temporarily stop payments to a payee without deleting their information, such as when a payee is on hold or under review.

Authorizations:
x-api-key
path Parameters
id
required
string

Responses

Activate an existing Payee

Activate a payee to make it available for use in split payment transactions. An activated payee can receive payments as part of a transaction split. Note: The payee must have completed the identity verification process before it can be activated. Once activated, the payee will be in an active state and can be used in payment operations.

Authorizations:
x-api-key
path Parameters
id
required
string

Responses

Find All Payees by provided request

Retrieve a paginated list of all payees associated with your Partner account. Use the request parameters to filter and paginate results. This endpoint is useful for viewing all available payees that can be used in split payment transactions.

Authorizations:
x-api-key
query Parameters
required
object (PayeeExtFilterRequestDto)

Responses

Get an existing Payee By ID

Retrieve complete details about a specific payee by its unique identifier. This endpoint returns all payee information including status, contact details, and configuration. Use this to view payee details before including them in split payment transactions.

Authorizations:
x-api-key
path Parameters
id
required
string

Responses

Find All Payee Applications by provided request

Retrieve a paginated list of all payee applications associated with your Partner account. Use the request parameters to filter and paginate results. This endpoint allows you to monitor all payee applications in various stages of the onboarding process, from pending to approved.

Authorizations:
x-api-key
query Parameters
required
object (PayeeApplicationFilterRequestDto)

Responses

Processing Plans

Processing Plans are key information that determines fees and payout processing at Forward. You can view, create, update a Processing Plan associated with your Accounts.

Find all Processing Plans

Here you can find all the Processing Plans, if you specify Name you can filter on specific Name as well.The Processing Plan data will be returned to you in a list.

Authorizations:
x-api-key
query Parameters
required
object (ProcessingPlanFilterDto)

Processing Plan Filter

Responses

Get a Processing Plan by id

Here you can review Processing Plan that has been created and verify the information is accurate. If there are any discrepancies in the Fees data please reach out as these play a key role processing payouts.

Authorizations:
x-api-key
path Parameters
id
required
string

Responses

Users

Manage user information for Businesses that you manage

View user details

Get user details

Authorizations:
x-api-key
path Parameters
id
required
string

Responses

Update a User

You can keep information regarding your user updated here.

Authorizations:
x-api-key
path Parameters
id
required
string
Request Body schema: application/json
first_name
required
string

User First Name

last_name
required
string

User Last Name

email
string

User Email Address

Responses

Request samples

Content type
application/json
{
  • "first_name": "string",
  • "last_name": "string",
  • "email": "test@test.com"
}

Update User Status

You can activate or deactivate your user.

Authorizations:
x-api-key
path Parameters
id
required
string
Request Body schema: application/json
status
required
string
Enum: "ACTIVE" "INACTIVE"

User Status

Responses

Request samples

Content type
application/json
{
  • "status": "ACTIVE"
}

Get a list of users

Authorizations:
x-api-key
query Parameters
required
object (UserFilterRequestExtDto)

Pagination list request with filter

Responses

Create a Business User

Here you can create a user for a specific Business. Provide all the necessary details about the user. We will send an automated email out informing your user to setup a password and login. You can also generated a one time login link for this user.

Authorizations:
x-api-key
Request Body schema: application/json
business_id
required
string

Business Id

first_name
required
string

User First Name

last_name
required
string

User Last Name

email
required
string [ 0 .. 70 ] characters

User Email

Responses

Request samples

Content type
application/json
{
  • "business_id": "string",
  • "first_name": "string",
  • "last_name": "string",
  • "email": "string"
}

Get a magic login link for specific user

You can retrieve a magic link for a specific Business user that you have access to.

Authorizations:
x-api-key
path Parameters
id
required
string

Responses