Overview
The old API used a singlePOST /v1/rent-reporting/report with all data in one flat request. The new API separates concerns:
Field mapping
Key behavioral differences
- Consumer PII submitted once — not with every payment report.
- Payment type is explicit — use
child_supportinstead of cramming intorent_amount. - Amounts are in cents — $4,500.00 =
450000. Multiply existing dollar values by 100. - Status is auto-computed — don’t set
account_statusorpayment_history_profilemanually. They’re derived from payment records. - GET endpoints exist — check submission status anytime via
GET /submissions. - Webhooks provide push notifications for bureau responses.
- Tradeline represents the obligation — created once, not re-sent with every payment.
Step-by-step migration
1
Create consumers
For each unique person in your system, call
POST /consumers once. Save the returned id.2
Create tradelines
For each ongoing payment obligation, call
POST /tradelines with the consumer’s id and the correct payment_type. Save the returned tradeline id.3
Report payments monthly
Each month, call
POST /payments with the tradeline id, amount due, amount paid, and payment status.4
Set up webhooks
Configure your
webhook_url to receive bureau submission status updates.5
Monitor submissions
Use
GET /submissions to track bureau processing status.6
Switch to production
Once integration testing is complete with
sk_test_* keys, switch to sk_live_* for production.