Skip to main content
A book is all the open Receivables in your source system. This guide loads a small book with one batch. It uses the sandbox and synthetic data. Finish the quickstart first so you have a key and a clientCode. Terms are in the glossary.

Before you load

  • Choose a stable, opaque external ID for every Customer and Receivable. Do not use member numbers or loan numbers.
  • Plan the order. A Receivable can reference only Customers that already exist, so list Customers first.
  • Decide your retry rule. A batch is safe to resend with the same ID and body. See Safe retries.

Step 1: Queue a batch

A batch holds up to 100 records. Each record is { recordId, kind, externalId, body }. The body is exactly the body of the matching single-record PUT. Use dependsOn so a Receivable runs only if its Customer succeeded.
Expect 202 Accepted. That means the batch is durably queued. It does not mean any record was accepted. The batch needs the write scope for every kind of record in it, here customers:write and receivables:write. A connection can have at most 2 queued or running batches at once.

Step 2: Check progress

Send a GET to the same URL until the batch status is no longer queued or running.
The final status is succeeded, partially_succeeded or failed. Each record reports succeeded, failed (with the httpStatus and problem.type a single request would return), dependency_failed or pending.

Step 3: Fix failures

Fix the data for any failed record. Send it again in a new batch, or through its single-record PUT. A record marked dependency_failed was not attempted, because the record it depends on did not succeed.

Step 4: Declare the book complete (optional)

Leaving a Receivable out of a batch changes nothing. If you want PayPathIQ to flag open Receivables that are missing from your book, declare it complete after every batch has succeeded. See Complete books and missing records. A declaration needs the batch IDs and the exact Receivable count, and a failed or partial load is refused with 409 book_completion_unverified.

Next steps