SDF Blog

Removal of Partial Payments

This week, we learned of an issue related to a payment setting feature known as “partial payments” that existed in the legacy code base of the Stellar protocol. As it exists in the Ripple code base, partial payments allow a user to send a small part of a payment rather than the entire payment. For example, the sender could tell the anchor that s/he was sending 10 BTC while actually only sending .0001 BTC. This feature is rarely, if ever, used in practice. Normally, an anchor must check the “Amount” field to determine how much they received as it is the only field returned. However, in the case of a partial payment transaction, the “DeliveredAmount” field appears and the anchor must check the “DeliveredAmount” field instead. If an anchor or other entity is unaware of this setting, it could result in loss of funds.

On Oct 8, we informed all known anchors of this issue then updated the Stellar code base to remove this feature, as it added unnecessary complexity for little value on a protocol level. This particular issue no longer exists on the Stellar network.

We are in the process of preparing integration documents for Stellar. If you have any feedback or suggestions for things we should include, please feel free to send them along to us at hello@stellar.org or via issues on our Github for documentation.

Subscribe to the monthly roundup

Thank you for subscribing! Please check your inbox to confirm your email address.

There was an error. Please try again.

More articles

News and insights from SDF