Repository navigation
XLS-85 Token Escrow: let a third-party EscrowFinish create the destination trustline (reserve funded from the escrow) #677
LeDenti
started this conversation in
XLS Ideas (pre standard proposal)
Replies: 1 comment 1 reply
|
This goes against the primary intent of trustlines and of reserves: the user must actively consent to receiving that token (by creating the trustline). Allowing someone else to create trustlines on your behalf, even if they are willing to pay the reserve, can be weaponized in all sorts of ways, such as forcing a regulated entity to hold a noncompliant token. In this case, you can verify that the employee has the right trustlines set up when registering their account, instead of waiting til escrow time to do so. This already has its Web2 analogs: you need to set up your bank account properly and register it with your employer. |
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Context: dareskro pays wages through XRPL escrows. Today the payroll escrow is in XRP, date-only (FinishAfter, no Condition, no CancelAfter —
app/src/xrpl.tsl.10-16), finished by an oracle at the hour. We want the same with a token (RLUSD, EURØP) through XLS-85 (#248).What we measured (September 2026, private study, summarised in README l.112-118): when the destination has no trustline to the issuer,
EscrowFinishsubmitted by a third party fails withtecNO_LINE. Only the destination itself can finish, and then the line is created. The sametecNO_LINEon a plainPaymentis recalled indepot/demo_depot_garantie.mjsl.232.Why it matters for payroll: the employee's receiving account is fresh for each pay period (privacy: the amount is public, the account must not be linkable). A new account has no trustline, so a third-party finish — the oracle, or anyone, which is the whole safety property of a date-only escrow — is refused. The employer would have to make the employee act before payday, which is exactly what the escrow was meant to avoid.
Proposal, for discussion:
EscrowFinishby any account create the destination's trustline when it does not exist, with the owner reserve funded from the escrowed amount or from the finisher's fee (the spec could require the destination to have pre-authorised the issuer, or accept the line implicitly as the escrow'sDestination).EscrowCreatetime (the creator pays the increment), so the destination owns a line before the funds are released.Either keeps the invariant that the destination never has to be online. Happy to provide the transaction set from the testnet study on request.
All reactions