---
title: "Retry book transfer"
method: POST
path: "/v1/book_transfers/{book_transfer_token}/retry"
tags: ["Book Transfer"]
---

# Retry book transfer

`POST /v1/book_transfers/{book_transfer_token}/retry`

Retry a book transfer that has been declined

## Path parameters

- `book_transfer_token` string, uuid, required

## Request body

- RetryBookTransferRequest
  - `retry_token` string, uuid, required — Customer-provided token that will serve as an idempotency token. This token will become the transaction token.

## Response `200`

OK

- BookTransferTransaction — Base class for all transaction types in the ledger service
  - `status` 'PENDING' | 'SETTLED' | 'DECLINED' | 'REVERSED' | 'CANCELED' | 'RETURNED', required
  - `token` string, uuid, required — Unique identifier for the transaction
  - `created` string, date-time, required — ISO 8601 timestamp of when the transaction was created
  - `updated` string, date-time, required — ISO 8601 timestamp of when the transaction was last updated
  - `family` 'TRANSFER', required — TRANSFER - Book Transfer Transaction
  - `result` 'APPROVED' | 'DECLINED', required
  - `category` 'ADJUSTMENT' | 'BALANCE_OR_FUNDING' | 'DERECOGNITION' | 'DISPUTE' | 'FEE' | 'INTERNAL' | 'REWARD' | 'PROGRAM_FUNDING' | 'PROGRAM_TRANSFER' | 'TRANSFER', required
  - `currency` string, required — 3-character alphabetic ISO 4217 code for the settling currency of the transaction
  - `settled_amount` integer, required — Amount of the transaction that has been settled in the currency's smallest unit (e.g., cents)
  - `pending_amount` integer, required — Pending amount of the transaction in the currency's smallest unit (e.g., cents), including any acquirer fees. The value of this field will go to zero over time once the financial transaction is settled.
  - `events` BookTransferEvent[], required — A list of all financial events that have modified this transfer
    - `amount` integer, required — Amount of the financial event that has been settled in the currency's smallest unit (e.g., cents).
    - `type` 'ATM_BALANCE_INQUIRY' | 'ATM_WITHDRAWAL' | 'ATM_DECLINE' | 'INTERNATIONAL_ATM_WITHDRAWAL' | 'INACTIVITY' | 'STATEMENT' | 'MONTHLY' | 'QUARTERLY' | 'ANNUAL' | 'CUSTOMER_SERVICE' | 'ACCOUNT_MAINTENANCE' | 'ACCOUNT_ACTIVATION' | 'ACCOUNT_CLOSURE' | 'CARD_REPLACEMENT' | 'CARD_DELIVERY' | 'CARD_CREATE' | 'CURRENCY_CONVERSION' | 'INTEREST' | 'LATE_PAYMENT' | 'BILL_PAYMENT' | 'PAYMENT_FEE' | 'CASH_BACK' | 'ACCOUNT_TO_ACCOUNT' | 'CARD_TO_CARD' | 'DISBURSE' | 'BILLING_ERROR' | 'LOSS_WRITE_OFF' | 'EXPIRED_CARD' | 'EARLY_DERECOGNITION' | 'ESCHEATMENT' | 'INACTIVITY_FEE_DOWN' | 'PROVISIONAL_CREDIT' | 'DISPUTE_WON' | 'SERVICE' | 'TRANSFER' | 'COLLECTION' | 'LITHIC_PROGRAM_TRANSFER' | 'BANK_PROGRAM_TRANSFER', required — Type of the book transfer
    - `result` 'APPROVED' | 'DECLINED', required — APPROVED financial events were successful while DECLINED financial events were declined by user, Lithic, or the network.
    - `created` string, date-time, required — Date and time when the financial event occurred. UTC time zone.
    - `token` string, uuid, required — Globally unique identifier.
    - `subtype` string, required — The program specific subtype code for the specified category/type.
    - `memo` string, required — Memo for the transfer.
    - `detailed_results` BookTransferDetailedResults[], required
  - `from_financial_account_token` string, uuid, required — Globally unique identifier for the financial account or card that will send the funds. Accepted type dependent on the program's use case
  - `to_financial_account_token` string, uuid, required — Globally unique identifier for the financial account or card that will receive the funds. Accepted type dependent on the program's use case
  - `external_id` string, nullable — External ID defined by the customer
  - `transaction_series` TransactionSeries
    - `type` string, required
    - `related_transaction_token` string, uuid, nullable, required
    - `related_transaction_event_token` string, uuid, nullable, required
  - `external_resource` ExternalResource — External resource associated with the management operation
    - `external_resource_type` 'STATEMENT' | 'COLLECTION' | 'DISPUTE' | 'UNKNOWN', required — Type of external resource associated with the management operation
    - `external_resource_token` string, required — Token identifying the external resource
    - `external_resource_sub_token` string — Token identifying the external resource sub-resource

## Other responses

- `400` — A parameter in the query given in the request does not match the valid queries for the endpoint.
- `401` — | | | |---|---| | User has not been authenticated | Invalid or missing API key | | API key is not active | The API key used is no longer active | | Could not find API key | The API key provided is not associated with any user | | Please provide API key in Authorization header | The Authorization header is not in the request | | Please provide API key in the form Authorization: [api-key] | The Authorization header is not formatted properly | | Insufficient privileges. Issuing API key required | Write access requires an Issuing API key. Reach out at [lithic.com/contact](https://lithic.com/contact) | | Insufficient privileges to create virtual cards. | Creating virtual cards requires an additional privilege | Reach out at [lithic.com/contact](https://lithic.com/contact) |
- `404` — The specified resource was not found.
- `429` — Client has exceeded the number of allowed requests in a given time period. | | | |---|---| | Rate limited, too many requests per second | User has exceeded their per second rate limit | | Rate limited, reached daily limit | User has exceeded their daily rate limit | | Rate limited, too many keys tried | One IP has queried too many different API keys |

---

[API](https://skmtc.net/lithic-com/apis/lithic-developer-api.md) · [All operations](https://skmtc.net/lithic-com/apis/lithic-developer-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/lithic-com/lithic-developer-api/revisions/53ab5d4e2adb/schema)
