In order for REDSHIFT to trustlessly pay Bitcoin Lightning Network invoices with other digital assets, REDSHIFT requires that these invoices meet certain criteria. Most invoices created using the LND default settings will work without any configuration.


Invoices Must Specify An Amount


REDSHIFT can only pay invoices that specify an amount.  To determine whether an invoice specifies an amount, use a lightning invoice decoder such as https://lightningdecoder.com/ or https://lndecode.com/. If the amount specified is "Not specified (any amount)", then the invoice is not payable with REDSHIFT.  See REDSHIFT returns "Invoice must specify an amount" for details.


Invoice Amount Must Be Above A Minimum


REDSHIFT enforces a minimum invoice amount that varies by asset pair; in general, assets on networks with low transaction fees will have a lower minimum amount than assets on networks with high transaction fees.  These minimums may change over time as network fees change.  To check the current minimum invoice size, visit https://api.redshift.radar.tech/api/markets/requirements and look at `payReq.minBaseUnits` for each pair.


Invoice Expiration Must Be Above A Minimum


REDSHIFT enforces a minimum invoice expiry time that varies by asset pair; in general, assets on networks with faster blocktimes will have a lower minimum amount than assets on networks with slower blocktimes.  To check the minimum invoice expiry requirements, visit https://api.redshift.radar.tech/api/markets/requirements and look at `payReq.minExpirationSeconds` for each pair.


REDSHIFT requires a longer invoice expiry period for safety and to reduce the frequency with which refunds are required, but please note that most invoices are paid instantly as soon as the on-chain funding transaction confirms.  Setting a longer invoice expiry also has no impact on the frequency or duration of "stuck payments" on the Lightning Network.