The Checks feature enables users to create deferred payments similar to personal paper checks. Unlike an escrow or payment channel, funds aren't set aside when a check is created, so money only moves when the check is cashed. If the sender doesn't have the funds at the time a check is cashed, the transaction fails; recipients can retry failed transactions until the check expires.
XRP Ledger Checks can have expiration times after which they may no longer be cashed. If the recipient doesn't successfully cash the Check before it expires, the Check can no longer be cashed, but the object remains in the XRP Ledger until someone cancels it. Anyone may cancel the Check after it expires. Only the sender and recipient can cancel the Check before it expires. The Check object is removed from the Ledger when the sender successfully cashes the check or someone cancels it.
Checks allow people to exchange funds using a process that is familiar to and accepted by the banking industry.
If your intended recipient uses Deposit Authorization to block direct payments from strangers, a check is a good alternative.
Flexible check cashes. The recipient can redeem the Check for between a minimum and maximum amount.
The sender sends a CheckCreate transaction, which defines:
- The recipient.
- An expiration date.
- The maximum amount that can be debited from their account.
When the transaction is processed, the XRP Ledger creates a
Checkobject. The check can be canceled by the sender or receiver with a CheckCancel transaction.
The recipient submits a CheckCash transaction that transfers the funds and destroys the
Checkobject. Recipients have two options for cashing checks:
- Exact Amount: They specify an exact amount to cash that doesn't exceed the check maximum.
- Flexible Amount: They specify a minimum amount to cash and the XRP Ledger delivers as much as possible up to the check maximum. If the sender doesn't have the funds to at least meet the specified minimum, the transaction fails.
If the check expires before the receiver cashes the check, the
Checkobject remains until anyone cancels it.
For more information about Checks in the XRP Ledger, see:
- Transaction Reference
- Checks Tutorials
- Checks amendment
For more information about related features, see: