Skip to main content

xrpl-mpp-facilitator

Authenticated FastAPI facilitator for Ripple-compatible XRPL MPP charge and PaymentChannel verification.

pip install xrpl-mpp-facilitator
xrpl-mpp-facilitator --help
xrpl-mpp-facilitator --reload

Entry point: xrpl_mpp_facilitator.main:app

Factory: xrpl_mpp_facilitator.factory:create_app

Endpoints:

  • GET /health
  • GET /supported
  • POST /charge
  • POST /session

Charge credentials may contain a signed transaction blob or a submitted transaction hash. The service enforces exact XRPL fields, named network, source DID, invoice, freshness, successful settlement, and replay protection. Session credentials use PaymentChannel open, cumulative voucher, and close actions with atomic high-water state.

Configure gateway bearer authentication, Redis, XRPL RPC, destination, challenge keys, allowlists, and validated settlement before starting. Never expose payment endpoints without gateway authentication. XRPL_RPC_URL requires HTTPS; local rippled development may explicitly set ALLOW_INSECURE_XRPL_RPC=true only with a localhost/loopback HTTP URL.

PAYCHANNEL_PAYER_PUBLIC_KEY enables and restricts session verification. The service can import a matching externally opened channel and notices a validated out-of-band PaymentChannelFund increase before accepting a later voucher. PAYCHANNEL_SETTLEMENT_MARGIN_SECONDS rejects claims too close to an on-ledger expiry/close deadline.

MPP close is a final voucher, not an on-ledger channel close. An optional recipient signer lets the facilitator redeem that cumulative claim and wait for validation; PAYCHANNEL_RECIPIENT_SEED is the built-in local adapter. Recipient redemption does not set tfClose, refund unused XRP, or delete the channel. Without a recipient signer, the MPP session is still finalized and its voucher is retained for a separate redemption workflow.

Applications that construct XRPLService directly can inject a RecipientSigner backed by a KMS, HSM, Vault, or remote signer instead of placing a seed in the facilitator process. The complete claim is prepared by the facilitator; signer responses that change any field or add tfClose are rejected. LocalSeedRecipientSigner is the adapter used by PAYCHANNEL_RECIPIENT_SEED.

Set PAYCHANNEL_REDEEM_INTERVAL_SECONDS above zero to enable the bounded background redemption sweep. It uses a per-channel Redis lease across replicas, processes at most PAYCHANNEL_REDEEM_BATCH_SIZE records per interval, and caps recipient claim fees. PAYCHANNEL_IDLE_CLOSE_SECONDS additionally finalizes inactive MPP sessions after redeeming their latest claim. “Idle close” is a durable application-state transition only; the recipient transaction never sets XRPL tfClose.

Documentation: https://lgcarrier.github.io/xrpl-mpp-stack/packages/facilitator/

Metadata

Release files for xrpl-mpp-facilitator 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for xrpl-mpp-facilitator 0.2.0
File Size Uploaded Provenance Actions
xrpl_mpp_facilitator-0.2.0.tar.gz 35.3 kB With provenance Details for xrpl_mpp_facilitator-0.2.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for xrpl-mpp-facilitator 0.2.0
File Interpreter ABI Platform Actions
xrpl_mpp_facilitator-0.2.0-py3-none-any.whl Python 3 none any Details for xrpl_mpp_facilitator-0.2.0-py3-none-any.whl

Total release size: 78.4 kB

Release files / xrpl_mpp_facilitator-0.2.0.tar.gz

Download URL xrpl_mpp_facilitator-0.2.0.tar.gz
Size 35.3 kB
Tags Source
SHA-256 checksum
How to use checksums
0a3117c93d4d7dc33a7411fa0ae354e2305452b274aa883cb13a7e329506a69b
BLAKE2b-256 checksum
How to use checksums
9d0081aa59936f90657fe5244c3468ad50d3e277df2b545aa02750c9cc834a8a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 3, 2026.

Transparency log

Release files / xrpl_mpp_facilitator-0.2.0-py3-none-any.whl

Download URL xrpl_mpp_facilitator-0.2.0-py3-none-any.whl
Size 43.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
aa8737bed26db5493d5a8d3c4de5980920da2290cd6f119bd08e02a272f81d31
BLAKE2b-256 checksum
How to use checksums
4172b20bc3975e3aa4c4cbf0fe80aa469cc9016e2ffeeac6c275d5f92fccbbc3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 3, 2026.

Transparency log

Security for xrpl-mpp-facilitator 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for xrpl_mpp_facilitator-0.2.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 3, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page