Charge Adjustment
When to use it
- Mispriced fees: A manual fee was posted with the wrong amount and you need to correct it without issuing a waiver.
- Regulatory corrections: A regulator disallows part of a penalty that has already accrued, but you want the remainder to stay on the schedule.
- Post-settlement clean-up: A charge was paid, but you later learn only a portion was valid. Reduce the charge so the overpayment flows into the borrower’s credit balance, then refund if needed.
Use charge adjustments when you want to keep the charge record but change how much of it is collectible. Do not use this command to send money back (payout reversals / merchant credits / borrower refunds) or to waive future assessments (charge waivers).
Workflow
flowchart TD
A[Identify charge to adjust] --> B[Calculate remaining adjustable amount]
B --> C[Submit charge adjustment command]
C --> D[Adjustment transaction recorded]
D --> E{Did the loan become overpaid?}
E -->|Yes| F[Refund surplus via credit balance refund]
E -->|No| G[Loan continues with reduced charge]
API recap
POST /v1/loans/{loanId}/charges/{loanChargeId}?command=adjustment
{
"amount": 12.50,
"note": "Remove duplicate portion",
"externalId": "CHG-ADJ-2026-02-18-001"
}- Amount must be positive and ≤ the remaining adjustable amount (original charge minus prior adjustments).
- Transaction date = current business date; cannot be overridden.
- Optional payment metadata is stored with the adjustment for audit, but no cash movement happens.
Baseline example (Fixed Loan A)
Loan A carries a USD 40 late fee (charge ID 912). After review, ops determines USD 15 should be forgiven because the delay was caused by the lender. Instead of waiving the charge entirely, they run:
POST /v1/loans/{loanA}/charges/912?command=adjustment
{
"amount": 15.00,
"note": "Ops correction – delayed ACH",
"externalId": "CHG-ADJ-912-2026-02-18"
}Result:
| Item | Before | After |
|---|---|---|
| Charge amount | USD 40.00 | USD 40.00 (history unchanged) |
| Charge outstanding | USD 40.00 | USD 25.00 |
| Charge status | Due | Due |
| Loan transactions | CHARGE_APPLIED | CHARGE_APPLIED, CHARGE_ADJUSTMENT |
If the borrower had already paid the USD 40 charge, the adjustment pushes USD 15 into totalOverpaid, allowing the servicing team to issue a credit-balance refund or apply it to upcoming installments.
Tips for operations
- Check remaining balance: Use
GET /v1/loans/{loanId}/charges/{chargeId}to confirm how much of the charge is still outstanding before deciding on the adjustment amount. - Keep notes/external IDs: Tie adjustments back to case IDs for audit trails; undoing requires a separate refund/waiver, so clarity matters.
- Handle downstream effects: If the adjustment overpays the loan, queue a
creditBalanceRefundor let the surplus roll into future installments. - Use waivers when future charge should not exist: For promotional forgiveness, waiving is simpler and prevents the charge from showing as due.
- Use refunds when cash needs to exit: Adjustments only change receivables. If you need to return money, follow up with an appropriate refund command.
Following this pattern keeps charge corrections consistent, auditable, and isolated from other servicing flows.
Updated about 1 month ago
