Skip to main content
PATCH
Partially update invoice payment

Authorizations

Authorization
string
header
required

Partner-level JWT token (unscoped). Token payload includes partner_id. Business access is validated via partner ownership. Format: Bearer <your-jwt-token>

Use this for: Multi-business operations where the business_id is specified in the URL and partner has access to multiple businesses.

Path Parameters

business_id
string<uuid>
required

Business UUID provided by Thred (unique identifier for the business)

payment_id
string<uuid>
required

A UUID string identifying this payment.

Body

Serializer for updating existing payments. Matches the create endpoint structure (InvoiceRecordPaymentRequestSerializer) to provide consistency between create and update APIs.

customer_id
string<uuid>

Customer UUID (cannot be changed after creation)

total_amount_cents
integer

Updated total payment amount in cents (must not be less than allocated amount)

Required range: x >= 1
allocations
object[]

Updated list of invoice allocations (replaces existing allocations)

payment_date
string<date>

Updated payment date (ISO date format: YYYY-MM-DD)

currency
string

Payment currency (cannot be changed after creation)

Required string length: 1 - 3
payment_method
enum<string>

Updated payment method (bank_transfer, card, cash, cheque, direct_debit)

  • bank_transfer - bank_transfer
  • credit_card - credit_card
  • debit_card - debit_card
  • ach - ach
  • check - check
  • cash - cash
  • paypal - paypal
  • stripe - stripe
  • other - other
Available options:
bank_transfer,
credit_card,
debit_card,
ach,
check,
cash,
paypal,
stripe,
other
payment_reference
string

Updated internal payment reference

external_id
string

Updated external identifier (must remain unique)

note
string

Updated internal notes or description

notes
string

Legacy field for notes (use 'note' instead)

metadata
object

Updated custom key-value pairs

references
object

Updated payment references (bank_reference, end_to_end_id, payment_reference)

processor_reference
string

Updated payment processor reference

Maximum string length: 255
bank_reference
string

Updated bank transaction reference

Maximum string length: 100
status
enum<string>

Updated payment status (pending, processing, completed, failed, cancelled, refunded)

  • pending - Pending
  • processing - Processing
  • completed - Completed
  • failed - Failed
  • cancelled - Cancelled
  • refunded - Refunded
Available options:
pending,
processing,
completed,
failed,
cancelled,
refunded
transaction_tags
string[]

Updated tags for categorization

Minimum string length: 1
payment_processor
string

Updated payment processor name

Maximum string length: 100
processing_fee_cents
integer

Updated processing fee in cents

Required range: x >= 0

Response

Response serializer for create invoice payment endpoint

payment
object
required

Detailed payment information in response - all amounts in cents