# List transactions (transaction banking) Lists transactions of your transaction banking account. # OpenAPI definition ```json { "openapi": "3.0.0", "info": { "title": "Banking - Transaction banking", "version": "0.9.0", "description": "Transaction banking API", "contact": { "name": "API Support", "url": "https://developers.pismo.io/support/" }, "license": { "name": "Copyright Pismo" } }, "servers": [ { "url": "https://sandbox.pismolabs.io", "description": "Sandbox API server for testing" } ], "security": [ { "BearerAuth": [] } ], "tags": [ { "name": "Transactions", "description": "Transaction endpoints" } ], "components": { "parameters": { "AuthorizationIdQuery": { "name": "authorizationId", "in": "query", "description": "Authorization ID", "schema": { "type": "integer", "format": "int64" }, "required": false, "deprecated": true, "example": 78 }, "AuthorizationTrackingIdQuery": { "name": "authorizationTrackingId", "in": "query", "description": "Authorization tracking ID", "schema": { "type": "string" }, "required": false, "example": "68ea7e26-e506-11ed-b5ea-0242ac120002" }, "AuthorizationTypeQuery": { "name": "authorizationType", "in": "query", "description": "Authorization type", "schema": { "type": "string", "enum": [ "PLATFORM", "NETWORK" ] }, "required": false, "example": "PLATFORM" }, "CreditQuery": { "name": "credit", "in": "query", "description": "Show only credit (`true`) or debit (`false`) transactions.", "schema": { "type": "boolean" }, "required": false, "example": true }, "CustomerIdQuery": { "name": "customerId", "in": "query", "description": "Customer ID", "schema": { "type": "integer", "format": "int64" }, "required": false, "example": 4321 }, "EventDateEndQuery": { "name": "eventDateEnd", "in": "query", "description": "End of event date period. Format = yyyy-mm-dd:hr:mm:ss.", "schema": { "type": "string", "format": "date-time" }, "required": false, "example": "2023-04-27T13:00:00Z" }, "EventDateStartQuery": { "name": "eventDateStart", "in": "query", "description": "Start of event date period. Format = yyyy-mm-dd:hr:mm:ss.", "schema": { "type": "string", "format": "date-time" }, "required": false, "example": "2023-04-27T12:00:00Z" }, "IDsQuery": { "name": "ids", "in": "query", "description": "Array of transaction IDs", "schema": { "type": "array", "items": { "type": "integer", "format": "int64" }, "minItems": 1, "maxItems": 100 }, "required": false, "example": [ 1, 2, 3, 4, 5, 6 ] }, "LimitQuery3": { "name": "limit", "in": "query", "description": "Maximum number of items per page. Defaults to `10`", "schema": { "type": "integer", "format": "int32", "default": 10, "maximum": 100 }, "required": false, "example": 100 }, "numberOfLatestTransactionsQuery": { "name": "numberOfLatestTransactions", "in": "query", "description": "Number of latest transactions. Get the latest transactions based on the date specified in the `event_date` field. Note that this filter overwrites page filters and doesn't allow any other filters.", "schema": { "type": "integer", "format": "int64", "minimum": 1, "maximum": 500 }, "example": 10 }, "OffsetQuery": { "name": "offset", "in": "query", "description": "Starting point for the results list. Default is `0`", "required": false, "schema": { "type": "integer", "format": "int32", "default": 0, "minimum": 0 }, "example": 1 }, "OrderQuery": { "name": "order", "in": "query", "description": "Order of the result list. The results are always ordered by transaction date. This param indicates whether the order is ascending ('asc') or descending ('desc').", "schema": { "type": "string", "enum": [ "asc", "desc" ] }, "required": false, "example": "asc" }, "PaymentIdMethodQuery": { "name": "paymentMethodId", "in": "query", "description": "Payment method ID", "schema": { "type": "string" }, "required": false, "example": "MASTERCARD" }, "ProcessingCodeQuery": { "name": "processingCode", "in": "query", "description": "Processing code used to create the transaction", "schema": { "type": "string" }, "required": false, "example": "219248" }, "StatementIdQuery": { "name": "statementId", "in": "query", "description": "Statement ID", "schema": { "type": "integer", "format": "int64" }, "required": false, "example": 1234 }, "StatementPostQuery": { "name": "statementPost", "in": "query", "description": "Filter transactions posted to the statement.", "schema": { "type": "boolean" }, "required": false, "example": true }, "TransactionTypeIdQuery": { "name": "transactionTypeId", "in": "query", "description": "Transaction type ID", "schema": { "type": "integer", "format": "int64" }, "required": false, "example": 5678 }, "UserCategoryQuery": { "name": "userCategory", "in": "query", "description": "User category", "schema": { "type": "string" }, "required": false, "example": "RETAIL" } }, "schemas": { "AccountID": { "type": "integer", "format": "int64", "description": "Account ID", "example": 1234 }, "Amount": { "type": "object", "description": "Amount", "properties": { "value": { "$ref": "#/components/schemas/AmountValue" }, "currency": { "$ref": "#/components/schemas/Currency" } }, "required": [ "value" ] }, "AmountValue": { "type": "number", "format": "float", "description": "Amount value", "exclusiveMinimum": false, "minimum": 0, "maximum": 100000000000000000, "example": 1000.52 }, "Authorization": { "type": "object", "description": "Authorization", "properties": { "id": { "$ref": "#/components/schemas/AuthorizationID" }, "type": { "$ref": "#/components/schemas/AuthorizationType" }, "code": { "$ref": "#/components/schemas/AuthorizationCode" }, "payment_method_id": { "$ref": "#/components/schemas/PaymentMethod" }, "tracking_id": { "$ref": "#/components/schemas/TrackingID" } } }, "AuthorizationCode": { "type": "string", "description": "Authorization code or network approval code", "example": "1234" }, "AuthorizationID": { "type": "integer", "format": "int64", "description": "Authorization ID", "example": 5678 }, "AuthorizationType": { "type": "string", "enum": [ "PLATFORM", "NETWORK" ], "description": "Authorization type", "example": "PLATFORM" }, "Currency": { "type": "string", "description": "3-letter code in ISO 4217-compliant format for the currency used in the transaction.", "maxLength": 3, "minLength": 3, "example": "USD" }, "ErrorCode": { "description": "Error code\n`minLength: 1`\n`maxLength: 12`\n", "type": "string", "minLength": 1, "maxLength": 12, "example": "WPMT0017" }, "ErrorMessage": { "description": "Error message\n`minLength: 1`\n`maxLength: 1000`\n", "type": "string", "minLength": 1, "maxLength": 1000, "example": "Invalid JSON payload received: Error unmarshalling request" }, "ErrorResponse": { "type": "object", "properties": { "code": { "$ref": "#/components/schemas/ErrorCode" }, "message": { "$ref": "#/components/schemas/ErrorMessage" } } }, "EventDate": { "type": "string", "format": "date-time", "description": "Event date in format ISO 8601.", "example": "2023-04-27T12:01:24Z" }, "ExternalAccountID": { "maxLength": 60, "type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Custom account ID. Used as the key for all operations (manage accounts, transactions, etc.) on the corporate layer.\n\nThis field is:\n- Unique within the Organization\n- Immutable: The field cannot be updated.\n- Not recyclable: You can't reuse an external account ID, even if the account that was using it has been canceled.\n", "example": "b993ba96-b3e8-4ef7-9cf7-7eee5ddafdab" }, "HasNext": { "type": "boolean", "description": "Whether there are more pages after the current page (`true`) or not (`false`).", "example": true }, "IsCredit": { "type": "boolean", "description": "Is the transaction a credit (`true`) or debit (`false`)?", "example": true }, "ListTransactionsResponse": { "title": "ListTransactionsResponse", "type": "object", "properties": { "transactions": { "type": "array", "description": "List of transactions", "items": { "$ref": "#/components/schemas/TransactionResponse" } }, "pagination": { "$ref": "#/components/schemas/OffsetPagination" } } }, "MaxItemsPerPage": { "type": "integer", "format": "int32", "description": "Maximum number of items per page", "example": 10 }, "Metadata": { "type": "object", "description": "Key-value pairs containing data intended for storage in the Pismo system.
\nNOTES:\n- The `metadata` field includes a `corporate_metadata` object with the following fields:\n - `credit_external_account_id`: Included in the `corporate_metadata` field when it's provided in the credit leg.\n - `debit_external_account_id`: Included in the `corporate_metadata` field when it's provided in the debit leg.\n - `earmark_id`: Included in the `corporate_metadata` field when it's provided in the debit leg.\n- The `corporate_metadata` attribute must be an object. A type mismatch results in an error as mapped in the responses section.\n", "example": { "my-id": 2932 } }, "Offset": { "type": "integer", "format": "int32", "description": "Starting index of the result list. Default is 0.", "example": 10 }, "OffsetPagination": { "type": "object", "description": "Data related to list pagination using an offset parameter", "properties": { "has_next": { "$ref": "#/components/schemas/HasNext" }, "limit": { "$ref": "#/components/schemas/MaxItemsPerPage" }, "offset": { "$ref": "#/components/schemas/Offset" } } }, "PaymentDatetime": { "type": "string", "format": "date-time", "description": "Date and time of the payment. Specifying a `payment_datetime` value impacts the account balance history.
\nNotes:\n - The payment datetime is in ISO 8601 format.\n - You can backdate payments a maximum of 390 calendar days. You can postdate payments a maximum of 10 calendar days.\n", "example": "2023-03-10T19:05:56.743Z" }, "PaymentMethod": { "type": "string", "description": "Payment method", "example": "MASTERCARD" }, "PostedTransaction": { "type": "boolean", "description": "Are transactions posted on statements?", "example": false }, "ProcessingCodeDescription": { "type": "string", "description": "Processing code description", "example": "Hold Funds" }, "ProgramID3": { "type": "integer", "format": "int64", "description": "Program ID. This is a client-provided ID.", "example": 2222 }, "ProcessingCode": { "type": "string", "description": "Processing code used to create the underlying transaction. Each internal operation type uses a default processing code.
\n`minLength: 1`\n`maxLength: 6`\n", "minLength": 1, "maxLength": 6, "example": "219248" }, "SoftDescriptor": { "type": "string", "description": "Brief description that helps to identify a particular transaction on the bank statement.", "example": "ACME Inc. - Invoice 2938", "maxLength": 100, "minLength": 0 }, "TrackingID": { "type": "string", "description": "A unique payment tracking number provided by the client. If an existing `tracking_id` already exists in the system, the API returns a `409` error.\n\nThis field is:\n - Unique within the Organization.\n - Immutable — It can't be updated.\n - Not recyclable — You can't reuse a `tracking_id`.\n", "minLength": 1, "maxLength": 43, "example": "0a50c88a-ade8-4bcc-a639-9a0b0f11e244" }, "TransactionCreatedAt": { "type": "string", "format": "date-time", "description": "Transaction creation date in format ISO 8601", "example": "2023-04-27T12:01:24Z" }, "TransactionID": { "type": "integer", "format": "int64", "description": "Transaction ID", "example": 1111 }, "TransactionResponse": { "type": "object", "properties": { "id": { "$ref": "#/components/schemas/TransactionID" }, "program_id": { "$ref": "#/components/schemas/ProgramID3" }, "account_id": { "$ref": "#/components/schemas/AccountID" }, "external_account_id": { "$ref": "#/components/schemas/ExternalAccountID" }, "soft_descriptor": { "$ref": "#/components/schemas/SoftDescriptor" }, "processing_code": { "$ref": "#/components/schemas/ProcessingCode" }, "processing_description": { "$ref": "#/components/schemas/ProcessingCodeDescription" }, "amount": { "$ref": "#/components/schemas/Amount" }, "event_date": { "$ref": "#/components/schemas/EventDate" }, "payment_date": { "$ref": "#/components/schemas/PaymentDatetime" }, "created_at": { "$ref": "#/components/schemas/TransactionCreatedAt" }, "transaction_type": { "$ref": "#/components/schemas/TransactionType" }, "authorization": { "$ref": "#/components/schemas/Authorization" }, "metadata": { "$ref": "#/components/schemas/Metadata" } } }, "TransactionType": { "type": "object", "description": "Transaction type", "properties": { "id": { "$ref": "#/components/schemas/TransactionTypeID" }, "description": { "$ref": "#/components/schemas/TransactionTypeDescription" }, "credit": { "$ref": "#/components/schemas/IsCredit" }, "posted_transaction": { "$ref": "#/components/schemas/PostedTransaction" } } }, "TransactionTypeDescription": { "type": "string", "description": "Transaction type description", "maxLength": 30, "example": "Purchase" }, "TransactionTypeID": { "type": "integer", "format": "int64", "description": "Transaction type ID", "example": 2345 } }, "responses": { "500InternalServer": { "description": "Internal Server Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" }, "examples": { "Generic internal error": { "value": { "code": "ECMN9999", "message": "Internal error" } } } } } } }, "securitySchemes": { "BearerAuth": { "type": "http", "scheme": "bearer", "bearerFormat": "JWT" } } }, "paths": { "/corporate/v1/corporate-transactions": { "get": { "summary": "List transactions (transaction banking)", "description": "Lists transactions of your transaction banking account.", "operationId": "get-corporate-transactions", "tags": [ "Transactions" ], "parameters": [ { "$ref": "#/components/parameters/OffsetQuery" }, { "$ref": "#/components/parameters/LimitQuery3" }, { "$ref": "#/components/parameters/StatementIdQuery" }, { "$ref": "#/components/parameters/CustomerIdQuery" }, { "$ref": "#/components/parameters/TransactionTypeIdQuery" }, { "$ref": "#/components/parameters/ProcessingCodeQuery" }, { "$ref": "#/components/parameters/CreditQuery" }, { "$ref": "#/components/parameters/StatementPostQuery" }, { "$ref": "#/components/parameters/AuthorizationIdQuery" }, { "$ref": "#/components/parameters/AuthorizationTypeQuery" }, { "$ref": "#/components/parameters/EventDateStartQuery" }, { "$ref": "#/components/parameters/EventDateEndQuery" }, { "$ref": "#/components/parameters/OrderQuery" }, { "$ref": "#/components/parameters/AuthorizationTrackingIdQuery" }, { "$ref": "#/components/parameters/IDsQuery" }, { "$ref": "#/components/parameters/UserCategoryQuery" }, { "$ref": "#/components/parameters/PaymentIdMethodQuery" }, { "$ref": "#/components/parameters/numberOfLatestTransactionsQuery" } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ListTransactionsResponse" }, "examples": { "Example transactions list": { "value": { "transactions": [ { "id": 1111, "program_id": 2222, "account_id": 1234, "external_account_id": "b993ba96-b3e8-4ef7-9cf7-7eee5ddafdab", "soft_descriptor": "Purchase", "processing_code": "219248", "processing_description": "Hold Funds", "amount": { "currency": "USD", "value": 1000.52 }, "event_date": "2023-04-27T12:01:24Z", "payment_date": "2023-04-27T12:01:24Z", "created_at": "2023-04-27T12:01:24Z", "transaction_type": { "id": 2345, "description": "Purchase", "credit": false, "posted_transaction": true }, "authorization": { "id": 5678, "type": "PLATFORM", "code": "1234" }, "metadata": { "invoice": 2938 } }, { "id": 1112, "program_id": 2222, "account_id": 1234, "external_account_id": "b993ba96-b3e8-4ef7-9cf7-7eee5ddafdac", "soft_descriptor": "Purchase", "processing_code": "219248", "processing_description": "Hold Funds", "amount": { "currency": "USD", "value": 1000.52 }, "event_date": "2023-04-27T12:02:24Z", "payment_date": "2023-04-27T12:02:24Z", "created_at": "2023-04-27T12:02:24Z", "transaction_type": { "id": 2345, "description": "Purchase", "credit": false, "posted_transaction": true }, "authorization": { "id": 5679, "type": "PLATFORM", "code": "1234" }, "metadata": { "invoice": 2938 } } ], "pagination": { "has_next": false, "limit": 10, "offset": 0 } } } } } } }, "400": { "description": "A Bad Request validation error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" }, "examples": { "Invalid filter boolean value": { "value": { "code": "WCTR0003", "message": "param_name is not a valid boolean value" } }, "Invalid authorization type value": { "value": { "code": "WCTR0003", "message": "authorization type should be PLATFORM or NETWORK" } }, "Invalid order type": { "value": { "code": "WCTR0003", "message": "invalid order type" } }, "Invalid request parameters": { "value": { "code": "WCTR0004", "message": "Invalid request parameters" } } } } } }, "401": { "description": "Unauthorized.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" }, "examples": { "Account not authorized": { "value": { "code": "WCAC0001", "message": "Account not authorized" } } } } } }, "403": { "description": "Forbidden", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" }, "examples": { "Forbidden request": { "value": { "message": "access denied" } } } } } }, "500": { "$ref": "#/components/responses/500InternalServer" } } } } } } ```