Malli value objects for the storefront domain.
Single source for m/=> contracts and schema-driven test synthesis. Nothing
here names a payment provider: a rail is identified by a keyword the registry
knows, so adding one never edits this namespace.
Malli value objects for the storefront domain. Single source for `m/=>` contracts and schema-driven test synthesis. Nothing here names a payment provider: a rail is identified by a keyword the registry knows, so adding one never edits this namespace.
What a rail hands back so the customer can complete payment.
:handle/pay-to is an address to send to; :handle/redirect-url a hosted
page to visit. A rail supplies whichever it has, and both may be present.
What a rail hands back so the customer can complete payment. `:handle/pay-to` is an address to send to; `:handle/redirect-url` a hosted page to visit. A rail supplies whichever it has, and both may be present.
What a rail needs to open a payment. :charge/amount is the amount locked
for this invoice, in the rail's own currency.
What a rail needs to open a payment. `:charge/amount` is the amount locked for this invoice, in the rail's own currency.
(check! schema value)(check! schema value ctx)value when it satisfies schema.
Throws ExceptionInfo (:monero-store/error :schema-violation) carrying a
humanized explanation merged with ctx otherwise.
`value` when it satisfies `schema`. Throws ExceptionInfo (`:monero-store/error :schema-violation`) carrying a humanized explanation merged with `ctx` otherwise.
One hosted checkout as its processor reports it. The unit of evidence a processor rail settles from.
:checkout/status is the session's own lifecycle (open, complete, expired)
and :checkout/payment-status whether the money arrived; a session can be
complete without being paid.
One hosted checkout as its processor reports it. The unit of evidence a processor rail settles from. `:checkout/status` is the session's own lifecycle (open, complete, expired) and `:checkout/payment-status` whether the money arrived; a session can be complete without being paid.
A CheckoutState ADT value. Its variants come from the sum, as above.
A CheckoutState ADT value. Its variants come from the sum, as above.
A currency the registry knows. Unregistered ids are not money.
A currency the registry knows. Unregistered ids are not money.
Whoever is paying. :customer/ref is the id the host application knows them
by; this store never authenticates anyone itself.
Whoever is paying. `:customer/ref` is the id the host application knows them by; this store never authenticates anyone itself.
A service the store must be able to reach to settle through it.
A service the store must be able to reach to settle through it.
What the host application was told to hand over, and when.
What the host application was told to hand over, and when.
A payment opened for one item.
The quote keys are present only when the amount was converted from the item's stored price: they record the rate that was locked, who agreed it, and when the lock lapses.
A payment opened for one item. The quote keys are present only when the amount was converted from the item's stored price: they record the rate that was locked, who agreed it, and when the lock lapses.
One sellable thing. :item/metadata is the host application's — this store
stores it, correlates on it, and never reads it.
One sellable thing. `:item/metadata` is the host application's — this store stores it, correlates on it, and never reads it.
(money currency amount)Money of amount minor units in currency, at that currency's scale.
Throws ExceptionInfo for an unregistered currency, or when the result does not satisfy Money.
Money of `amount` minor units in `currency`, at that currency's scale. Throws ExceptionInfo for an unregistered currency, or when the result does not satisfy Money.
An exact amount of one currency: :money/amount integer minor units at
:money/scale decimal places. Scale is the currency's, never the caller's.
An exact amount of one currency: `:money/amount` integer minor units at `:money/scale` decimal places. Scale is the currency's, never the caller's.
[base quote]. A price on this pair is how many quote minor-unit-free units
one whole base unit costs.
[base quote]. A price on this pair is how many `quote` minor-unit-free units one whole `base` unit costs.
One observed movement of money against one invoice, recorded once.
One observed movement of money against one invoice, recorded once.
What the store was able to do with an observed movement of money.
What the store was able to do with an observed movement of money.
How long one purchase of a recurring item lasts. :once never renews.
How long one purchase of a recurring item lasts. `:once` never renews.
Id of a registered payment rail. Deliberately open: a new rail is a registry entry, not an edit to this enum.
Id of a registered payment rail. Deliberately open: a new rail is a registry entry, not an edit to this enum.
Measured, swappable behaviour of a payment rail. The DIP swap point.
:provider/settlement-poll? says whether the rail can be asked, unprompted,
what it has seen — a rail with no way to call the store must be polled or it
never settles at all. :provider/webhook-auth says how, if at all, a notice
it posts can be authenticated.
Measured, swappable behaviour of a payment rail. The DIP swap point. `:provider/settlement-poll?` says whether the rail can be asked, unprompted, what it has seen — a rail with no way to call the store must be polled or it never settles at all. `:provider/webhook-auth` says how, if at all, a notice it posts can be authenticated.
A stored price converted to another currency and locked for one invoice.
:quote/sources names every source that agreed the rate, so a past charge
stays auditable after the sources have moved on.
A stored price converted to another currency and locked for one invoice. `:quote/sources` names every source that agreed the rate, so a past charge stays auditable after the sources have moved on.
One source's price for one pair, as that source reported it.
One source's price for one pair, as that source reported it.
Id of an independent price source.
Id of an independent price source.
A Reachability ADT value. Variants are read off the sum itself.
A Reachability ADT value. Variants are read off the sum itself.
What one probe of one endpoint found.
What one probe of one endpoint found.
One round of probes over every endpoint a deployment must reach.
One round of probes over every endpoint a deployment must reach.
Normalized result of interpreting what a rail has seen.
:settlement/references names the individual movements behind the amount.
:settlement/suspect? says a movement was seen and rejected; it contributes
no funds, and a rail that cannot observe such a thing omits the key.
Normalized result of interpreting what a rail has seen. `:settlement/references` names the individual movements behind the amount. `:settlement/suspect?` says a movement was seen and rejected; it contributes no funds, and a rail that cannot observe such a thing omits the key.
A SettlementOutcome ADT value. Variants are read off the sum itself.
A SettlementOutcome ADT value. Variants are read off the sum itself.
An address opened for one invoice.
An address opened for one invoice.
What a wallet reports for one address at a point in time. The unit of evidence a chain rail settles from.
:wallet/unlocked-amount is the wallet's own view of what is spendable; a
wallet more permissive than this store's confirmation policy can never widen
the gate, so the two are taken together and the smaller wins.
What a wallet reports for one address at a point in time. The unit of evidence a chain rail settles from. `:wallet/unlocked-amount` is the wallet's own view of what is spendable; a wallet more permissive than this store's confirmation policy can never widen the gate, so the two are taken together and the smaller wins.
One incoming transfer a wallet has seen for an address.
One incoming transfer a wallet has seen for an address.
A settlement notice as received at the HTTP boundary.
A settlement notice as received at the HTTP boundary.
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |