# Create a new bank transaction **POST /banktransactions** The `bankAccount.id` is a required property. Before creating bank transaction, a bank account must exists. See `POST /bankaccounts` When creating a bank transaction, the backend system loads the existing bank account record using `bankAccount.id`. Information from the bank account is then appended to the bank transaction based on the transaction's direction type (inbound or outbound). * For outbound transactions, the `fromBankAccount` field is automatically populated from the specified bank account. * For inbound transactions, the `toBankAccount` field is automatically populated from the specified bank account. Note: When these fields are automatically set, any input provided in these properties will be ignored. ## Servers - https://rest.api.24sevenoffice.com/v1: https://rest.api.24sevenoffice.com/v1 () ## Authentication methods - Tfso ## Parameters #### Headers - **Authorization** (string) Authorization header ## Body parameters Content-type: application/json - **bankTransactionReference** (string) Unique identifier for the bank transaction supplied by the bank that manages the bank account. It must be globally unique across all bank accounts for the client. A duplication warning is returned if this is not the case. Min 10 and max 130 characters. - **type** (string) Direction of the payment. "Inbound" stands for an incoming payment. E.g. a payment of an invoice by a customer. "Outbound" is a payment originating from this bank account. E.g a debet card transaction, when paid for goods and services. - **bankAccount** (object) Details of the bank account involved in the transaction. - **paymentReference** (object) The payment reference must be one of the following types: text, ocr, invoiceRef. * `text`: The value is a free text reference. * `ocr`: The value is an structured OCR reference. KID number in Norway. * `invoiceRef`: The value is an invoice number. The actual value of the reference is set in the `value` property. - **amount** (object) Amount of the bank transaction. - **date** (string) Date of the transaction. - **fromBankAccount** (object) The originating bank account for transactions. This is automatically set for outbound transactions, i.e. the property is always returned in the API responses for outbound transactions. - **toBankAccount** (object) The receiving bank account for transactions. This is automatically set for inbound transactions, i.e. the property is always returned in the API responses for inbound transactions. - **bankTransactionCode** (object) The bank transaction code is a structured code that identifies the type of a transaction. The code is structured in three levels: domain, family and subfamily. * The domain code is the highest level and is used to group the transaction codes into different domains. * The family code is used to group the transaction codes within a domain. * The subfamily code is used to group the transaction codes within a family. ## Responses ### 201: Created #### Headers - **Access-Control-Allow-Origin** (string) - **Access-Control-Allow-Credentials** (string) - **X-Trace-Id** (string) #### Body Parameters: application/json (object) - **bankTransactionReference** (string) Unique identifier for the bank transaction supplied by the bank that manages the bank account. It must be globally unique across all bank accounts for the client. A duplication warning is returned if this is not the case. Min 10 and max 130 characters. - **type** (string) Direction of the payment. "Inbound" stands for an incoming payment. E.g. a payment of an invoice by a customer. "Outbound" is a payment originating from this bank account. E.g a debet card transaction, when paid for goods and services. - **bankAccount** (object) Details of the bank account involved in the transaction. - **paymentReference** (object) The payment reference must be one of the following types: text, ocr, invoiceRef. * `text`: The value is a free text reference. * `ocr`: The value is an structured OCR reference. KID number in Norway. * `invoiceRef`: The value is an invoice number. The actual value of the reference is set in the `value` property. - **amount** (object) Amount of the bank transaction. - **date** (string) Date of the transaction. - **fromBankAccount** (object) The originating bank account for transactions. This is automatically set for outbound transactions, i.e. the property is always returned in the API responses for outbound transactions. - **toBankAccount** (object) The receiving bank account for transactions. This is automatically set for inbound transactions, i.e. the property is always returned in the API responses for inbound transactions. - **bankTransactionCode** (object) The bank transaction code is a structured code that identifies the type of a transaction. The code is structured in three levels: domain, family and subfamily. * The domain code is the highest level and is used to group the transaction codes into different domains. * The family code is used to group the transaction codes within a domain. * The subfamily code is used to group the transaction codes within a family. - **status** (string) Status of the bank transaction, controlled by the backend and always returned in the API-responses. Possible values are the following: - `created`: The transaction has been created. - `closed`: The transaction has been closed in the bank reconciliation module. - **createdAt** (string(date-time)) A timestamp for when a record was created, in ISO 8601 format. - **modifiedAt** (string(date-time)) A timestamp for when one of the properties of a record was last modified, in ISO 8601 format. [Powered by Bump.sh](https://bump.sh)