The withdrawal link object

Withdrawal links provide the most user-friendly method for delivering lightning withdrawals to your customers. To initiate a fund transfer, you'll first need to generate a withdrawal link, specifying details like the amount and currency. You can protect it by adding a password to it.

Upon creation, the withdrawal link is initially marked as unpaid. You can distribute this link to your customers via email through Speed or share it on other social platforms by copying the link from Speed.

How to disseminate the withdrawal links created will be your decision. You have two options here, either you can create and send it on your own, or while creating it, you can provide a user name and email (each time different or the same) and the Speed platform will automatically send an email containing a link to this withdraw link automatically.

When your customer clicks on the link, if it is password protected, they must enter the password to receive a one-time payment of a fixed amount by scanning the QR code shown on the withdrawal page. The QR code contains an LNURL-withdraw, enabling your customer to access the funds using their supported wallet.

Upon claiming, the corresponding Speed account balance is verified.

  • If the balance is insufficient, an error message will be displayed to your customer.
  • Otherwise, the withdrawal link will be processed, transitioning its status from unpaid to paid.

After being paid, the withdrawal link becomes invalid for any subsequent transactions.


    "id": "wlink_live_xxxxxxxxxxxxxxxxx",
    "withdraw_id": [],
    "object": "",
    "livemode": true,
    "status": "active",
    "url": "",
    "currency": "USD",
    "amount": 2,
    "target_currency": "SATS",
    "is_secured": false,
    "email": "[email protected]",
    "name": "ABC",
    "statement_descriptor": "null",
    "success_url": "null",
    "success_message": "null",
    "metadata": {},
    "created": 1701759444104,
    "modified": 1701759444104


id string
Unique identifier for the object.

withdraw_id string
It remains empty when the withdrawal link is unpaid and holds a value once the withdrawal link has a "paid" status.

object string
The type of the object indicates to which entity this response belongs.

livemode string
If the object is in live mode, it has the value true; otherwise, it has the value false.

status string
Upon the creation of the withdrawal link, it will be in "active" status. Subsequently, it can transition into the "paid" status upon a successful withdrawal by your customer or into the "deactivate" status if you don’t want to pay your customer or when you intentionally deactivate it.

url string
The public URL that can be shared with customers for withdrawal.

currency string
The base currency in which you prefer to work.

amount string
The amount for which the withdrawal has been created.

target_currency string
The cryptocurrency in which you want to receive payment from your customer. As of now, Speed only supports SATS.

is_secured string
If the link is password protected, it has the value true; otherwise, it has the value false.

email string
The email address of the customer to which the withdrawal link will be sent.

name string
The name of the customer to whom the withdrawal link will be sent. The name can only be included if an email is provided; without an email, the name will not be accepted.

statement_descriptor string
Additional information about a withdrawal link.

success_message string
Message your customers will see once they successfully receive the defined amount.

success_url string
Customers will be redirected to this link if the transaction goes through successfully.

metadata string
You can use this to store additional information about the object in a structured format.

created timestamp
The time at which the object was created

modified timestamp
Time at which the last modification was made.