Send a lightning payment

post/api/v2/wallet/{walletId}/lightning/payment

Send a lightning payment that pays a provided payment request using the wallet's custodial lightning balance.

Path Parameters

  • walletIdstringRequired
    Example: "59cd72485007a239fb00282ed480da1f"
    Pattern: ^[0-9a-f]{32}$

Request Body

One of
comment string
An optional memo for the transaction.
Max length: <= 256 characters
sequenceId string
Your own unique ID
feeLimitRatio number
The maximum fee in proportion to the payment amount that may be paid as a fee for the payment. This number is multiplied by the value of the invoice to determine the fee limit. Only one of feeLimit or feeLimitRatio should be specified, if neither is specified then the greater of 25 satoshis or 5% of the invoice amount is used for the fee limit.
Example: 0.03
feeLimit number
The maximum number of satoshis that may be paid as a fee for the payment. Only one of feeLimit or feeLimitRatio should be specified, if neither is specified then the greater of 25 satoshis or 5% of the invoice amount is used for the fee limit.
Example: 200
invoice string required
The BOLT \#11 encoded invoice to pay
Example: lnbc500n1p3zv5vkpp5x0thcaz8wep54clc2xt5895azjdzmthyskzzh9yslggy74qtvl6sdpdg3hkuct5d9hkugrxdaezqjn0dphk2fmnypkk2mtsdahkccqzpgxqyz5vqsp5v80q4vq4pwakq2l0hcqgtelgajsymv4ud4jdcrqtnzhvet55qlus9qyyssquqh2wl2m866qs5n72c5vg6wmqx9vzwhs5ypualq4mcu76h2tdkcq3jtjwtggfff7xwtdqxlnwqk8cxpzryjghrmmq3syraswp9vjr7cqry9l96
amount number
A specific amount of satoshis to pay for this request. This is used to pay more than the amount requested by the invoice, such as for zero value invoices that will accept any size payment. Must be greater than or equal to any amount specified by the invoice.

200 Response

transfer object
coin string required
A cryptocurrency or token ticker symbol.
Example: btc
id string required
Example: 59cd72485007a239fb00282ed480da1f
Match pattern: ^[0-9a-f]{32}$
wallet string required
Example: 59cd72485007a239fb00282ed480da1f
Match pattern: ^[0-9a-f]{32}$
enterprise string
Example: 59cd72485007a239fb00282ed480da1f
Match pattern: ^[0-9a-f]{32}$
txid string required
The on-chain transaction id
Example: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26
height integer required
The height of the block this Transfer was confirmed in (999999999 if unconfirmed)
heightId string
The unique height id of the block
date string <date-time>required
The date this Transfer was last updated
type string required
Defines whether or not this Transfer was sent or received by the user
Allowed values: send receive
value integer
The total value (in base units) sent by this Transfer (may be approximate for ETH and other coins where amounts in base units can exceed 2^53 - 1)
valueString string required
The total value (in base units) sent by this Transfer represented as a String
Example: 2000000
Match pattern: ^-?\d+$
baseValue integer
The value (in base units) sent by this Transfer without network fees, represented
baseValueString string
The value (in base units) sent by this Transfer without network fees, represented as a String
Example: 2000000
Match pattern: ^-?\d+$
feeString string
The Transfer's fee (in base units) represented as a String
payGoFee integer
The Transfer's BitGo fee (in base units)
payGoFeeString string
The Transfer's BitGo fee (in base units) represented as a String
usd number required
The amount of USD of this Transfer (will be negative if it's a send)
usdRate number required
The USD price at the time this Transfer was created
state string required
The status of this Transfer
Allowed values: signed unconfirmed confirmed pendingApproval removed failed rejected
Example: confirmed
tags array[string] required
The tags to be used on this Transfer (used in Policies)
history array[object] required
An audit log of events that have happened to the Transfer during its lifecycle
comment string required
A comment from the user
vSize integer
The size of the transaction
nSegwitInputs integer
DEPRECATED. Number of segwit inputs on the transfer.
coinSpecific object required
Transfer fields specific to each coin type
sequenceId string
A "sequenceId" is a unique and arbitrary wallet identifier applied to transfers and transactions at creation. It is optional but highly recommended. With a "sequenceId" you can easily reference transfers and transactions&mdash;for example, to safely retry sending. Because the system only confirms one send request per "sequenceId" (and fails all subsequent attempts), you can retry sending without the risk of double spending. The "sequenceId" is only visible to users on the wallet and is not shared publicly.
entries array[object]
An array of objects describing the change in address balances made as a result of this Transfer
usersNotified boolean
Whether BitGo already sent notifications to the users of the transfer wallet
status string
The status of this Transfer
Allowed values: signed unconfirmed confirmed pendingApproval removed failed rejected
Example: confirmed
paymentHash string
The unique payment hash used for this payment..
Example: 63d9ce82e09d16761a85116ed8b65407db4fb22f85d03573de09c480f2c6d175

400 Response

One of
error string required
Human-readable error message
requestId string required
Client request id
context object
Properties that apply to a specific error name
name string required
Error code