---
title: "Create transaction flow"
method: POST
path: "/v1/transaction-flow"
tags: ["Transaction flows"]
---

# Create transaction flow

`POST /v1/transaction-flow`

Creates a configuration linking a transaction type with a processing code. 

See [Processing codes and transaction types](https://developers.pismo.io/pismo-docs/docs/processing-codes-and-transaction-types) and [Payments configurations](https://developers.pismo.io/pismo-docs/docs/payments-configurations) for information on processing codes and transaction types, how to create them, and map them to each other.

## Request body

- TransactionFlowPost
  - `transaction_type_id` integer, required — Transaction type ID. Certain IDs are reserved by the platform and cannot be used.
  - `processing_code` string, required — Processing code that issues the transaction type.
  - `key` 'PRINCIPAL' | 'INSTALLMENT' | 'CONTRACT' | 'OTHER', required — The relation key that links transaction type and processing code. * `PRINCIPAL` uses principal amount. * `INSTALLMENT` uses installment amount. * `CONTRACT` uses contract amount. * `OTHER` uses any custom amount, such as fees, taxes, or other charges. When the key is OTHER, you must define the `custom_key` value.
  - `custom_key` string — The customized relation between transaction type and processing code. This field is tied to the type or ID of a custom fee model that configures fees, taxes, or other charges. REQUIRED if the key is OTHER.

## Response `201`

Created

- TransactionFlowPost
  - `transaction_type_id` integer, required — Transaction type ID. Certain IDs are reserved by the platform and cannot be used.
  - `processing_code` string, required — Processing code that issues the transaction type.
  - `key` 'PRINCIPAL' | 'INSTALLMENT' | 'CONTRACT' | 'OTHER', required — The relation key that links transaction type and processing code. * `PRINCIPAL` uses principal amount. * `INSTALLMENT` uses installment amount. * `CONTRACT` uses contract amount. * `OTHER` uses any custom amount, such as fees, taxes, or other charges. When the key is OTHER, you must define the `custom_key` value.
  - `custom_key` string — The customized relation between transaction type and processing code. This field is tied to the type or ID of a custom fee model that configures fees, taxes, or other charges. REQUIRED if the key is OTHER.

## Other responses

- `400` — Bad request
- `409` — Conflict
- `500` — Internal error

---

[API](https://skmtc.net/pismo/apis/platform-authentication.md) · [All operations](https://skmtc.net/pismo/apis/platform-authentication/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/pismo/platform-authentication/revisions/935b62e16de4/schema)
