# DALP-14100 to DALP-14199

Source: https://docs.settlemint.com/docs/api-reference/errors/platform-api-error-reference/dalp-14100-14199
Cause, fix, HTTP status and retry flag for every Platform API error with a code from DALP-14100 to DALP-14199.

This page lists the 41 errors the Platform API can return with a code from DALP-14100 to DALP-14199. Match the `id` in the error envelope to the DALP Code column, then read Retryable and Suggested Fix. The [Platform API error reference](https://docs.settlemint.com/docs/api-reference/errors/platform-api-error-reference#how-to-use-this-reference) explains each column, including Severity, and the [DALP error index](https://docs.settlemint.com/docs/api-reference/errors) lists the page for every code range.

| DALP Code | Machine name | Category | Message | Why | Suggested Fix | Severity | Retryable | HTTP Status |
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
| DALP-14100 | `REDEMPTION_REQUEST_NO_OPEN_REQUESTS` | domain | No redemption request is open for this dealing day. | No investor has an open redemption request on this token for this dealing day or an earlier one. Requests that are cancelled, settled or rejected do not count. | List the token's redemption requests with the status open and read their dealing days. Settle a dealing day that has open requests. | info | No | 409 |
| DALP-14101 | `REDEMPTION_REQUEST_STABLECOIN_UNSUPPORTED` | domain | The settlement asset is not a supported stablecoin. | Redemptions are paid in an indexed ERC-3643 token of the stablecoin type. The denomination asset in this call is not one, or it is the fund token itself. | Send the address of an indexed stablecoin other than the fund token. Read the asset's type in the token catalog before you send it. | info | No | 409 |
| DALP-14102 | `REDEMPTION_REQUEST_CURRENCY_MISMATCH` | domain | The NAV and the stablecoin are priced in different currencies. | The platform pays cash only in the currency the NAV is quoted in. The stablecoin's price feed names another currency, or the NAV or the stablecoin has no currency on its feed. | Choose a stablecoin that is priced in the NAV's currency. If a feed names no currency, add it to that feed, then settle again. | info | No | 409 |
| DALP-14103 | `REDEMPTION_REQUEST_REQUESTS_CHANGED` | domain | The open requests changed while the settlement was prepared. | An investor created or cancelled a request, or another settlement took one, between the moment the platform read the open requests and the moment it recorded the plan. The platform recorded nothing. | Send the same call again. The platform reads the open requests again and settles the list as it stands. | info | Yes | 409 |
| DALP-14104 | `REDEMPTION_REQUEST_SETTLEMENT_KEY_REUSED` | domain | The idempotency key belongs to a different settlement. | This key already settled another dealing day, or paid in another stablecoin or from another treasury. A key names one settlement. | Send the new settlement with a new idempotency key. To read the earlier result, repeat that call with the same dealing day, stablecoin and treasury. | info | No | 409 |
| DALP-14105 | `REPORTING_ACK_RECEIPT_IN_USE` | domain | This authority receipt reference is already recorded on another submission. | Another submission already carries this authority receipt reference. | Enter the receipt reference the authority issued for this submission. | info | No | 409 |
| DALP-14106 | `compliance.provider.ACCESS_TOKEN_ISSUE_FAILED` | dependency | Compliance provider refused to issue an SDK access token. | The provider refused the SDK access token call for this subject, and asking again unchanged will get the same answer. | Check the provider credentials and its verification level for this subject, then request a new token. | error | No | 502 |
| DALP-14107 | `CORPORATE_ACTION_ACKNOWLEDGEMENT_REQUIRED` | domain | Confirm needs an acknowledgement of each consequence of the stored plan. | The stored plan leaves a class undeclared, money in the waterfall, holders out, or a funding shortfall, and the request's acknowledgements omit at least one. A second person's approval of the plan does not acknowledge them for the operator who confirms. | Review the stored plan, then confirm again with every value from data.missingAcknowledgements in acknowledgements. | info | No | 409 |
| DALP-14108 | `core.network.CHAIN_READ_INVALID` | operational | A chain read returned an unusable answer. | A chain read this request needs returned an answer the platform cannot use, so the request cannot succeed as asked. | Do not retry. Contact support with the X-Request-Id response header so an operator can check the chain node and the contract the request named. | error | No | 500 |
| DALP-14109 | `MATURITY_TOKEN_PAUSED` | domain | The token is paused. | A pause blocks maturing, topping up the treasury and redeeming until it is lifted. | Unpause the token, then repeat the maturity operation. | info | No | 409 |
| DALP-14110 | `CORPORATE_ACTION_DIVIDEND_DECLARED` | domain | Dividend `{dividendId}` that this Corporate Action declared is still live on chain, so the action cannot be discarded. | Recording a cash dividend or cash distribution declares its dividend on chain, and discarding the record does not cancel it. The dividend named in this response has not been cancelled. | Cancel the dividend named in this response, then discard the Corporate Action again. A dividend whose snapshot is already recorded can no longer be cancelled; confirm the Corporate Action to complete it instead. | info | No | 409 |
| DALP-14111 | `platform.network.ADD_REFUSED` | domain | The network cannot be added. | The organization cannot add this network in its current state. Read data.reason for the cause. | Read data.reason: already-added means the network is already part of the organization, deploying means its setup is still running, default-network means it is the organization's default network, and not-enabled means the deployment does not offer it. Wait or pick another network, then retry. | info | No | 409 |
| DALP-14112 | `MARKET_LOG_FENCE_LOST` | domain | Another write to this instrument's order log got there first. | Other requests wrote to this instrument's order log at the same moment, and this request lost its turn on every attempt. The same code answers an order whose signed fee limit no longer covers the venue's on-chain VAT, and a price-band change that a new listing's quote token overtook. | Send the request again. If a retried order placement or replacement is refused, place it as a new order. When the venue collects VAT on chain over the order's signed fee limit, sign a new order with a higher fee limit. | error | Yes | 409 |
| DALP-14113 | `bankRail.access.MANAGER_REQUIRED` | permission | Bank rail manager role required. | Only a bank rail manager of the organisation's system can set up or run its bank rail. The request's executor wallet does not hold that role, the organisation has no system on this network, or the request has no executor wallet to check. | Ask an organisation admin to grant you the bank rail manager role. | info | No | 403 |
| DALP-14114 | `bankRail.connection.UNAVAILABLE` | client | Bank connection not found. | No bank connection with this identifier exists in the active organisation. | List the organisation's bank connections and use one of their identifiers. | info | No | 404 |
| DALP-14115 | `bankRail.connection.STALE` | domain | Bank connection changed since it was read. | Another manager changed the bank connection after you read it, so its rowVersion no longer matches. | Read the connection again and repeat the change with its current rowVersion. | info | No | 409 |
| DALP-14116 | `bankRail.connection.SESSION_TAKEN` | domain | CompID pair already in use. | A bank connection with this senderCompId and targetCompId already exists on this platform. | Agree a different CompID pair with the bank, or use the existing connection. | info | No | 409 |
| DALP-14117 | `bankRail.connection.CREDENTIAL_CONFLICT` | domain | Logon password changed since it was read. | The FIX logon password changed after you read the connection, so its credentialVersion no longer matches. | Read the connection again and repeat the change with its current credentialVersion. | info | No | 409 |
| DALP-14118 | `bankRail.connection.CREDENTIAL_MISSING` | domain | Logon password not set. | The connection has no FIX logon password in the secret store, so it cannot be activated. | Set the logon password on the connection, then activate it. | info | No | 422 |
| DALP-14119 | `bankRail.connection.TRANSITION_REFUSED` | domain | Bank connection state change refused. | The connection's current state does not allow this change. Only an active connection can be suspended, and an activation fails when the connection changed state while it was being activated. | Read the connection's state and choose the change that state allows. | info | No | 409 |
| DALP-14120 | `bankRail.tokenLink.UNAVAILABLE` | client | Token link not found. | No token link with this identifier exists on the bank connection on the request's network, or the link is not one the rail wallet rotation suspended. | List the connection's token links and use one of their identifiers. | info | No | 404 |
| DALP-14121 | `bankRail.tokenLink.REFUSED` | domain | Token link refused. | The token cannot back this connection yet, and `data.reason` names the rule it fails: it has neither Booked movements nor the supply delegate feature (`needs-supply-delegate`), it lacks the Hold feature (`needs-hold`), a holder cannot request a redemption (`redemption-not-requestable`), it is not a catalogued custodian token on this chain (`not-custodian`), another organisation issued it (`not-issued`), its decimals cannot represent every minor unit of the currency (`decimals`), the connection already links a token (`currency-linked`), another connection links this token (`token-linked`), it already has supply (`supply-not-zero`), other accounts hold its supply management role (`supply-role-held`, named in `data.accounts`), your wallet cannot grant that role (`supply-role-missing`), accounts other than the rail wallet are its supply delegates (`supply-delegate-held`, named in `data.accounts`), the rail wallet is not a supply delegate that may mint and burn and your wallet cannot add it (`supply-delegate-missing`), its compliance stops the rail wallet holding it (`rail-wallet-ineligible`, with the failing rules in `data.blockers`), the rail wallet has no gas on a priced chain (`rail-wallet-unfunded`), a bank rail manager contained the rail wallet and its rotation is still open (`rail-wallet-contained`), the rail wallet already controls an escrow (`escrow-exists`) or controls more than one (`escrow-ambiguous`), your wallet does not hold the escrow manager role that creates the escrow (`escrow-manager-missing`), the link already has an open request to raise or clear a mint limit (`mint-limit-pending`), a mint cap was set on a link in booked mode, which mints through register lines and has no supply delegation to cap (`mint-cap-booked`), the link already has an open request to allow other supply managers (`supply-managers-pending`), other supply managers were allowed on a link in delegate mode, which has no supply management role holders to allow (`supply-managers-delegate`), the approval service refused the decision, for example because the manager who asked for the change cannot decide it or the request expired (`approval`), the organisation's rail wallet changed since the link was made, the decision names a request the link no longer has open, or an active link cannot be removed (`state`). | Resolve what `data.reason` names, then link, activate, change or remove again: link a token your organisation issued, revoke the role from, or remove as supply delegates, the accounts in `data.accounts`, ask a token admin to grant the role or a token governor to add the rail wallet as a supply delegate that may mint and burn, register the rail wallet's identity or clear the rules in `data.blockers`, fund the rail wallet, use the escrow the rail wallet already controls, ask a role admin to grant you the escrow manager role, follow the open rail wallet rotation: it moves the links to the new rail wallet when it completes, wait for another bank rail manager to decide the open mint-limit or allow-other-supply-managers request, leave the mint cap out on a booked link, change supply managers only on a booked link, or read the link again for its current request. | info | No | 422 |
| DALP-14122 | `bankRail.clientLink.UNAVAILABLE` | client | Client link not found. | No client link with this identifier exists on the bank connection. | List the connection's clients and use one of their identifiers. | info | No | 404 |
| DALP-14123 | `bankRail.clientLink.REFUSED` | domain | Client link refused. | The client cannot be linked, and `data.reason` names the rule it fails: another client of the connection uses this key (`key-taken`), the participant is not a member of the organisation or the wallet is not one of the participant's own unarchived EVM wallets (`wallet-not-owned`), the connection's token blocks the wallet for a reason the client cannot fix (`wallet-blocked`), the connection has no token link on this chain yet (`token-link-required`), a virtual-IBAN connection needs the client's virtual IBAN (`virtual-iban-required`), or a reference connection takes none (`virtual-iban-not-allowed`); a client that still has a proposed or active bank account cannot be removed (`accounts-live`), nor one with a credit still delivering to its custody gateway (`deliveries-open`); a delivery change names a rowVersion the link no longer has (`row-version`), decides a delivery request the link no longer has open (`state`), is decided by the manager who opened the request (`same-actor`), asks for delivery on a booked-supply token (`booked-mode`), asks while a request is already open (`delivery-request-open`), is approved after a check no longer passes (`delivery-stale`), or asks while a check fails (`preconditions-failed`, the message lists each failed check with its fix). | Link the connection's token first, then pick a wallet a member participant owns that the token does not block, with a key no other client uses, and send a virtual IBAN only on a virtual-IBAN connection. Refuse or revoke a client's bank accounts, and wait for its credits to finish delivering to its custody gateway, before removing it. Read the client again and repeat a delivery change with its current rowVersion, fix the checks a delivery request lists, and ask another bank rail manager to decide a delivery request you opened. | info | No | 422 |
| DALP-14124 | `AUTH_STORE_ROW_INVALID` | operational | Stored authentication data validation failed. | A stored authentication row does not have the shape the platform reads, so the request cannot succeed as sent. | Do not retry. Contact support with the X-Request-Id response header so the stored row can be corrected. | error | No | 500 |
| DALP-14125 | `compliance.store.ROW_INVALID` | operational | Stored KYC data validation failed. | A stored compliance record the KYC or user profile route reads does not match its expected shape, so the route cannot complete as asked. | Do not retry. Contact support with the X-Request-Id response header so the stored record can be repaired. | error | No | 500 |
| DALP-14126 | `bankRail.store.ROW_INVALID` | operational | Stored bank rail data is invalid. | A bank rail row in the store, such as a connection, link, operation or reserve balance, does not have the shape the platform reads, so this request cannot succeed until the row is repaired. | Do not retry. Contact support with the X-Request-Id response header so the stored row can be repaired. | error | No | 500 |
| DALP-14127 | `bankRail.credit.UNAVAILABLE` | client | Bank credit not found. | No credit with this identifier exists on the bank connection. | List the connection's credits and use one of their identifiers. | info | No | 404 |
| DALP-14128 | `bankRail.credit.RETRY_REFUSED` | domain | Bank credit cannot be retried. | The credit cannot be retried, and `data.reason` names the cause: only a credit parked with nothing minted, for supply-authority or mint-failed, a minted credit whose send to its custody gateway failed, or one whose coins the gateway paid back to the rail wallet, can be retried (`state`), the bank reversed the credit and its recall decides the tokens (`recall-open`), the failed send may still land or is still being submitted (`delivery-in-flight`), the credit's delivery is not in a state a retry can change (`delivery-not-retryable`), or the gateway paid the coins back to an address other than the current rail wallet (`returned-elsewhere`). | Resolve what `data.reason` names: wait for an in-flight send or the recall to settle, then read the credit and retry it if its delivery still shows send-failed. | info | No | 409 |
| DALP-14129 | `bankRail.clientAccount.UNAVAILABLE` | client | Bank account not found. | No bank account with this identifier exists on the bank connection. | List the connection's bank accounts and use one of their identifiers. | info | No | 404 |
| DALP-14130 | `bankRail.clientAccount.DUPLICATE` | domain | Bank account already registered. | The client already has this bank account, proposed or active. | Use the client's existing account, or refuse or revoke it before registering it again. | info | No | 409 |
| DALP-14131 | `bankRail.clientAccount.REVIEW_REFUSED` | domain | Bank account review refused. | The review does not fit the account, and `data.reason` says why: the account's state does not allow it (`state`), because only a proposed account can be approved or refused and only an active one revoked, or the reviewer proposed the account and cannot approve it (`proposer-cannot-approve`). | Read the account's state; ask another bank rail manager to approve an account you proposed. | info | No | 409 |
| DALP-14132 | `bankRail.reserveAdjustment.UNAVAILABLE` | client | Reserve adjustment not found. | No reserve adjustment with this identifier exists on the bank connection. | List the connection's reserve adjustments and use one of their identifiers. | info | No | 404 |
| DALP-14133 | `bankRail.reserveAdjustment.REFUSED` | domain | Reserve adjustment refused. | The adjustment cannot be recorded or decided, and `data.reason` names the cause: the connection has no active or suspended link to a token (`no-token-link`), the amount has more fraction digits than the token (`amount-precision`), is zero (`amount-zero`) or is larger than the reserve can record (`amount-too-large`), the posting is in the future (`future-posting`), a live adjustment already uses the bank reference (`bank-reference-used`), the deciding manager proposed the adjustment (`proposer-cannot-approve`), an impersonated session tried to decide it (`impersonated-session`), its approval request closed before a decision (`approval-closed`), it changed after it was proposed (`changed-since-request`), it is no longer open for this decision (`state`), or the approval rules refused the decision (`approval`). | Resolve what `data.reason` names, then record or decide the adjustment again. | info | No | 409 |
| DALP-14134 | `bankRail.railWalletRotation.UNAVAILABLE` | client | Rail wallet rotation not found. | No rail wallet rotation with this identifier exists for the organisation on this chain. | Read the rail wallet on the chain and use the rotation it names. | info | No | 404 |
| DALP-14135 | `bankRail.railWalletRotation.REFUSED` | domain | Rail wallet rotation step refused. | The rail wallet rotation cannot take this step, and `data.reason` says why: the organisation has no rail wallet on the chain to contain (`no-rail-wallet`), the rotation's state does not allow the step (`state`), a rotation for a compromised key cannot be abandoned (`compromised`), the manager who made a request cannot also decide it (`requester-cannot-decide`), the request's approval no longer stands (`approval`), a lost key's supply authority already left the contained wallet so the rotation can only complete (`authority-moved`), a compromised key's rotation grants the staged wallet nothing while another account still holds supply authority (`revoke-pending`) or while the contained wallet's escrow still holds tokens (`old-escrow-funded`), or the rotation cannot complete yet (`completion-blocked`). | Read the rotation and its links, then take the step they allow: revoke the contained wallet's authority first, have a custodian evacuate its escrow or the contained wallet, wait for its queued writes, complete instead of abandoning, or ask another bank rail manager to decide a request you made. | info | No | 409 |
| DALP-14136 | `bankRail.creditRecall.UNAVAILABLE` | client | Credit recall not found. | No credit recall with this identifier exists on the bank connection. | List the connection's recalls and use one of their identifiers. | info | No | 404 |
| DALP-14137 | `bankRail.creditRecall.REFUSED` | domain | Credit recall refused. | The recall cannot take this step, and `data.reason` names why: its state does not allow it (`state`), the bank's amount has no token amount (`recall-amount-unknown`), the credit was returned to the payer or is already recalled (`credit-not-recallable`), an allocation or return of the credit is open (`resolution-open`), the credit's mint is being submitted (`mint-in-flight`), the credit's send to the client's custody gateway is being submitted (`delivery-in-flight`), a live cash-out of the client holds the tokens (`cash-out-live`), the rail wallet is contained with no staged wallet (`rail-wallet-contained`), the credit settled into gateway receipts but the rail wallet has no custody gateway of its own, is not its client or is not on its approved payout list (`recall-gateway-missing`), no register line of the credit's mint is indexed (`line-unknown`), what the request bound changed before the decision (`recall-stale`), the transfer is not a forced transfer of the recall's tokens, or the gateway's return of a refused delivery, into the rail wallet after the approval (`claw-mismatch`), the transfer is already recorded (`claw-duplicate`), the transfer's block is not final yet (`claw-unfinalized`), the requester cannot decide it (`requester-cannot-decide`), or its approval no longer stands (`approval`). | Read the recall and its credit, then take the step they allow: wait for the mint, delivery, resolution or cash-out to finish, have a token custodian force-transfer the tokens into the wallet the recall names, record a transfer again once its block is final, request the recall again after a stale decision, or ask another bank rail manager to decide a request you made. For a credit held as gateway receipts, have a custody gateway manager create a gateway for the rail wallet's identity and add the rail wallet to its approved payouts, then request the recall again. | info | No | 409 |
| DALP-14138 | `bankRail.connection.CALENDAR_UNAVAILABLE` | client | Holiday calendar not available. | The holiday calendar is not a base calendar or one of the active organisation's own calendars. | List the holiday calendars the organisation can use and name one of them, or send null for none. | info | No | 422 |
| DALP-14139 | `bankRail.dailyReconciliation.UNAVAILABLE` | client | Daily reconciliation not found. | No daily reconciliation version exists for this connection and date. | List the connection's daily reconciliations, or run the closed date first. | info | No | 404 |
| DALP-14140 | `bankRail.dailyReconciliation.REFUSED` | domain | Daily reconciliation refused. | The date has not closed, its cutoff has no unique instant in its time zone, or the balance report or indexed block is older than the latest version. | Wait until the date closes, use a cutoff that exists once on that date, or restore evidence at least as new as the latest version's pins. | info | No | 409 |

The previous page is [DALP-14050 to DALP-14099](https://docs.settlemint.com/docs/api-reference/errors/platform-api-error-reference/dalp-14050-14099). The next page is [DALP-14200 to DALP-14299](https://docs.settlemint.com/docs/api-reference/errors/platform-api-error-reference/dalp-14200-14299).
