API documentation | API docs for agents | OpenAPI 3.1

POST /api/v1/billing/factoring/activities/records

ark.record_factoring_activity

Record Factoring Activity through the authoritative Billing application boundary.

Availability
Expanded preview
Scopes
loads:readbilling:write
ARK permissions
canViewLoadscanViewBillingcanMakeAdjustments
Team visibility
Required and enforced
Idempotency-Key
Required for this write
Approval
No MCP approval on REST API-token calls
Rate limit
API credential and organization budgets

Parameters

Idempotency-Keyheaderstringrequired
Stable key for safe replay of this exact operation input.
min length: 8; max length: 200

Request body

reasonstring

default: "Billing workbench action"; min length: 1; max length: 1000

queueQuickBooksSyncboolean

default: false

factoringAgreementVersionIdstringrequired

format: uuid

factoringAssignmentVersionIdstringrequired

format: uuid

factoringExpectedAssignmentVersionintegerrequired

max: 9007199254740991

factoringEffectiveDatestringrequired
factoringReferencestringrequired

min length: 1; max length: 200

factoringCurrencyCodestringrequired
factoringAdvanceMinorstringrequired
factoringGrossCollectionMinorstringrequired
factoringReserveHoldMinorstringrequired
factoringReserveReleaseMinorstringrequired
factoringFeeMinorstringrequired
factoringFeeSourcestring | nullrequired
factoringActivityKindstringrequired

one of: funding, customer_collection, reserve_release, fee, mixed

factoringPreparationFingerprintstringrequired
factoringPreviewHashstringrequired
factoringVarianceAcknowledgedboolean

default: false

factoringVarianceNotestring | null
factoringEvidenceDocumentIdstring

format: uuid

factoringEvidenceSourceVersionIdstring

format: uuid

factoringEvidenceSha256string

Example request

Shell
curl -X POST 'https://arktms.com/api/v1/billing/factoring/activities/records' \
  -H "Authorization: Bearer $ARK_API_TOKEN" \
  -H "Idempotency-Key: <unique-key>" \
  -H "Content-Type: application/json" \
  -d '{
  "targets": [
    {
      "obligationId": "<obligationId>",
      "expectedWorkflowVersion": 1,
      "expectedBalanceVersion": 1
    }
  ],
  "factoringAgreementVersionId": "<factoringAgreementVersionId>",
  "factoringAssignmentVersionId": "<factoringAssignmentVersionId>",
  "factoringExpectedAssignmentVersion": 1,
  "factoringEffectiveDate": "<factoringEffectiveDate>",
  "factoringReference": "<factoringReference>",
  "factoringCurrencyCode": "<factoringCurrencyCode>",
  "factoringAdvanceMinor": "<factoringAdvanceMinor>",
  "factoringGrossCollectionMinor": "<factoringGrossCollectionMinor>",
  "factoringReserveHoldMinor": "<factoringReserveHoldMinor>",
  "factoringReserveReleaseMinor": "<factoringReserveReleaseMinor>",
  "factoringFeeMinor": "<factoringFeeMinor>",
  "factoringFeeSource": "reserve",
  "factoringActivityKind": "funding",
  "factoringPreparationFingerprint": "<factoringPreparationFingerprint>",
  "factoringPreviewHash": "<factoringPreviewHash>"
}'

Success response

Operation result.

objectstringrequired
okbooleanrequired
api_versionstringrequired
request_idstringrequired
dataobjectrequired
data.okbooleanrequired
data.actionstringrequired
data.updatedCountintegerrequired

min: 0

data.messagestringrequired

Errors

HTTP 400
Invalid request
HTTP 401
Authentication required
HTTP 403
Permission, scope, team, or entitlement denied
HTTP 404
Resource not found
HTTP 409
Idempotency conflict or in-progress retry