Update a payer engagement

Update payer-owned fields on a PayerEngagement. Omitted fields are left unchanged.

Requires a session with recent MFA step-up for PayoutMethodChange. If step-up is missing or expired, this operation returns 403 StepUpMfaRequired; create and verify an MFA challenge at /v3/platform/mfa-challenges with requiredFor: "PayoutMethodChange", then retry.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
string
required
^[A-Za-z0-9_.]{22,80}$
string
required

Payer engagement ID (payer-owned engagement record)

Body Params

Payer-owned mutable fields for a Commercial PayerEngagement. PATCH semantics: omitted fields are left unchanged; explicit null clears nullable fields. Worker/payroll fields and payer default overrides are reserved for the future W2/payment-method substrate and are not accepted on this surface.

string
enum

Most-specific explicit setting wins: recurring invoice, then Engagement, then Payer. Inherit clears this scope's preference. Omission on PATCH leaves it unchanged. Changes govern new payment reservations.

Allowed:
date
date | null
metadata
object

Free-form key-value pairs. Max 50 keys; key length at most 40 characters; value length at most 500 characters. Where a list endpoint declares metadata filtering, it uses the QueryQL namespace via filter[metadata.{key}][eq]=value or filter[metadata.{key}][in][]=value. Endpoints that do not declare the dynamic Metadata filter do not support Metadata filtering.

expectedFundingAuthorization
object

Funding resolves atomically at one scope. Inherit carries no local value and Disabled prohibits fallback. Override requires a fundingSource; ExternalBankAccount also requires mandateId, while PaymentCard forbids a mandateId until the deferred Card-scheme work ships.

fundingAuthorization
object

Funding resolves atomically at one scope. Inherit carries no local value and Disabled prohibits fallback. Override requires a fundingSource; ExternalBankAccount also requires mandateId, while PaymentCard forbids a mandateId until the deferred Card-scheme work ships.

string

The AccountingCustomer.id from listAccountingCustomers to map this Payer engagement to. Empty clears; omitted leaves unchanged. This is a Wingspan normalized reference id, not the QuickBooks-native id.

string

The AccountingItem.id from listAccountingItems to map this Payer engagement's line item to. Empty clears; omitted leaves unchanged. This is a Wingspan normalized reference id, not the QuickBooks-native id.

Headers
string
length between 1 and 255
^[\x21-\x7e]{1,255}$

Optional idempotency token for authenticated POST and PATCH requests. Reusing the same key and body returns the cached response for 24 hours, except credential operations that explicitly document a 409 because one-time secret material is never cached; reusing it with a different body returns 409 IdempotencyKeyConflict. Use 1-255 printable ASCII characters.

string
^(?:[A-Za-z0-9_.]{22}|[a-f0-9]{24})$

Select the Account for an Account-scoped operation. A direct ServiceAccount API key MUST supply this header, and the target must be within the ServiceAccount owner's or Authorization grant's Account boundary. A Person bearer may select an Account on which it has an active Stakeholder, and an Account session may select its bound Account (or a descendant only when the session explicitly includes descendants).

string
enum
Defaults to application/json

Generated from available response content types

Allowed:
Responses

Language
Credentials
Bearer
JWT
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json
application/problem+json