> ## Documentation Index > Fetch the complete documentation index at: https://docs.restaurant365.com/llms.txt > Use this file to discover all available pages before exploring further. # /public/accounting/v1/accounts-payable/payments > Updates the approval status of AP payments in bulk ## OpenAPI ````json PATCH /public/accounting/v1/accounts-payable/payments { "openapi": "3.0.1", "info": { "title": "R365.PublicApi", "contact": { "name": "R365 Services Team", "email": "r365@restaurant365.com" }, "version": "1.0" }, "security": [ { "Bearer": [] } ], "paths": { "/public/accounting/v1/accounts-payable/payments": { "patch": { "tags": [ "accounting" ], "description": "Updates the approval status of AP payments in bulk", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/R365.Accounting.Public.Contracts.Payments.Models.PatchPaymentsRequest" } } } }, "responses": { "200": { "description": "All payments updated successfully.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/R365.Accounting.Public.Contracts.Payments.Models.PatchPaymentsResponse" } } } }, "207": { "description": "Multi-Status – Batch operation result containing status for each payment in the request.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/R365.Accounting.Public.Contracts.Payments.Models.PatchPaymentsResponse" } } } }, "400": { "description": "Bad request – one or more validation errors occurred." }, "401": { "description": "Unauthorized – authentication is required and has failed or has not been provided." }, "403": { "description": "Forbidden – the caller does not have permission to perform this operation." }, "422": { "description": "Unprocessable Content", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/R365.Accounting.Public.Models.R365Error" } } } } } } } }, "components": { "schemas": { "R365.Accounting.Public.Contracts.Payments.Models.PatchPaymentsRequest": { "type": "object", "properties": { "payments": { "type": "array", "items": { "$ref": "#/components/schemas/R365.Accounting.Public.Contracts.Payments.Models.PaymentPatchItem" }, "description": "The list of payments to patch.", "nullable": true } }, "description": "Updates the approval status of AP payments in bulk." }, "R365.Accounting.Public.Contracts.Payments.Models.PatchPaymentsResponse": { "type": "object", "properties": { "results": { "type": "array", "items": { "$ref": "#/components/schemas/R365.Accounting.Public.Contracts.Payments.Models.PaymentPatchResult" }, "description": "Per-item processing outcomes, one entry per payment in the original request.", "nullable": true } }, "description": "Response from a bulk AP Payment patch operation." }, "R365.Accounting.Public.Models.R365Error": { "type": "object", "properties": { "errorCode": { "type": "string", "nullable": true }, "innerError": { "$ref": "#/components/schemas/R365.Accounting.Public.Models.R365Error" } } }, "R365.Accounting.Public.Contracts.Payments.Models.PaymentPatchItem": { "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier of the payment to patch.", "format": "uuid" }, "approvalStatus": { "$ref": "#/components/schemas/R365.Accounting.Public.Models.ApprovalStatus" }, "invoiceIds": { "type": "array", "items": { "type": "string", "format": "uuid" }, "description": "Invoices to associate with this payment.", "nullable": true }, "creditMemoIds": { "type": "array", "items": { "type": "string", "format": "uuid" }, "description": "Credit memos to associate with this payment.", "nullable": true } }, "description": "A single payment patch operation within a bulk patch request." }, "R365.Accounting.Public.Contracts.Payments.Models.PaymentPatchResult": { "type": "object", "properties": { "requestIndex": { "type": "integer", "description": "Zero-based position of this payment in the original bulk request array.", "format": "int32" }, "id": { "type": "string", "description": "Unique identifier of the patched payment.", "format": "uuid" }, "status": { "$ref": "#/components/schemas/R365.Accounting.Public.Contracts.Payments.Models.PaymentPatchStatus", "description": "Current status of the payment patch result." }, "errorCode": { "type": "string", "description": "Machine-readable error code when Status is Failed; otherwise `null`.", "nullable": true }, "errorMessage": { "type": "string", "description": "Human-readable error description when Status is Failed; otherwise `null`.", "nullable": true } }, "description": "Processing outcome for a single payment in a bulk patch request." }, "R365.Accounting.Public.Models.ApprovalStatus": { "enum": [ "Unapproved", "Approved" ], "type": "string", "description": "Approval status for transactions" }, "R365.Accounting.Public.Contracts.Payments.Models.PaymentPatchStatus": { "enum": [ "Succeeded", "Failed" ], "type": "string", "description": "Processing outcome for a single payment patch operation." } }, "securitySchemes": { "Bearer": { "type": "http", "description": "Put **_ONLY_** your JWT Bearer token on textbox below!", "scheme": "Bearer", "bearerFormat": "JWT" } } } } ````