VeilNebula API API reference 0.1.0
VeilNebula accepts crypto payments over this API or through a hosted checkout page, and reports state changes over signed webhooks. Merchant identity is never verified — there is no KYC or KYB step — and the wallet half of the product is non-custodial. What a given deployment actually does depends on its configuration, so read GET /v1/services before integrating. Its `mode` field reports whether the published payment-method catalog is projected from the SANDBOX or the LIVE unit registry (PAYMENT_CATALOG_ENVIRONMENT), and its `boundaries` block reports which money paths are switched on. Deposit detection is gated by CHAIN_OBSERVATION_ENABLED. Outbound payout/refund broadcast and balance sweeps are gated by PAYOUT_BROADCAST_ENABLED, PAYOUT_SWEEP_ENABLED and SWEEP_ENABLED, all off by default; while they are off, payout and refund operations write ledger entries and emit completion webhooks without broadcasting any chain transaction. Not offered on any deployment: fiat acquiring, fiat conversion or fiat off-ramp; KYT/AML transaction screening; a contractual uptime SLA; and transaction mixing, anonymisation or any other privacy service. Blockchains are public — not asking who a merchant is does not hide who they are.
https://api.176-97-210-16.sslip.ioDeployed APIhttp://localhost:4000Local API62 operations · grouped by tag · live spec at /openapi.json.
Reference (3)
/healthHealth check
Responses
API health status
application/jsonobject/v1/exchange-ratesGet a live exchange rate
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
asset | query | required | $ref:AssetCode | — |
quote | query | required | $ref:AssetCode | — |
Responses
Live provider-backed exchange-rate observation.
application/json$ref:ExchangeRate/v1/servicesList deployment service metadata
Responses
Supported payment methods, statuses, events, headers, and sandbox boundaries.
application/json$ref:ServiceReferenceAuthentication (2)
/v1/auth/loginCreate a merchant session
Request body required
application/json$ref:LoginRequestResponses
Created merchant session
application/json$ref:AuthResponse/v1/auth/signupCreate a merchant user, merchant, and default project
Request body required
application/json$ref:SignupRequestResponses
Created merchant session
application/json$ref:AuthResponseMerchant self-service (4)
/v1/meFetch the current merchant user
Responses
Current merchant user
application/json$ref:CurrentMerchantUserResponse/v1/merchant/merchants/{merchantId}/projectsList projects for a merchant
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
merchantId | path | required | string | — |
Responses
Projects for the merchant
application/jsonarray<$ref:MerchantProject>/v1/merchant/merchants/{merchantId}/projectsCreate a merchant project
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
merchantId | path | required | string | — |
Request body required
application/json$ref:CreateMerchantProjectRequestResponses
Created project
application/json$ref:MerchantProject/v1/merchant/merchants/{merchantId}/projects/{projectId}/api-keysCreate a project API key
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
merchantId | path | required | string | — |
projectId | path | required | string | — |
Request body required
application/json$ref:CreateMerchantApiKeyRequestResponses
Created API key
application/json$ref:CreatedMerchantApiKeyAdmin provisioning (7)
/v1/admin/merchantsList sandbox merchants
Responses
Recent merchants
application/jsonarray<$ref:Merchant>/v1/admin/merchantsCreate a sandbox merchant
Request body required
application/jsonobjectResponses
Created merchant
application/json$ref:Merchant/v1/admin/merchants/{merchantId}/projectsList projects for a merchant
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
merchantId | path | required | string | — |
Responses
Recent projects for the merchant
application/jsonarray<$ref:Project>/v1/admin/merchants/{merchantId}/projectsCreate a sandbox project
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
merchantId | path | required | string | — |
Request body required
application/json$ref:CreateProjectRequestResponses
Created project
application/json$ref:Project/v1/admin/projects/{projectId}/api-keysList project API keys
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
projectId | path | required | string | — |
Responses
Project API keys without raw secrets.
application/jsonarray<$ref:ApiKey>/v1/admin/projects/{projectId}/api-keysCreate a project API key
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
projectId | path | required | string | — |
Request body required
application/json$ref:CreateApiKeyRequestResponses
Created API key
application/json$ref:CreatedApiKey/v1/admin/projects/{projectId}/api-keys/{apiKeyId}/revokeRevoke a project API key
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
projectId | path | required | string | — |
apiKeyId | path | required | string | — |
Responses
Revoked API key metadata.
application/json$ref:ApiKeyQuotes (1)
/v1/quotes/feesPreview deterministic sandbox invoice fees
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
amountMinor | query | required | $ref:MinorAmount | — |
currencyCode | query | optional | $ref:AssetCode | — |
settlementAssetCode | query | optional | $ref:AssetCode | — |
Responses
Fee quote
application/json$ref:FeeQuotePayments (4)
/v1/paymentsList project invoices
Responses
Recent invoices
application/jsonarray<$ref:Payment>/v1/paymentsCreate a crypto invoice
Request body required
application/json$ref:CreatePaymentRequestResponses
Created invoice
application/json$ref:Payment/v1/payments/{paymentId}Fetch one invoice
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
paymentId | path | required | string | — |
Responses
Invoice
application/json$ref:Payment/v1/payments/{paymentId}/sandbox/simulate-paidSimulate a paid sandbox invoice for the authenticated project
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
paymentId | path | required | string | — |
Responses
Sandbox payment simulation recorded for the invoice
application/json$ref:MockChainTransactionPayment links (6)
/pay/{paymentLinkId}Fetch public reusable payment-link checkout state
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
paymentLinkId | path | required | string | — |
Responses
Reusable sandbox payment-link metadata.
application/json$ref:PublicPaymentLink/pay/{paymentLinkId}Create a sandbox invoice from a reusable payment link
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
paymentLinkId | path | required | string | — |
Request body
application/json$ref:CreatePaymentFromLinkRequestResponses
Sandbox invoice created from the reusable payment link.
application/json$ref:PaymentLinkInvoice/v1/payment-linksList reusable sandbox payment links
Responses
Recent reusable sandbox payment links.
application/jsonarray<$ref:PaymentLink>/v1/payment-linksCreate a reusable sandbox payment link
Request body required
application/json$ref:CreatePaymentLinkRequestResponses
Created reusable sandbox payment link.
application/json$ref:PaymentLink/v1/payment-links/{paymentLinkId}Fetch one reusable sandbox payment link
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
paymentLinkId | path | required | string | — |
Responses
Reusable sandbox payment link.
application/json$ref:PaymentLink/v1/payment-links/{paymentLinkId}/disableDisable a reusable sandbox payment link
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
paymentLinkId | path | required | string | — |
Responses
Disabled reusable sandbox payment link.
application/json$ref:PaymentLinkCheckout (2)
/checkout/{invoiceId}Fetch public checkout state
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
invoiceId | path | required | string | — |
Responses
Checkout invoice, methods, and active attempt.
application/json$ref:Checkout/checkout/{invoiceId}/select-methodSelect a sandbox payment method
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
invoiceId | path | required | string | — |
Request body required
application/json$ref:SelectPaymentMethodRequestResponses
Checkout state with active payment attempt.
application/json$ref:CheckoutWebhooks (6)
/v1/webhooks/deliveriesList webhook deliveries
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
limit | query | optional | integer | — |
Responses
Recent deliveries.
application/jsonarray<$ref:WebhookDelivery>/v1/webhooks/deliveries/run-dueRun due webhook deliveries for the authenticated project
Responses
Delivery job summary for this project only.
application/json$ref:WebhookDeliverySummary/v1/webhooks/deliveries/{deliveryId}/resendQueue a resend for a terminal delivery
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
deliveryId | path | required | string | — |
Responses
Fresh pending delivery.
application/json$ref:WebhookDelivery/v1/webhooks/endpointsList webhook endpoints
Responses
Webhook endpoints without secrets.
application/jsonarray<$ref:WebhookEndpoint>/v1/webhooks/endpointsCreate a webhook endpoint
Request body required
application/json$ref:CreateWebhookEndpointRequestResponses
Created webhook endpoint with signing secret.
application/json$ref:CreatedWebhookEndpoint/v1/webhooks/endpoints/{endpointId}/testSend a signed webhook.test delivery
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
endpointId | path | required | string | — |
Responses
Delivered or queued test delivery record.
application/json$ref:WebhookDeliveryBalances (1)
/v1/balancesList ledger-derived balances
Responses
Merchant balances.
application/json$ref:BalanceResponseSwaps (4)
/v1/swapsExecute a sandbox balance swap
Request body required
application/json$ref:SwapExecuteInputResponses
Executed sandbox swap.
application/json$ref:SwapResult/v1/swaps/pageList cursor-paginated swap history
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
cursor | query | optional | string | — |
limit | query | optional | integer | — |
Responses
Swap history page.
application/json$ref:SwapListPageResponse/v1/swaps/quoteQuote an exact directed unit swap
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
fromAsset | query | required | $ref:AssetCode | — |
fromNetworkCode | query | required | string | — |
toAsset | query | required | $ref:AssetCode | — |
toNetworkCode | query | required | string | — |
Responses
Directed quote with exact source and target unit metadata.
application/json$ref:SwapQuote/v1/swaps/unitsList swap-eligible canonical units
Responses
Authoritative unit catalog for the project environment.
application/json$ref:SwapUnitsResponseReports (6)
/v1/reports/balances.csvExport ledger balances CSV
Responses
CSV attachment with one row per ledger account.
text/csvstring/v1/reports/payment-links.csvExport payment links CSV
Responses
CSV attachment with sandbox payment-link rows.
text/csvstring/v1/reports/payments.csvExport payments CSV
Responses
CSV attachment with sandbox payment rows.
text/csvstring/v1/reports/summaryGet reporting summary
Responses
Reconciliation summary.
application/json$ref:ReportsSummary/v1/reports/transfers.csvExport transfers CSV
Responses
CSV attachment with sandbox transfer rows.
text/csvstring/v1/reports/webhooks.csvExport webhook deliveries CSV
Responses
CSV attachment with sandbox webhook delivery rows.
text/csvstringStatic wallets (6)
/v1/static-walletsList sandbox static wallets
Responses
Recent sandbox static wallets.
application/jsonarray<$ref:StaticWallet>/v1/static-walletsCreate a sandbox static wallet
Request body required
application/json$ref:CreateStaticWalletRequestResponses
Created sandbox static wallet.
application/json$ref:StaticWallet/v1/static-wallets/{walletId}Fetch one sandbox static wallet
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
walletId | path | required | string | — |
Responses
Sandbox static wallet details.
application/json$ref:StaticWallet/v1/static-wallets/{walletId}/blockBlock a sandbox static wallet
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
walletId | path | required | string | — |
Responses
Blocked sandbox static wallet.
application/json$ref:StaticWallet/v1/static-wallets/{walletId}/topupsList sandbox static wallet top-ups
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
walletId | path | required | string | — |
Responses
Recent completed sandbox top-ups for this static wallet.
application/jsonarray<$ref:StaticWalletTopUp>/v1/static-wallets/{walletId}/unblockUnblock a sandbox static wallet
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
walletId | path | required | string | — |
Responses
Unblocked sandbox static wallet.
application/json$ref:StaticWalletSandbox transfers (6)
/v1/payoutsList sandbox payouts
Responses
Recent sandbox payouts.
application/jsonarray<$ref:MerchantTransfer>/v1/payoutsCreate a simulated sandbox payout
Request body required
application/json$ref:CreatePayoutRequestResponses
Completed sandbox payout.
application/json$ref:MerchantTransfer/v1/payouts/{transferId}Fetch one sandbox payout
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
transferId | path | required | string | — |
Responses
Sandbox payout.
application/json$ref:MerchantTransfer/v1/refundsList sandbox refunds
Responses
Recent sandbox refunds.
application/jsonarray<$ref:MerchantTransfer>/v1/refundsCreate a simulated sandbox refund
Request body required
application/json$ref:CreateRefundRequestResponses
Completed sandbox refund.
application/json$ref:MerchantTransfer/v1/refunds/{transferId}Fetch one sandbox refund
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
transferId | path | required | string | — |
Responses
Sandbox refund.
application/json$ref:MerchantTransferSandbox jobs (4)
/v1/admin/payment-jobs/projects/{projectId}/run-webhooksRun due webhook delivery jobs for one project
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
projectId | path | required | string | — |
Responses
Job run summary.
application/json$ref:PaymentJobsSummary/v1/admin/payment-jobs/run-dueRun due invoice expiry and webhook jobs
Responses
Job run summary.
application/json$ref:PaymentJobsSummary/v1/mock-chain/static-wallet-topupsSimulate a static wallet top-up
Request body required
application/json$ref:CreateStaticWalletTopUpRequestResponses
Recorded sandbox static-wallet top-up.
application/json$ref:StaticWalletTopUp/v1/mock-chain/transactionsSimulate an incoming chain transaction
Request body required
application/json$ref:CreateMockChainTransactionRequestResponses
Recorded mock-chain transaction.
application/json$ref:MockChainTransaction