Skip to main content
GET
/
v1
/
platform
/
businesses
/
{business_id}
/
invoices
/
payments
/
{payment_id}
Get invoice payment
curl --request GET \
  --url https://sandbox.thredfi.com/v1/platform/businesses/{business_id}/invoices/payments/{payment_id}/ \
  --header 'Authorization: Bearer <token>'
{
  "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "customer": {
    "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "name": "<string>",
    "email": "[email protected]",
    "company_name": "<string>"
  },
  "customer_name": "<string>",
  "customer_email": "<string>",
  "payment_method": "bank_transfer",
  "total_amount": 123,
  "allocated_amount": 123,
  "unallocated_amount": 123,
  "net_amount": 123,
  "processing_fee": 123,
  "processing_fee_cents": 123,
  "display_amount": "<string>",
  "is_fully_allocated": true,
  "is_completed": true,
  "processed_at": "2023-11-07T05:31:56Z",
  "failed_at": "2023-11-07T05:31:56Z",
  "created_at": "2023-11-07T05:31:56Z",
  "updated_at": "2023-11-07T05:31:56Z",
  "allocations": [
    {
      "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "invoice_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "invoice_number": "<string>",
      "invoice_status": "<string>",
      "amount": 123,
      "allocated_at": "2023-11-07T05:31:56Z",
      "transaction_tags": "<unknown>",
      "notes": "<string>"
    }
  ],
  "refund_allocations": [
    {
      "refund_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "amount_cents": 123,
      "allocated_at": "2023-11-07T05:31:56Z",
      "reference_number": "<string>"
    }
  ],
  "reconciled_bank_transactions": [
    {
      "bank_transaction_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "bank_transaction_date": "2023-11-07T05:31:56Z",
      "bank_transaction_amount_cents": 123,
      "bank_transaction_direction": "<string>",
      "reconciled_amount_cents": 123,
      "reconciliation_link_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "reconciled_at": "2023-11-07T05:31:56Z",
      "currency": "<string>",
      "payment_type": "<string>",
      "bank_account_name": "<string>",
      "notes": "<string>"
    }
  ],
  "external_id": "<string>",
  "payment_reference": "<string>",
  "processor_reference": "<string>",
  "payment_date": "2023-11-07T05:31:56Z",
  "payment_processor": "<string>",
  "currency": "EUR",
  "status": "pending",
  "failure_reason": "<string>",
  "transaction_tags": "<unknown>",
  "metadata": "<unknown>",
  "notes": "<string>",
  "bank_reference": "<string>"
}

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.

Response

Comprehensive serializer for invoice payments list endpoint. Extends PaymentSerializer with allocation details.

Inspired by external payment APIs but adapted for Friday's architecture.

id
string<uuid>
required
customer
object
required

Customer details embedded in payment and other response objects.

customer_name
string
required

Customer display name

customer_email
string
required

Customer email address

payment_method
enum<string>
required
  • bank_transfer - Bank Transfer
  • credit_card - Credit Card
  • debit_card - Debit Card
  • ach - ACH/Direct Debit
  • check - Check/Cheque
  • cash - Cash
  • paypal - PayPal
  • stripe - Stripe
  • other - Other
Available options:
bank_transfer,
credit_card,
debit_card,
ach,
check,
cash,
paypal,
stripe,
other
total_amount
integer
required

Total payment amount in cents

allocated_amount
integer
required

Amount allocated to invoices in cents

unallocated_amount
integer
required

Unallocated amount remaining in cents (customer credit if positive)

net_amount
integer
required

Net amount after deducting all fees in cents

processing_fee
integer
required

Platform processing fee charged in cents

processing_fee_cents
integer
required

Platform processing fee charged in cents (raw database field)

display_amount
string
required

Human-readable payment amount with currency symbol

is_fully_allocated
boolean
required

Whether payment is fully allocated to invoices (true if allocated_amount >= total_amount)

is_completed
boolean
required

Whether payment processing is completed (status='completed')

processed_at
string<date-time> | null
required
failed_at
string<date-time> | null
required
created_at
string<date-time>
required
updated_at
string<date-time>
required
allocations
object[]
required
refund_allocations
object[]
required

Refund allocations linked to this payment

reconciled_bank_transactions
object[]
required

Bank transactions this payment is reconciled to

external_id
string
Maximum string length: 255
payment_reference
string
Maximum string length: 100
processor_reference
string
Maximum string length: 255
payment_date
string<date-time>
payment_processor
string
Maximum string length: 100
currency
enum<string>
  • EUR - Euro
  • GBP - British Pound
  • USD - US Dollar
  • SEK - Swedish Krona
  • NOK - Norwegian Krone
  • DKK - Danish Krone
  • ISK - Icelandic Króna
  • MYR - Malaysian Ringgit
  • SGD - Singapore Dollar
Available options:
EUR,
GBP,
USD,
SEK,
NOK,
DKK,
ISK,
MYR,
SGD
status
enum<string>
  • pending - Pending
  • processing - Processing
  • completed - Completed
  • failed - Failed
  • cancelled - Cancelled
  • refunded - Refunded
Available options:
pending,
processing,
completed,
failed,
cancelled,
refunded
failure_reason
string
transaction_tags
any
metadata
any
notes
string
bank_reference
string
Maximum string length: 100