Lightspark Sandbox API
Endpoints to trigger test cases in sandbox
Operations 7
Documentation
Documentation
https://docs.lightspark.com/
APIReference
https://docs.lightspark.com/api-reference/authentication
Endpoints to trigger test cases in sandbox
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/lightspark-sandbox-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Grid Sandbox API
description: 'API for managing global payments on the open Money Grid. Built by Lightspark. See the full documentation at https://docs.lightspark.com/.
'
version: '2025-10-13'
contact:
name: Lightspark Support
email: support@lightspark.com
license:
name: Proprietary
url: https://lightspark.com/terms
servers:
- url: https://api.lightspark.com/grid/2025-10-13
description: Production server
security:
- BasicAuth: []
- AgentAuth: []
tags:
- name: Sandbox
description: Endpoints to trigger test cases in sandbox
paths:
/sandbox/webhooks/test:
post:
summary: Send a test webhook
description: Send a test webhook to the configured endpoint
operationId: sendTestWebhook
tags:
- Sandbox
security:
- BasicAuth: []
responses:
'200':
description: Webhook delivered successfully
content:
application/json:
schema:
$ref: '#/components/schemas/TestWebhookResponse'
'400':
description: Bad request - Webhook delivery failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error401'
'500':
description: Internal service error
content:
application/json:
schema:
$ref: '#/components/schemas/Error500'
/sandbox/send:
post:
summary: Simulate sending funds
description: 'Simulate sending funds to the bank account as instructed in the quote.
This endpoint is only for the sandbox environment and will fail for production platforms/keys.
'
operationId: sandboxSend
tags:
- Sandbox
security:
- BasicAuth: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SandboxSendRequest'
responses:
'200':
description: Funds received successfully
content:
application/json:
schema:
$ref: '#/components/schemas/OutgoingTransaction'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden - request was made with a production platform token
content:
application/json:
schema:
$ref: '#/components/schemas/Error403'
'404':
description: Quote not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error404'
'500':
description: Internal service error
content:
application/json:
schema:
$ref: '#/components/schemas/Error500'
/sandbox/uma/receive:
post:
summary: Simulate payment send to test receiving an UMA payment
description: 'Simulate sending payment from an sandbox uma address to a platform customer to test payment receive.
This endpoint is only for the sandbox environment and will fail for production platforms/keys.
'
operationId: sandboxReceive
tags:
- Sandbox
security:
- BasicAuth: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SandboxUmaReceiveRequest'
responses:
'200':
description: Payment triggered successfully
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingTransaction'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden - request was made with a production platform token
content:
application/json:
schema:
$ref: '#/components/schemas/Error403'
'404':
description: Sender or receiver not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error404'
'500':
description: Internal service error
content:
application/json:
schema:
$ref: '#/components/schemas/Error500'
/sandbox/internal-accounts/{accountId}/fund:
post:
summary: Simulate funding an internal account
description: 'Simulate receiving funds into an internal account in the sandbox environment. This is useful for testing scenarios where you need to add funds to a customer''s or platform''s internal account without going through a real bank transfer or following payment instructions.
This endpoint is only for the sandbox environment and will fail for production platforms/keys.
'
operationId: sandboxFundInternalAccount
tags:
- Sandbox
security:
- BasicAuth: []
parameters:
- name: accountId
in: path
required: true
description: The ID of the internal account to fund
schema:
type: string
example: InternalAccount:a12dcbd6-dced-4ec4-b756-3c3a9ea3d123
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SandboxFundRequest'
examples:
fundUSDAccount:
summary: Fund USD internal account with $1,000
value:
amount: 100000
fundBTCAccount:
summary: Fund BTC internal account with 0.01 BTC
value:
amount: 1000000
responses:
'200':
description: Internal account funded successfully
content:
application/json:
schema:
$ref: '#/components/schemas/InternalAccount'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden - request was made with a production platform token
content:
application/json:
schema:
$ref: '#/components/schemas/Error403'
'404':
description: Internal account not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error404'
'500':
description: Internal service error
content:
application/json:
schema:
$ref: '#/components/schemas/Error500'
/sandbox/cards/{id}/simulate/authorization:
post:
summary: Simulate a card authorization
description: 'Simulate an inbound card authorization in the sandbox environment. Drives the same internal `authorize` + `reconcile` paths the card issuer would call in production, so platforms can exercise Grid''s decisioning + funding-source pull behavior end-to-end without an external network round-trip.
The decisioning outcome is controlled by the last three characters of `merchant.descriptor`:
| Suffix | Outcome | | ------ | ------- | | `002` | Decline — `INSUFFICIENT_FUNDS` (the pull on the funding source fails) | | `003` | Decline — `CARD_PAUSED` (intended to verify a frozen card refuses auths) | | `005` | Delayed pull (~30s) — exercises the `PENDING → CONFIRMED` path | | `006` | Pull succeeds but the confirmation event reports `FAILED` — exercises the high-urgency `EXCEPTION` alert | | any other | Approved |
Production returns `404` on this path.
'
operationId: sandboxSimulateCardAuthorization
tags:
- Sandbox
security:
- BasicAuth: []
parameters:
- name: id
in: path
required: true
description: The id of the card to simulate an authorization against.
schema:
type: string
example: Card:019542f5-b3e7-1d02-0000-000000000010
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SandboxCardAuthorizationRequest'
examples:
coffeeAuth:
summary: Approved $12.50 auth at a coffee shop
value:
amount: 1250
currency:
code: USD
merchant:
descriptor: BLUE BOTTLE COFFEE SF
mcc: '5814'
country: US
declinedInsufficientFunds:
summary: Declined — insufficient funds (descriptor suffix `002`)
value:
amount: 50000
currency:
code: USD
merchant:
descriptor: AMAZON RETAIL US-002
mcc: '5942'
country: US
responses:
'200':
description: Simulated authorization processed. Returns the resulting card transaction.
content:
application/json:
schema:
$ref: '#/components/schemas/CardTransaction'
'400':
description: Bad request - Invalid parameters
content:
application/json:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden - request was made with a production platform token
content:
application/json:
schema:
$ref: '#/components/schemas/Error403'
'404':
description: Card not found (also returned in production for this path)
content:
application/json:
schema:
$ref: '#/components/schemas/Error404'
'500':
description: Internal service error
content:
application/json:
schema:
$ref: '#/components/schemas/Error500'
/sandbox/cards/{id}/simulate/clearing:
post:
summary: Simulate a card clearing
description: 'Simulate a clearing (settlement) event against an existing `CardTransaction` in the sandbox environment.
- A clearing `amount` greater than the authorized amount exercises the over-auth post-hoc-pull path (e.g. restaurant tip on top of a 20% over-auth).
- A clearing `amount` of `0` exercises the `AUTHORIZATION_EXPIRY` path — the auth expires with no clearing posted.
- Suffix-driven outcomes on the parent transaction''s id govern whether the post-hoc pull succeeds (use the suffix table from `simulate/authorization` to construct deterministic test cases).
Production returns `404` on this path.
'
operationId: sandboxSimulateCardClearing
tags:
- Sandbox
security:
- BasicAuth: []
parameters:
- name: id
in: path
required: true
description: The id of the card the clearing applies to.
schema:
type: string
example: Card:019542f5-b3e7-1d02-0000-000000000010
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SandboxCardClearingRequest'
examples:
tipOnTopClearing:
summary: Clearing larger than auth — exercises post-hoc pull
value:
cardTransactionId: CardTransaction:019542f5-b3e7-1d02-0000-000000000100
amount: 1500
authorizationExpiry:
summary: Clearing of 0 — exercises authorization expiry
value:
cardTransactionId: CardTransaction:019542f5-b3e7-1d02-0000-000000000100
amount: 0
responses:
'200':
description: Simulated clearing processed. Returns the updated card transaction.
content:
application/json:
schema:
$ref: '#/components/schemas/CardTransaction'
'400':
description: Bad request - Invalid parameters
content:
application/json:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden - request was made with a production platform token
content:
application/json:
schema:
$ref: '#/components/schemas/Error403'
'404':
description: Card or card transaction not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error404'
'500':
description: Internal service error
content:
application/json:
schema:
$ref: '#/components/schemas/Error500'
/sandbox/cards/{id}/simulate/return:
post:
summary: Simulate a card return
description: 'Simulate a merchant-initiated `RETURN` against an existing settled card transaction in the sandbox environment. Creates a `CardRefund` on the parent and either flips the parent to `REFUNDED` (full refund) or keeps it `SETTLED` with a non-zero `refundedAmount` (partial refund).
Production returns `404` on this path.
'
operationId: sandboxSimulateCardReturn
tags:
- Sandbox
security:
- BasicAuth: []
parameters:
- name: id
in: path
required: true
description: The id of the card the return applies to.
schema:
type: string
example: Card:019542f5-b3e7-1d02-0000-000000000010
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SandboxCardReturnRequest'
examples:
fullRefund:
summary: Full refund of a $15.00 settled transaction
value:
cardTransactionId: CardTransaction:019542f5-b3e7-1d02-0000-000000000100
amount: 1500
responses:
'200':
description: Simulated return processed. Returns the updated card transaction.
content:
application/json:
schema:
$ref: '#/components/schemas/CardTransaction'
'400':
description: Bad request - Invalid parameters
content:
application/json:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden - request was made with a production platform token
content:
application/json:
schema:
$ref: '#/components/schemas/Error403'
'404':
description: Card or card transaction not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error404'
'500':
description: Internal service error
content:
application/json:
schema:
$ref: '#/components/schemas/Error500'
components:
schemas:
Refund:
type: object
required:
- reference
- initiatedAt
- status
properties:
reference:
type: string
description: The unique reference ID of the refund
example: UMA-Q12345-REFUND
initiatedAt:
type: string
format: date-time
description: When the refund was initiated
example: '2025-08-15T14:30:00Z'
settledAt:
type: string
format: date-time
description: When the refund was settled
example: '2025-08-15T14:35:00Z'
status:
type: string
enum:
- PENDING
- COMPLETED
- FAILED
description: Current status of the refund
example: COMPLETED
reason:
type: string
enum:
- TRANSACTION_FAILED
- USER_CANCELLATION
- TIMEOUT
description: Reason for the refund
example: TRANSACTION_FAILED
BasePaymentAccountInfo:
type: object
required:
- accountType
properties:
accountType:
$ref: '#/components/schemas/PaymentAccountType'
BdtAccountInfo:
allOf:
- $ref: '#/components/schemas/BdtAccountInfoBase'
- type: object
required:
- paymentRails
properties:
paymentRails:
type: array
items:
type: string
enum:
- BANK_TRANSFER
- MOBILE_MONEY
PhpAccountInfo:
allOf:
- $ref: '#/components/schemas/PhpAccountInfoBase'
- type: object
required:
- paymentRails
properties:
paymentRails:
type: array
items:
type: string
enum:
- BANK_TRANSFER
XofAccountInfoBase:
type: object
required:
- accountType
- phoneNumber
- provider
- region
properties:
accountType:
type: string
enum:
- XOF_ACCOUNT
phoneNumber:
type: string
description: The phone number in international format
example: '+1234567890'
minLength: 7
maxLength: 15
pattern: ^\+[0-9]{6,14}$
provider:
type: string
description: The mobile money provider name
minLength: 1
maxLength: 255
region:
type: string
description: Country code within the West African CFA franc zone
minLength: 2
maxLength: 2
pattern: ^[A-Z]{2}$
enum:
- BJ
- CI
- SN
- TG
example:
accountType: XOF_ACCOUNT
phoneNumber: '+1234567890'
provider: Example Provider
region: BJ
PaymentEthereumWalletInfo:
title: Ethereum Wallet
allOf:
- $ref: '#/components/schemas/BasePaymentAccountInfo'
- $ref: '#/components/schemas/EthereumWalletInfo'
- type: object
properties:
assetType:
type: string
description: Type of asset
enum:
- USDC
HkdAccountInfo:
allOf:
- $ref: '#/components/schemas/HkdAccountInfoBase'
- type: object
required:
- paymentRails
properties:
paymentRails:
type: array
items:
type: string
enum:
- BANK_TRANSFER
PaymentUsdAccountInfo:
title: USD Bank Account
allOf:
- $ref: '#/components/schemas/BasePaymentAccountInfo'
- $ref: '#/components/schemas/UsdAccountInfo'
- type: object
required:
- reference
properties:
reference:
type: string
description: Unique reference code that must be included with the payment to properly credit it
example: UMA-Q12345-REF
PaymentCadAccountInfo:
title: CAD Account
allOf:
- $ref: '#/components/schemas/BasePaymentAccountInfo'
- $ref: '#/components/schemas/CadAccountInfo'
- type: object
required:
- reference
properties:
reference:
type: string
description: Unique reference code that must be included with the payment to properly credit it
example: UMA-Q12345-REF
PaymentGhsAccountInfo:
title: GHS Account
allOf:
- $ref: '#/components/schemas/BasePaymentAccountInfo'
- $ref: '#/components/schemas/GhsAccountInfo'
- type: object
required:
- reference
properties:
reference:
type: string
description: Unique reference code that must be included with the payment to properly credit it
example: UMA-Q12345-REF
TransactionType:
type: string
enum:
- INCOMING
- OUTGOING
description: Type of transaction (incoming payment or outgoing payment)
PaymentEmbeddedWalletInfo:
title: Embedded Wallet
allOf:
- $ref: '#/components/schemas/BasePaymentAccountInfo'
- type: object
required:
- accountType
- payloadToSign
properties:
accountType:
type: string
enum:
- EMBEDDED_WALLET
description: Discriminator value identifying this as Embedded Wallet payment instructions.
payloadToSign:
type: string
description: JSON-encoded transaction signing payload that must be stamped, as-is (byte-for-byte, without re-serialization), with the session private key of a verified authentication credential on the source Embedded Wallet. The resulting Grid wallet signature is passed as the `Grid-Wallet-Signature` header on `POST /quotes/{quoteId}/execute` to authorize the outbound transfer from the wallet.
example: '{"type":"ACTIVITY_TYPE_SIGN_TRANSACTION_V2","timestampMs":"1746736509954","organizationId":"org_abc123","parameters":{"signWith":"wallet_abc123def456","unsignedTransaction":"ea69b4bf05f775209f26ff0a34a05569180f7936579d5c4af9377ae550194f72","type":"TRANSACTION_TYPE_ETHEREUM"},"generateAppProofs":true}'
CardTransaction:
title: Card Transaction
type: object
required:
- type
- id
- status
- direction
- merchant
- authorizedAmount
- accountId
- customerId
- platformCustomerId
- authorizedAt
- createdAt
- updatedAt
description: Parent transaction row for a card authorization and all of the pulls / settlements / refunds that reconcile against it. Child events are rolled up into the `pullSummary`, `refundSummary`, and `settlementSummary` aggregates. Delivered as the payload of the generic transaction webhook stream (extends the Transaction model with a card destination type) on every transition.
properties:
type:
type: string
enum:
- CARD
description: Discriminator identifying this transaction as a card transaction in the `Transaction` list.
id:
type: string
description: System-generated unique card transaction identifier
readOnly: true
example: CardTransaction:019542f5-b3e7-1d02-0000-000000000100
cardId:
type: string
description: The id of the `Card` this transaction was made on.
example: Card:019542f5-b3e7-1d02-0000-000000000010
customerId:
type: string
description: System ID of the customer (cardholder) this transaction belongs to.
example: Customer:019542f5-b3e7-1d02-0000-000000000001
platformCustomerId:
type: string
description: Platform-specific ID of the customer (cardholder) this transaction belongs to.
example: 18d3e5f7b4a9c2
issuerTransactionToken:
type: string
description: Opaque identifier for the transaction on the underlying issuer. Used to cross-reference Grid records against issuer dashboards and webhooks.
example: lithic_txn_b81c2a4f
readOnly: true
status:
$ref: '#/components/schemas/CardTransactionStatus'
direction:
$ref: '#/components/schemas/TransactionDirection'
description: Card transactions debit the customer's account.
example: DEBIT
merchant:
$ref: '#/components/schemas/CardMerchant'
authorizedAmount:
$ref: '#/components/schemas/CurrencyAmount'
settledAmount:
$ref: '#/components/schemas/CurrencyAmount'
refundedAmount:
$ref: '#/components/schemas/CurrencyAmount'
accountId:
type: string
description: Internal account id that funded this transaction (the funding source selected by Authorization Decisioning at auth time).
example: InternalAccount:019542f5-b3e7-1d02-0000-000000000002
pullSummary:
$ref: '#/components/schemas/CardPullSummary'
refundSummary:
$ref: '#/components/schemas/CardRefundSummary'
settlementSummary:
$ref: '#/components/schemas/CardSettlementSummary'
authorizedAt:
type: string
format: date-time
description: When the auth was approved.
example: '2026-05-08T14:30:00Z'
lastEventAt:
type: string
format: date-time
description: Timestamp of the most recent reconcile event (pull / clearing / refund) against this transaction.
example: '2026-05-08T15:42:11Z'
createdAt:
type: string
format: date-time
description: Creation timestamp (same as `authorizedAt` for card transactions).
readOnly: true
example: '2026-05-08T14:30:00Z'
updatedAt:
type: string
format: date-time
description: Last update timestamp.
readOnly: true
example: '2026-05-08T15:42:11Z'
UgxAccountInfo:
allOf:
- $ref: '#/components/schemas/UgxAccountInfoBase'
- type: object
required:
- paymentRails
properties:
paymentRails:
type: array
items:
type: string
enum:
- MOBILE_MONEY
MyrAccountInfoBase:
type: object
required:
- accountType
- bankName
- accountNumber
- swiftCode
properties:
accountType:
type: string
enum:
- MYR_ACCOUNT
bankName:
type: string
description: The name of the bank
minLength: 1
maxLength: 255
accountNumber:
type: string
description: Malaysian bank account number
minLength: 1
maxLength: 34
example: '1234567890'
swiftCode:
type: string
description: The SWIFT/BIC code of the bank
example: MABORUMMYYY
minLength: 8
maxLength: 11
pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$
example:
accountType: MYR_ACCOUNT
bankName: Example Bank
accountNumber: '1234567890'
swiftCode: MABORUMMYYY
InternalAccountType:
title: Internal Account Type
type: string
enum:
- INTERNAL_FIAT
- INTERNAL_CRYPTO
- EMBEDDED_WALLET
description: 'Classification of an internal account.
- `INTERNAL_FIAT`: A Grid-managed fiat holding account (for example, the USD holding account used as the source for Payouts flows).
- `INTERNAL_CRYPTO`: A Grid-managed crypto holding account denominated in a stablecoin such as USDC.
- `EMBEDDED_WALLET`: A self-custodial Embedded Wallet provisioned for the customer. Outbound transfers require a session signature produced by the customer''s device — see the Embedded Wallets guide.'
HkdAccountInfoBase:
type: object
required:
- accountType
- bankName
- accountNumber
- swiftCode
properties:
accountType:
type: string
enum:
- HKD_ACCOUNT
bankName:
type: string
description: The name of the bank
minLength: 1
maxLength: 255
accountNumber:
type: string
description: Hong Kong bank account number
minLength: 1
maxLength: 34
example: '123456789012'
swiftCode:
type: string
description: The SWIFT/BIC code of the bank
example: HSBCHKHHHKH
minLength: 8
maxLength: 11
pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$
example:
accountType: HKD_ACCOUNT
bankName: Example Bank
accountNumber: '123456789012'
swiftCode: HSBCHKHHHKH
PaymentUgxAccountInfo:
title: UGX Account
allOf:
- $ref: '#/components/schemas/BasePaymentAccountInfo'
- $ref: '#/components/schemas/UgxAccountInfo'
- type: object
required:
- reference
properties:
reference:
type: string
description: Unique reference code that must be included with the payment to properly credit it
example: UMA-Q12345-REF
UsdAccountInfoBase:
type: object
required:
- accountType
- accountNumber
- routingNumber
properties:
accountType:
type: string
enum:
- USD_ACCOUNT
accountNumber:
type: string
description: The account number of the bank
minLength: 1
maxLength: 34
routingNumber:
type: string
description: The ABA routing number
example: '021000021'
minLength: 9
maxLength: 9
pattern: ^[0-9]{9}$
example:
accountType: USD_ACCOUNT
accountNumber: '1234567890'
routingNumber: '021000021'
PaymentBaseWalletInfo:
title: Base Wallet
allOf:
- $ref: '#/components/schemas/BasePaymentAccountInfo'
- $ref: '#/components/schemas/BaseWalletInfo'
- type: object
properties:
assetType:
type: string
description: Type of asset
enum:
- USDC
EgpAccountInfo:
allOf:
- $ref: '#/components/schemas/EgpAccountInfoBase'
- type: object
required:
- paymentRails
properties:
paymentRails:
type: array
items:
type: string
enum:
- BANK_TRANSFER
- MOBILE_MONEY
AccountTransactionSource:
title: Account Source
allOf:
- $ref: '#/components/schemas/BaseTransactionSource'
- type: object
required:
- accountId
- sourceType
properties:
sourceType:
type: string
enum:
- ACCOUNT
accountId:
type: string
description: Source account identifier
example: InternalAccount:e85dcbd6-dced-4ec4-b756-3c3a9ea3d965
onChainTransaction:
$ref: '#/components/schemas/OnChainTransaction'
description: On-chain transaction that delivered funds from this source, when the source is an external crypto wallet. Populated once the crypto transfer has settled.
description: Source account details
IncomingTransactionFailureReason:
type: string
enum:
- LNURLP_FAILED
- PAY_REQUEST_FAILED
- PAYMENT_APPROVAL_WEBHOOK_ERROR
- PAYMENT_APPROVAL_TIMED_OUT
- OFFRAMP_FAILED
- MISSING_MANDATORY_PAYEE_DATA
- QUOTE_EXPIRED
- QUOTE_EXECUTION_FAILED
description: Reason for failure of an incoming transaction. This is used to provide more context on why a transaction fa
# --- truncated at 32 KB (146 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/lightspark/refs/heads/main/openapi/lightspark-sandbox-api-openapi.yml