API reference · Direct recharge

Get my direct recharges

GET/v1/wallets/{walletId}/direct-recharges

Find this application's operations in an authorized wallet by status and date.

Permissiondirect_recharges:read
AuthenticationSigned read
Anis’s answerNot signed
Staff-set limits it counts towardAll requests
.NET SDKanis.DirectRecharges.GetDirectRechargesAsync(walletId, query)
  • Only your application's operations in this authorized wallet are returned, newest first. Filters combine: status (awaitingPayment|paymentFailed|pending|inProgress|suspendedDataError|completed|rejectedAwaitingRefund|rejectedWithRefund), productId UUID, from/to in UTC, cursor (at most 2048 characters), and optional pageSize (default 50, range 1–100). Request at most 31 days; absent dates select the last 31 days. Pass nextCursor unchanged with the same filters and page size until it is null. Correct filters or the cursor after validation_failed (422); never repeat a purchase to recover a list.
  • Statuses match the signed detail read; hasPartialRefund records partial refunds without adding a status. Recipient fields and proof remain on the signed detail read. This list never returns a processing 202.

Parameters

NameInTypeNotes
walletIdrequiredpathUUIDA UUID, lower-case with hyphens.
statusoptionalqueryDirectRechargeStatusOptional merged status: awaitingPayment, paymentFailed, pending, inProgress, suspendedDataError, completed, rejectedAwaitingRefund or rejectedWithRefund.
productIdoptionalqueryUUIDOptional direct recharge product UUID filter.
fromoptionalquerystringOptional inclusive UTC period bound; request at most 31 days. Absent bounds select the last 31 days.
tooptionalquerystringOptional inclusive UTC period bound; request at most 31 days. Absent bounds select the last 31 days.
cursoroptionalquerystringThe nextCursor of the previous page, passed back exactly as received. Leave it out for the first page.
pageSizeoptionalqueryintegerOptional page size from 1 to 100; default 50.

Request

Signed with your key. No body, no nonce.

Headers: Signature-Input, Signature, X-Anis-Date, Accept-Language (optional). The SDKs set all of them for you.

Body: none.

Responses

StatusMeaningBody
200Success.DirectRechargeCollection
400Refused: the signed request is badly built.Problem
401Refused: not authenticated.Problem
403Refused: not allowed.Problem
404Refused: not found, or not yours.Problem
422Refused: the request breaks a rule.Problem
429Refused: a limit was reached.Problem
503No decision: a dependency was unavailable.Problem

The answers of this call are not signed — no Signature or Signature-Input header, success or refusal. There is nothing to verify; TLS protects them. Content-Digest and X-Request-Id are still present.

Refusals

A refusal of this call is a problem without a signature. Branch on its code; each links to what it means and what to do.

ErrorCodeStatus
Invalid credentialsinvalid_credentials401
Malformed signed requestmalformed_signed_request400
Insufficient scopeinsufficient_scope403
Source address not allowedsource_ip_not_allowed403
Rate limitedrate_limited429
Validation failedvalidation_failed422
Service unavailabledependency_unavailable503
Request timeoutrequest_timeout504
Internal errorinternal_error500
Account not authorisedbinding_not_authorized403
Account inactiveaccount_inactive403
Wallet not grantedwallet_not_granted404
Not foundresource_not_found404
Currency not supportedcurrency_not_supported422

Types

DirectRechargeCollection

FieldTypeNotes
itemsalways presentlist of DirectRechargeSummaryThe records on this page.
nextCursoralways presentstringPass this opaque value unchanged as cursor; null marks the last page.

DirectRechargeSummary

FieldTypeNotes
operationIdalways presentUUIDThe same UUID sent as Idempotency-Key for this purchase.
statusalways presentDirectRechargeStatusThe merged customer-facing status; partial refunds add amounts rather than a new status.
numberalways presentintegerThe recorded direct recharge number.
productalways presentDirectRechargeProductReferenceThe purchased direct recharge product's id and title.
payoutalways presentDirectRechargePayoutThe payout string and named currency; not the LYD Money shape.
totalalways presentMoneyThe total wallet cost, as LYD Money. The balance check is exact up to 999,999.999 LYD.
externalReferencestringYour reference, included when supplied.
requestedAtalways presentstring (date-time)When the direct recharge was requested, in UTC.
completedAtstring (date-time)The completion time when supplied, in UTC.
hasPartialRefundalways presentbooleanWhether a settled partial refund exists, including false; it does not add a new status.

DirectRechargeStatus

DirectRechargeProductReference

FieldTypeNotes
idalways presentUUIDThe selected direct recharge product id.
titlealways presentstringThe direct recharge product's display text.

DirectRechargePayout

FieldTypeNotes
amountalways presentstringThe payout amount as a decimal string.
currencyalways presentDirectRechargeCurrencyThe payout currency display name object.

DirectRechargeCurrency

FieldTypeNotes
namealways presentstringThe display name supplied for this item.

Money

FieldTypeNotes
amountalways presentstringA decimal string, never a JSON number. Wallet balances may be negative while allowed debt is used. Prices and totals follow each route's amount rules.
currencyalways presentstringAn uppercase three-letter currency code, such as LYD. Read a wallet’s currency from balance.currency.
asOfstring (date-time)When this price or balance was read.