{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"Past-dated transaction errors reference","siteUrl":"https://docs.peachfinance.com","description":"API and product documentation for Peach Finance, a lending-as-a-service platform."},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"past-dated-transaction-errors-reference","__idx":0},"children":["Past-dated transaction errors reference"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This page lists the responses specific to creating a past-dated transaction on a loan that isn't being migrated onto Peach, with the cause of each and what to do next. For how these creates work, see ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/loan-lifecycle/past-dated-transactions"},"children":["How past-dated transactions work"]},"; errors that any create can return are in the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"#"},"children":["create transaction API reference"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"request-fields","__idx":1},"children":["Request fields"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Status"},"children":["Status"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Message"},"children":["Message"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Cause"},"children":["Cause"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"What to do"},"children":["What to do"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["400"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["effectiveTimeOfDay is required when creating and backdating a transaction in one call (i.e. when effectiveDate is provided). To create a transaction effective today, leave effectiveDate blank."]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["You sent ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["effectiveDate"]}," without ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["effectiveTimeOfDay"]}," on a one-time payment, down payment, or service credit, with no ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["scheduledDate"]},"."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Add ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["effectiveTimeOfDay"]}," to backdate the transaction, or remove ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["effectiveDate"]}," to create it effective today."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["400"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["effectiveDate is required when effectiveTimeOfDay is provided."]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["You sent ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["effectiveTimeOfDay"]}," without ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["effectiveDate"]},", with no ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["scheduledDate"]},"."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Add ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["effectiveDate"]},", or remove ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["effectiveTimeOfDay"]},"."]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"transaction-type-and-status","__idx":2},"children":["Transaction type and status"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Status"},"children":["Status"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Message"},"children":["Message"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Cause"},"children":["Cause"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"What to do"},"children":["What to do"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["400"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["effectiveDate can only be used for external transactions (isExternal=true or external payment instrument)."]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["A one-time payment or down payment with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["effectiveDate"]}," is not external. Service credits are exempt."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Set ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["isExternal"]}," to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["true"]}," or use an external payment instrument, or remove ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["effectiveDate"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["400"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Backdated payment create requires status 'succeeded' or 'pending'."]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["A one-time payment or down payment with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["effectiveDate"]}," has a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["status"]}," other than ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["succeeded"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["pending"]},". An omitted ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["status"]}," also triggers this, because it resolves to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["scheduled"]},"."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Send ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["status"]}," as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["succeeded"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["pending"]},"."]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"dates-and-loan-state","__idx":3},"children":["Dates and loan state"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Status"},"children":["Status"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Message"},"children":["Message"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Cause"},"children":["Cause"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"What to do"},"children":["What to do"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["400"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["effectiveDate must be in the past or today."]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The requested instant, ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["effectiveDate"]}," plus ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["effectiveTimeOfDay"]}," in the product timezone, is later than the time of the call. This includes a later time today."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Send a date and time no later than the time of the call."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["400"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Cannot backdate transaction to before loan started_at."]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The requested instant is at or before the loan's start: its ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["startedAt"]}," timestamp, when the loan was activated."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Send an instant after the loan's ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["startedAt"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["400"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Cannot backdate transaction with drawId to before draw started_at."]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["You sent ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["drawId"]},", and the requested instant is at or before the draw's ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["startedAt"]},", when the draw was activated."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Send an instant after the draw's ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["startedAt"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["400"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Cannot backdate transaction to before migration cutoff date."]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The loan is a line of credit migrated onto Peach with a migration period, and the requested date is before its migration cutoff date."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Send a date on or after the migration cutoff date."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["400"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Loan status cannot be 'originated' or 'pending'."]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["A one-time payment or service credit targets a loan with status ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["originated"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["pending"]},"."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Wait until the loan's status is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["active"]},", then create the transaction."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["400"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Loan status must be 'active' or 'accelerated', not '<loan status>'."]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["A one-time payment or service credit targets a loan whose status is not ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["active"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["accelerated"]},", or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["chargedOff"]},", such as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["paidOff"]},"."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["To move an existing transaction on a paid-off loan, use the two-step backdate operation."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["400"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Loan configuration does not allow payments on charged off loans."]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["A one-time payment or service credit targets a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["chargedOff"]}," loan whose loan type does not allow payments when charged off."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Create the transaction only on loans whose loan type allows payments when charged off."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["400"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Down payments presently can only be made on loans with status 'active'."]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["A down payment targets a loan whose status is not ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["active"]},"."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Create down payments only on ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["active"]}," loans."]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"processing-and-concurrency","__idx":4},"children":["Processing and concurrency"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["After a past-dated create, Peach recalculates the loan with a ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/loan-lifecycle/loan-replay"},"children":["Loan Replay™"]},". The responses below concern that replay."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Status"},"children":["Status"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Message"},"children":["Message"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Cause"},"children":["Cause"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"What to do"},"children":["What to do"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["408"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Gave up waiting for transaction backdate replay to finish: <transaction ID>."]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["You sent ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["sync=true"]},", and the replay did not finish within the wait. The transaction is already saved."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Poll the operation ID returned with the response until the replay finishes."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["400"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Some operations failed for this request."]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["You sent ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["sync=true"]},", and Peach hit an error outside the replay itself, for example before the replay started. The transaction is already saved."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Do not retry the create, because the transaction already exists."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["423"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Loan is locked for updates. Please try again."]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The loan is locked by a replay or another update in progress."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Retry the request after the lock clears."]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"duplicates","__idx":5},"children":["Duplicates"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Status"},"children":["Status"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Message"},"children":["Message"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Cause"},"children":["Cause"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"What to do"},"children":["What to do"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["409"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Duplicate external ID '<externalId>'."]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Another transaction in your company already uses this ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["externalId"]},"."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Do not resend; a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["409"]}," on a retry means the earlier request was saved."]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"see-also","__idx":6},"children":["See also"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/loan-lifecycle/past-dated-transactions"},"children":["How past-dated transactions work"]}," — How a past-dated create is validated, recorded, and replayed, and how to retry safely."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"#"},"children":["Create transaction API reference"]}," — The full request and response contract for creating a transaction."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/loan-lifecycle/loan-replay"},"children":["Loan Replay™"]}," — How a replay recalculates a loan after a retroactive change."]}]}]},"headings":[{"value":"Past-dated transaction errors reference","id":"past-dated-transaction-errors-reference","depth":1},{"value":"Request fields","id":"request-fields","depth":2},{"value":"Transaction type and status","id":"transaction-type-and-status","depth":2},{"value":"Dates and loan state","id":"dates-and-loan-state","depth":2},{"value":"Processing and concurrency","id":"processing-and-concurrency","depth":2},{"value":"Duplicates","id":"duplicates","depth":2},{"value":"See also","id":"see-also","depth":2}],"frontmatter":{"title":"Past-dated transaction errors reference","description":"Every response specific to creating a past-dated transaction on a loan that isn't being migrated: the message, what triggered it, and what to do next.","verifiedDate":"2026-10-29T00:00:00.000Z","verifiedSpec":"openapi/transactions-public.yml","verifiedRef":"peach@c61d1b5f138bb934f16bc9d80adcdd49b71cd6c2","verifiedBranch":"main","seo":{"title":"Past-dated transaction errors reference"}},"lastModified":"2026-11-03T23:31:11.225Z","pagePropGetterError":{"message":"","name":""}},"slug":"/loan-lifecycle/past-dated-transaction-errors","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}