# Settle float payment Enables users to manually settle a float payment and credit the pending float amount. To settle a float payment, you must provide a valid `tracking_id`. See the Examples dropdown menu for a sample payload. For more information about payments operations, see [Corporate Banking Launch Reference](doc:corporate-banking-launch-reference). The payment created generates the following events: - [Float payment status change](https://developers.pismo.io/events/docs/corporate-float-payment-status-change-1) - [Authorization created](https://developers.pismo.io/events/docs/authorization-authorization-event-1) - [Account balance changed](https://developers.pismo.io/events/docs/account-balances-balance-change-1). - [Account balance changed (Availables)](https://developers.pismo.io/events/docs/availables-change-available-1) - [Transaction created](https://developers.pismo.io/events/docs/transaction-creation-1). - [Accounting entry created](https://developers.pismo.io/events/docs/accounting-entry-creation-1) - If flex controls are configured, a [Flex control evaluated](https://developers.pismo.io/events/docs/rules-evaluation-requested-1) event is triggered. For more information about events and setting up event notifications, refer to [Data and reporting](doc:data-reporting-overview). # 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": "Payments", "description": "Payment endpoints supporting external accounts" } ], "components": { "parameters": { "TrackingIdPath2": { "name": "trackingId", "in": "path", "description": "Original tracking ID provided when the float payment is created.", "schema": { "type": "string" }, "required": true, "example": "0a50c88a-ade8-4bcc-a639-9a0b0f11e245" } }, "schemas": { "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" } } }, "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" }, "UpdatePaymentResponse": { "title": "UpdatePaymentResponse", "type": "object", "properties": { "tracking_id": { "$ref": "#/components/schemas/TrackingID" } } } }, "responses": { "403Forbidden": { "description": "The request has been lost" }, "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-float-cashin/{trackingId}": { "patch": { "summary": "Settle float payment", "description": "Enables users to manually settle a float payment and credit the pending float amount.\n\nTo settle a float payment, you must provide a valid `tracking_id`.\n\nSee the Examples dropdown menu for a sample payload.\n\nFor more information about payments operations, see [Corporate Banking Launch Reference](https://developers.pismo.io/pismo-docs/docs/corporate-banking-launch-reference).\n\nThe payment created generates the following events:\n- [Float payment status change](https://developers.pismo.io/events/docs/corporate-float-payment-status-change-1)\n- [Authorization created](https://developers.pismo.io/events/docs/authorization-authorization-event-1)\n- [Account balance changed](https://developers.pismo.io/events/docs/account-balances-balance-change-1).\n- [Account balance changed (Availables)](https://developers.pismo.io/events/docs/availables-change-available-1)\n- [Transaction created](https://developers.pismo.io/events/docs/transaction-creation-1).\n- [Accounting entry created](https://developers.pismo.io/events/docs/accounting-entry-creation-1)\n- If flex controls are configured, a [Flex control evaluated](https://developers.pismo.io/events/docs/rules-evaluation-requested-1) event is triggered.\n\nFor more information about events and setting up event notifications, refer to [Data and reporting](https://developers.pismo.io/pismo-docs/docs/data-reporting-overview).", "parameters": [ { "$ref": "#/components/parameters/TrackingIdPath2" } ], "operationId": "patch-corporate-float-cash-in", "tags": [ "Payments" ], "responses": { "200": { "description": "Ok", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdatePaymentResponse" } } } }, "400": { "description": "Bad request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" }, "examples": { "Missing HTTP parameters": { "value": { "code": "WCMN0003", "message": "Missing HTTP parameters" } }, "Holiday error": { "value": { "code": "WCFC0006", "message": "Cannot post transaction on holidays" } }, "Weekend error": { "value": { "code": "WCFC0007", "message": "Cannot post transaction on weekends" } }, "Invalid account status": { "description": "This error occurs when the account is in an invalid state, an example is when the account cannot be credited or debited", "value": { "code": "WCFC0009", "message": "Invalid account status" } }, "Account closed error": { "description": "This error occurs when the client sends a force post payment and the account has been closed", "value": { "code": "WCFC0011", "message": "Action not permitted on a closed account" } }, "Orgs operation not found or parameterized": { "value": { "code": "WCFC0012", "message": "Orgs operations not found or parameters are incorrect or invalid" } }, "Invalid account program type": { "value": { "code": "WCFC0013", "message": "The account's program type is invalid" } }, "Invalid header account": { "value": { "code": "WCAC0002", "message": "Invalid header account" } }, "Float payment record not found": { "value": { "code": "WCFC0017", "message": "Float payment record not found" } }, "Float payment is already settled": { "value": { "code": "WCFC0018", "message": "Float payment with trackingID (tracking_id) is already settled" } }, "Corporate account not found": { "value": { "code": "WCFC0019", "message": "Corporate account not found" } }, "Tracking ID locked": { "description": "This error occurs when a transaction with this tracking ID is already in progress", "value": { "code": "WCFC0022", "message": "Transaction using this tracking_id is in progress, please try again later" } }, "Operations blocked": { "description": "This error occurs when there's an operations block for this account", "value": { "code": "WCFC0023", "message": "Operations blocked for account" } } } } } }, "403": { "$ref": "#/components/responses/403Forbidden" }, "500": { "$ref": "#/components/responses/500InternalServer" } } } } } } ```