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

# Create transaction flow

`POST /v1/transaction-flow`

## Request

- Base URL: `https://sandbox.pismolabs.io/transactions-core`
- URL: `https://sandbox.pismolabs.io/transactions-core/v1/transaction-flow`
- Auth: HTTP bearer

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

See [Processing codes and transaction types](doc:processing-codes-and-transaction-types) and [Payments configurations](doc: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.dev/pismo/apis/core-platform-transactions.md) - [All operations](https://skmtc.dev/pismo/apis/core-platform-transactions/llms.txt) - [OpenAPI document](https://skmtc.dev/pismo/apis/core-platform-transactions/revisions/0446e20d4547?raw)
