Skip to main content

Point One Percent - Semantic Payment Guardrail for AI Agents. it only takes 0.1% of Hallucination to drain 100% of your wallet.

Project description

Point One Percent (AgentPay)

Point One Percent - Agent Pay

Note: This is the PyPI published documentation. For the full architecture diagrams and real UI screenshots, please visit the GitHub Repository.

Glama MCP score    Point One Percent on Product Hunt

it only takes 0.1% of Hallucination to drain 100% of your wallet.

Point One Percent — live CDP injection demo

Point One Percent is a payment guardrail and one-time flow protocol specifically designed for Agentic AI (e.g., OpenClaw, NemoClaw, Claude Code, OpenHands). It enables agents to handle financial transactions safely without risking unlimited exposure of human-controlled credit cards.

1. The Problem

When Agentic AI encounters a paywall (e.g., domain registration, API credits, compute scaling) during an automated workflow, it is often forced to stop and wait for human intervention. However, providing a physical credit card directly to an agent introduces a "trust crisis": hallucinations or infinite loops could lead to the card being drained.

2. Dual Architecture

Point One Percent is designed with a "Dual Architecture" vision to scale from open-source local experiments to enterprise-grade AI production pipelines.

1. Hacker Edition (BYOC + DOM Injection)

Built for open-source frameworks like OpenClaw and NemoClaw. The agent never receives the true credit card number—it only sees a masked version (`****-4242`). When the agent successfully navigates to a checkout paywall, the PopBrowserInjector attaches to the active Chromium browser via the Chrome DevTools Protocol (CDP). It precisely traverses all cross-origin iframes (like Stripe Elements) and injects the real credentials deep into the DOM form elements, delivering 100% protection against prompt injection or hallucination-driven extractions. Bring Your Own Card (BYOC) locally with absolute peace of mind.

2. Enterprise Edition (Stripe Issuing)

The "North Star" for the broader Agentic SaaS ecosystem. Proving that Point One Percent has the enterprise-grade extensibility required for the real world, it seamlessly connects to verified financial infrastructure. Perfect for platforms building "Agentic Visa" services that programmatically issue real, single-use, burner virtual credit cards (VCCs) via the Stripe API for cloud-hosted AI fleets.


3. Ecosystem Position: Point One Percent + Browser Agents = Unstoppable

Modern agentic workflows require two complementary capabilities. Point One Percent does one, and does it exceptionally well.

What Point One Percent Is — and Isn't

Point One Percent is the agent's financial brain and safe vault. It is responsible for:

  • Evaluating whether a purchase should happen (semantic guardrails)
  • Enforcing hard budget limits (daily cap, per-transaction cap)
  • Issuing one-time virtual cards so real credentials are never exposed
  • Maintaining a full audit trail of every payment attempt

Point One Percent does NOT:

  • Navigate websites or interact with DOM elements
  • Solve CAPTCHAs or bypass bot-detection systems

That's the browser agent's job.

The Handshake: How Point One Percent and Browser Agents Work Together

The real power emerges when Point One Percent is paired with a browser automation agent (e.g., OpenHands, browser-use, Skyvern). The workflow is a clean division of labor:

1. [Browser Agent]  Navigates to a site, scrapes product info, reaches checkout.
        │
        │  (Hit a paywall / payment form)
        ▼
2. [Browser Agent → POP MCP]  Calls request_virtual_card(amount, vendor, reasoning)
        │
        │  (Point One Percent evaluates: budget OK? vendor approved? no hallucination?)
        ▼
3. [POP]  Issues a one-time virtual card (Stripe mode) or mock card (dev mode).
            Full card credentials handled only by the local trusted process —
            never exposed to the agent or LLM context.
        │
        ▼
4. [POP]  Injects real credentials into the checkout form via CDP.
            The agent receives only a transaction confirmation — no card details.
        │
        ▼
5. [Browser Agent]  Clicks the submit button to complete the transaction.
        │
        ▼
6. [The Vault]  Dashboard logs the transaction. Card is immediately burned.

Supported Integrations

Integration path Works with
MCP Tool Claude Code, OpenClaw, NemoClaw, OpenHands, any MCP-compatible host
Python SDK Custom Playwright, browser-use, Skyvern, Selenium, gemini-cli

Any browser-capable agent (Claude Code, OpenClaw, browser-use, Skyvern, etc.) gets full CDP injection — card is auto-filled into the payment form, the agent only ever sees the masked confirmation (****-****-****-4242). See the Integration Guide for setup instructions and System Prompt templates.


4. Installation

Shell note: [...] is special syntax in zsh and bash — always wrap the package name in quotes.

# Core only (keyword guardrail + mock provider, zero external dependencies)
pip install "pop-pay"

# Claude Code / MCP integration
pip install "pop-pay[mcp]"

# Claude Code + CDP injection (BYOC)
pip install "pop-pay[mcp,browser]"

# With LLM-based guardrails (supports OpenAI, Ollama, vLLM, OpenRouter)
pip install "pop-pay[mcp,llm]"

# With Stripe virtual card issuing
pip install "pop-pay[stripe]"

# With LangChain integration
pip install "pop-pay[langchain]"

# Full installation (all features)
pip install "pop-pay[all]"

5. Quick Start for OpenClaw / NemoClaw / Claude Code / OpenHands

If you're using OpenClaw, NemoClaw, Claude Code, OpenHands, or any MCP-compatible agentic framework, you can get Point One Percent running in under 2 minutes:

Step 1: Set Up Environment & Install

# Create a dedicated directory and virtualenv
mkdir ~/pop-pay && cd ~/pop-pay
python3 -m venv .venv && source .venv/bin/activate

# Install — quotes required for zsh/bash
pip install "pop-pay[all]"

Contributing / local development? See CONTRIBUTING.md for the git clone + uv sync path.

Step 1b: Initialize the Credential Vault

v0.6.0+: Credentials are stored in an AES-256-GCM encrypted vault — no plaintext .env required.

pop-init-vault

This will prompt for your card credentials (input is hidden), encrypt them into ~/.config/pop-pay/vault.enc, and securely wipe any existing .env. The MCP server auto-decrypts the vault at startup — no extra steps needed per session.

Passphrase mode (stronger — protects against agents with shell access):

pop-init-vault --passphrase   # one-time setup
pop-unlock                     # run once before each MCP server session

pop-unlock derives the key from your passphrase and stores it in the OS keyring. The MCP server reads it automatically at startup.

Security levels (lowest → highest):

Mode Protects against
.env file (legacy) Nothing — plaintext on disk
Vault, machine key, OSS source File-read agents
Vault, machine key, pip install pop-pay File-read agents + casual shell inspection
Vault + passphrase File-read agents + shell agents
Stripe Issuing (commercial) All local threats — no credentials stored

Policy & non-credential config (allowed vendors, spending limits, CDP URL) is still read from ~/.config/pop-pay/.env. Only card credentials moved to the vault.

Step 2: Launch Chrome & Get MCP Commands

pop-launch --print-mcp

This launches Chrome with CDP enabled and prints the exact claude mcp add commands to run.

Step 3: Add to Claude Code

Choose your platform and follow the dedicated setup guide:

Platform Setup Guide
Claude Code (BYOC + CDP injection, recommended) Integration Guide §1
Python script / gemini-cli Integration Guide §2
Playwright / browser-use / Skyvern Integration Guide §3
OpenClaw / NemoClaw Integration Guide §4
OpenHands Add python -m pop_pay.mcp_server to your mcpServers config

Step 4: Configure Policy

Edit ~/.config/pop-pay/.env (see Step 1b). Key variables:

Variable Default Description
POP_ALLOWED_CATEGORIES ["aws","cloudflare"] Vendors the agent is allowed to pay — see Categories Cookbook
POP_MAX_PER_TX 100.0 Max $ per transaction
POP_MAX_DAILY 500.0 Max $ per day
POP_BLOCK_LOOPS true Block hallucination/retry loops
POP_AUTO_INJECT false Enable CDP card injection
POP_GUARDRAIL_ENGINE keyword Guardrail engine: keyword (zero-cost, default) or llm (semantic, two-layer) — see Guardrail Mode
POP_BILLING_FIRST_NAME / POP_BILLING_LAST_NAME (empty) Auto-fill name fields on checkout pages
POP_BILLING_EMAIL (empty) Auto-fill email
POP_BILLING_PHONE (empty) E.164 format — auto-fill combined phone input
POP_BILLING_PHONE_COUNTRY_CODE (empty) ISO code ("US") or dial prefix ("+1") — fills country code dropdown; national number auto-derived
POP_BILLING_STREET / POP_BILLING_CITY / POP_BILLING_STATE / POP_BILLING_COUNTRY / POP_BILLING_ZIP (empty) Auto-fill address fields; state and country matched fuzzily against dropdown options
POP_ALLOWED_PAYMENT_PROCESSORS [] Extra third-party payment processor domains to trust (pop-pay ships with 20 built-in)

After editing .env, fully close and reopen Claude Code. The MCP server loads configuration at startup — !claude mcp list alone is not sufficient to pick up .env changes.

Guardrail Mode: Keyword vs LLM

Point One Percent ships with two guardrail engines. You switch between them with a single env var:

keyword (default) llm
How it works Blocks requests whose reasoning string contains suspicious keywords (e.g. "retry", "failed again", "ignore previous instructions") Sends the agent's reasoning to an LLM for deep semantic analysis
What it catches Obvious loops, hallucination phrases, prompt injection attempts Subtle off-topic purchases, logical inconsistencies, policy violations that keyword matching misses
Cost Zero — no API calls, instant One LLM call per request_virtual_card invocation
Dependencies None Any OpenAI-compatible endpoint
Best for Development, low-risk workflows, cost-sensitive setups Production, high-value transactions, untrusted agent pipelines

Tip: keyword mode requires no extra config. To enable LLM mode, see the full configuration reference in the Integration Guide §1.

Step 4: Use It

Your agent now has access to two tools:

Tool When to use
request_purchaser_info Billing/contact info page (name, email, phone, address) — no card fields visible yet
request_virtual_card Payment page — card fields are visible. Also fills billing fields if present on the same page.

Single-page checkout (e.g. Wikipedia donate): agent calls only request_virtual_card. Two-page checkout (e.g. billing info → payment): agent calls request_purchaser_info first, then request_virtual_card.

When it encounters a paywall:

Agent: "I need to purchase an API key from AWS for $15 to continue."
[Tool Call] request_virtual_card(amount=15.0, vendor="AWS", reasoning="Need API key for deployment")
[POP] Payment approved. Card Issued: ****4242, Expiry: 12/25, Amount: 15.0
Agent: "Purchase successful, continuing workflow."

If the agent hallucinates or tries to overspend:

Agent: "Let me retry buying compute... the previous attempt failed again."
[Tool Call] request_virtual_card(amount=50.0, vendor="AWS", reasoning="failed again, retry loop")
[POP] Payment rejected. Reason: Hallucination or infinite loop detected in reasoning

6. Core Components

The Vault

A local visualization console powered by Streamlit and SQLite (pop_state.db). The Vault allows humans to:

  • Monitor all issued seals and agent spending activity in real-time.
  • Monitor global budget utilization.
  • Audit rejection logs from semantic guardrails.

The Seal

Virtual, single-use payment credentials with built-in enforcement:

  • Daily Budget Limit Enforcement: Automatically blocks any request that would exceed the predefined daily spending cap.
  • Burn-after-use Interception: Ensures that once a virtual card is used, it is immediately invalidated, preventing replay attacks or unauthorized recurring charges.

Semantic Guardrails

Point One Percent provides two modes of intent evaluation. Both are controlled by POP_GUARDRAIL_ENGINE in your .env (see §5 Step 3 for full configuration).

  1. Keyword mode (POP_GUARDRAIL_ENGINE=keyword, default): The GuardrailEngine scans the agent's reasoning string for suspicious phrases associated with loops or hallucinations (e.g., "retry", "failed again", "ignore previous"). Zero dependencies, zero latency, zero cost. Recommended as the starting point for all setups.

  2. LLM mode (POP_GUARDRAIL_ENGINE=llm): The LLMGuardrailEngine sends the agent's reasoning to an LLM for deep semantic analysis, catching subtler misuse that keyword matching would miss — such as off-topic purchases or logically inconsistent justifications. Supports any OpenAI-compatible endpoint: OpenAI, Ollama (local), vLLM, OpenRouter, and more.

7. Security Statement

Security is a first-class citizen in Point One Percent. The SDK masks card numbers by default (e.g., ****-****-****-4242) when returning authorization results to the agent. This prevents sensitive payment information from leaking into agent chat logs, model context windows, or persistent logs, ensuring that only the execution environment handles the raw credentials.

v0.6.0 defense-in-depth hardening:

Layer Defense
Encrypted vault Card credentials stored as AES-256-GCM ciphertext (vault.enc); plaintext never touches disk after pop-init-vault
Passphrase mode Key derived from user passphrase via PBKDF2 (600k iterations); stored in OS keyring — agents with shell access cannot derive the key
Database SQLite only stores masked card (****-4242); card_number and cvv columns removed entirely
Injection-time TOCTOU guard Domain verified against guardrail-approved vendor at the moment of injection — prevents redirect-to-attacker attacks
Repr redaction VirtualSeal.__repr__ always emits ****-REDACTED; credentials cannot leak via logs or tracebacks
Core dump prevention MCP server disables core dumps at startup (RLIMIT_CORE=0)
Process isolation Agent communicates via MCP JSON-RPC as a separate process — cannot access MCP server memory or env vars through the protocol

See SECURITY.md for the full threat model, red team results, and documented limitations.

8. The Vault Dashboard

The Vault is your real-time monitoring console for all agent payment activity.

Starting the Dashboard

cd Point-One-Percent
uv run streamlit run dashboard/app.py
# Dashboard opens at http://localhost:8501

Dashboard Layout

Section Description
Sidebar: Max Daily Budget slider Adjust the displayed budget cap for visualization (does not affect backend policy — backend policy is configured via env vars or SDK)
Today's Spending Total amount spent by agents today
Remaining Budget How much budget is left for the day
Budget Utilization Visual progress bar showing spend %
Issued Seals & Activity Full table of all payment attempts (approved + rejected) with seal ID, amount, vendor, status, and timestamp
Rejected Summary Filtered view showing only rejected/blocked attempts for quick auditing

Tips

  • Click Refresh Data in the sidebar to pull latest activity from the database.
  • The dashboard reads from pop_state.db — the same database the SDK writes to. Keep both running simultaneously for live monitoring.
  • Each row in the table corresponds to a single request_virtual_card call from an agent.

9. Python SDK Quickstart

Integrate Point One Percent into your custom Python or LangChain workflows in just a few lines:

from pop_pay.client import PopClient
from pop_pay.providers.stripe_mock import MockStripeProvider
from pop_pay.core.models import GuardrailPolicy

# Define your safety policy
policy = GuardrailPolicy(
    allowed_categories=["API", "Cloud", "SaaS"],
    max_amount_per_tx=50.0,
    max_daily_budget=200.0,
    block_hallucination_loops=True
)

# Initialize the client with keyword-only guardrails (default)
client = PopClient(
    provider=MockStripeProvider(),
    policy=policy,
    db_path="pop_state.db"
)

# Use with LangChain Tool
from pop_pay.tools.langchain import PopPaymentTool
tool = PopPaymentTool(client=client, agent_id="agent-01")

For LLM guardrail engine setup and the full provider reference, see Integration Guide §2.


10. Payment Providers: Stripe vs Mock

Without Stripe (Default — Mock Provider)

By default, Point One Percent uses the MockStripeProvider which simulates virtual card issuance. This is perfect for:

  • Development and testing — no real money involved
  • Demo and evaluation — see the full flow without any API keys
  • Hackathons — get a working prototype in minutes

Mock cards are fully functional within the system (budget tracking, burn-after-use, guardrails all work), but they are not real payment instruments.

BYOC — Bring Your Own Card (Hacker Edition)

For developers who want to use their own physical credit card with Point One Percent without a Stripe account. The LocalVaultProvider reads card credentials from environment variables and injects them into browser payment forms via CDP — the raw PAN is never exposed to the agent.

Add to your ~/.config/pop-pay/.env:

POP_BYOC_NUMBER=4111111111111111   # Your real card number
POP_BYOC_CVV=123
POP_BYOC_EXP_MONTH=12              # Expiry month, e.g. 04
POP_BYOC_EXP_YEAR=27               # Expiry year, e.g. 31
POP_AUTO_INJECT=true

Then restart Claude Code. The MCP server will automatically use LocalVaultProvider.

Provider priority (high → low): Stripe Issuing → BYOC Local → Mock.

If POP_STRIPE_KEY is set, Stripe takes precedence. If POP_BYOC_NUMBER is set (but no Stripe key), LocalVaultProvider is used. If neither is set, MockStripeProvider is used for development.

Security note: Never commit real card numbers to version control. Always use .env (which is .gitignored) or a secrets manager. The CDP injection ensures the full card number is only handled by the local trusted process, never by the LLM.

For Python SDK usage of each provider, see Integration Guide §2.

With Real Stripe Issuing

To issue real virtual credit cards through Stripe Issuing:

Prerequisites:

  1. A Stripe account with Issuing enabled (requires application approval)
  2. Your Stripe secret key (sk_live_... or sk_test_...)

Option A: Via Environment Variable (for MCP Server)

export POP_STRIPE_KEY=sk_live_your_stripe_key_here
python -m pop_pay.mcp_server
# The MCP server will automatically use StripeIssuingProvider

What Stripe Issuing does:

  • Creates a real Stripe Cardholder (POP Agent)
  • Issues a virtual card with a spending limit matching the approved amount
  • Returns masked card details (last 4 digits only) to the agent
  • All Stripe errors are caught and returned as rejection reasons

CDP injection limitation with Stripe Issuing: The Stripe Issuing API returns only the last 4 digits of the card number for security reasons. CDP auto-injection (POP_AUTO_INJECT=true) requires the full PAN and therefore does not work with Stripe Issuing. Use BYOC (POP_BYOC_NUMBER) if you need CDP injection; use Stripe Issuing if you need a real card and will handle form submission yourself.

Note: Stripe Issuing is a premium Stripe product that requires approval. For most development and demo use cases, the Mock provider is sufficient.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pop_pay-0.6.16-cp313-cp313-win_amd64.whl (261.9 kB view details)

Uploaded CPython 3.13Windows x86-64

pop_pay-0.6.16-cp313-cp313-win32.whl (233.9 kB view details)

Uploaded CPython 3.13Windows x86

pop_pay-0.6.16-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (659.6 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64manylinux: glibc 2.5+ x86-64

pop_pay-0.6.16-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (631.5 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

pop_pay-0.6.16-cp313-cp313-macosx_11_0_arm64.whl (162.6 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

pop_pay-0.6.16-cp312-cp312-win_amd64.whl (209.3 kB view details)

Uploaded CPython 3.12Windows x86-64

pop_pay-0.6.16-cp312-cp312-win32.whl (180.9 kB view details)

Uploaded CPython 3.12Windows x86

pop_pay-0.6.16-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (504.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64manylinux: glibc 2.5+ x86-64

pop_pay-0.6.16-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (483.4 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

pop_pay-0.6.16-cp312-cp312-macosx_11_0_arm64.whl (135.0 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pop_pay-0.6.16-cp311-cp311-win_amd64.whl (156.1 kB view details)

Uploaded CPython 3.11Windows x86-64

pop_pay-0.6.16-cp311-cp311-win32.whl (127.7 kB view details)

Uploaded CPython 3.11Windows x86

pop_pay-0.6.16-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (342.7 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64manylinux: glibc 2.5+ x86-64

pop_pay-0.6.16-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (329.8 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

pop_pay-0.6.16-cp311-cp311-macosx_11_0_arm64.whl (106.9 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pop_pay-0.6.16-cp310-cp310-win_amd64.whl (103.1 kB view details)

Uploaded CPython 3.10Windows x86-64

pop_pay-0.6.16-cp310-cp310-win32.whl (74.6 kB view details)

Uploaded CPython 3.10Windows x86

pop_pay-0.6.16-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (192.7 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64manylinux: glibc 2.5+ x86-64

pop_pay-0.6.16-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (186.2 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

pop_pay-0.6.16-cp310-cp310-macosx_11_0_arm64.whl (78.8 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file pop_pay-0.6.16-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: pop_pay-0.6.16-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 261.9 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pop_pay-0.6.16-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 dc33b4df87fbf35763511865f38184659d5f11102fe8af97a0c55143605a67e3
MD5 15658ed10d1611aa1d80d08a2923a03e
BLAKE2b-256 9c203d6553c125f72b540ca414fef28cc85c559d662ce8a66ef18efa661ea55c

See more details on using hashes here.

File details

Details for the file pop_pay-0.6.16-cp313-cp313-win32.whl.

File metadata

  • Download URL: pop_pay-0.6.16-cp313-cp313-win32.whl
  • Upload date:
  • Size: 233.9 kB
  • Tags: CPython 3.13, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pop_pay-0.6.16-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 32013cea76a2eccd6949bf129f5ceac6e82bea5e968fa02e14d148eb23936175
MD5 f1b0d0778410bf20b78ebd003b84fc67
BLAKE2b-256 8de4722b3d8196c5d093a1f929a146aec2380e7a7b5ea418f085e86bbdb01278

See more details on using hashes here.

File details

Details for the file pop_pay-0.6.16-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pop_pay-0.6.16-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7100765e7951bf19dafe6261d62b6cf5aa2370d2a811b7c4bb1e06a20e127948
MD5 d16eba2e15142bc790289e58cf83bdd3
BLAKE2b-256 392b75c21fa8bab81398751f635959b12fb1fd0e419978260f52e07f6aa7c4c2

See more details on using hashes here.

File details

Details for the file pop_pay-0.6.16-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for pop_pay-0.6.16-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 39b4e4ee4d3e6ac3bb1a49b4286f6c2211f705f83570af3acf0b5135a403c192
MD5 ab11dc89ba10e48e7a56c6b7e717601d
BLAKE2b-256 cabd7e17c647c2112789c961918f01ecadf8181edb57d9d0d48bd425c6d9fc93

See more details on using hashes here.

File details

Details for the file pop_pay-0.6.16-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pop_pay-0.6.16-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4bdc6b3bd66ce83a1d146c089ca6d554ab59754b0b968430401070f54b6f4a55
MD5 7491716e783e2afe3b86985b1590acc5
BLAKE2b-256 c484a190bf47db84b40dc9b87a974a9beb83fa1c792766a4e2c36fda2aadaa4d

See more details on using hashes here.

File details

Details for the file pop_pay-0.6.16-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: pop_pay-0.6.16-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 209.3 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pop_pay-0.6.16-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 0bc4cf4c276ec5d8f2cb89b9fee4b196ae3686d46bd9baf12468f45a8ed49842
MD5 942913eb99c44feff05b5e47a47bafc8
BLAKE2b-256 d047464a98607e9ec3ed9c5678f264d0f7c8789b4b13e1e6f524beff0af0af37

See more details on using hashes here.

File details

Details for the file pop_pay-0.6.16-cp312-cp312-win32.whl.

File metadata

  • Download URL: pop_pay-0.6.16-cp312-cp312-win32.whl
  • Upload date:
  • Size: 180.9 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pop_pay-0.6.16-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 9d281b7987516d6181e9c6f377a1306153613f4c86e332795fe4b3fbef42489d
MD5 27222c05d54ca858af0f8e3c28fc9c3d
BLAKE2b-256 6b5f74ee300e8ec1cb64e3b90beb153f3d300b47a4d656a1e0719d4a17b70476

See more details on using hashes here.

File details

Details for the file pop_pay-0.6.16-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pop_pay-0.6.16-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5add267a5d40a3c28f07fabe9ad199e888c42c0b41dd15fff48e636f4db98df9
MD5 625c2d12e04c21e00e1f3e9b9b425676
BLAKE2b-256 afe5a64c94e3182de60713d56da9071df963aa8313884618e8e391150f012d04

See more details on using hashes here.

File details

Details for the file pop_pay-0.6.16-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for pop_pay-0.6.16-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 30b27237063ec4ff8cdf906c8e476541cec13242e806ef1a230bd4888ee31a06
MD5 d42ec7442f957971cf7512f38b555f79
BLAKE2b-256 24fe7a5fa21ae9373696e0f9dfbd9ca69d798891d3c919d5833e9c51473900c0

See more details on using hashes here.

File details

Details for the file pop_pay-0.6.16-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pop_pay-0.6.16-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 14c0583c20a7fbed2e60df2696e1857b1c2cf1e847f1940885daf5bf6ecd4a1b
MD5 d0c042eca711fc49c199d3b381d26a09
BLAKE2b-256 420a2946cb42e80d429ff55fadd28d29642b31722bd9c80f998a20f5f37ea65c

See more details on using hashes here.

File details

Details for the file pop_pay-0.6.16-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: pop_pay-0.6.16-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 156.1 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pop_pay-0.6.16-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 ad8fbbb9a2d91b75bcd2846aced413687d229afe3b2bc011b79b65ac96a12da9
MD5 6ace5cc2f5eb5c421c8abdd23b2099be
BLAKE2b-256 05b065ae2bfeb58e072d38cb36e72863dc2ff9d19b5312b1df73ae50616a3e6f

See more details on using hashes here.

File details

Details for the file pop_pay-0.6.16-cp311-cp311-win32.whl.

File metadata

  • Download URL: pop_pay-0.6.16-cp311-cp311-win32.whl
  • Upload date:
  • Size: 127.7 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pop_pay-0.6.16-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 1fd58f100d73673f79269825ad29c81f63b01aa3682be0a8bb16b2d81fad2571
MD5 5cb1cfc211da9deb396c65ba965b678b
BLAKE2b-256 ad4f8ef014ea58e7825d91b742ac0781cc1f49330fda96b8d5f659ed9e8c2cbc

See more details on using hashes here.

File details

Details for the file pop_pay-0.6.16-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pop_pay-0.6.16-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 181d833b5b63b06151bc62825808f9eb49c0ba9797612a536732394af9fbffed
MD5 0ffa0b9198690d93f1d78baf025bc762
BLAKE2b-256 d9cfd00b654ec5f3eabf290d61f15523642e80373bd0d4da4b7b316433a73bff

See more details on using hashes here.

File details

Details for the file pop_pay-0.6.16-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for pop_pay-0.6.16-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 9c6a56ee82010c42b883b963be0a5c0a3946ea06a789de84b804dcf714b9dad5
MD5 f2e592738828015d5b612ba17a84ebed
BLAKE2b-256 0505eaac92dd182631f54db7a8d1734f75798cb1d8015c7d44fa020b05b380ec

See more details on using hashes here.

File details

Details for the file pop_pay-0.6.16-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pop_pay-0.6.16-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 af0fd22f1d7837d2af5c599c6fa8b202c981de33a2a386aa719cb7178d1a600e
MD5 3a8fd92d1d8746f436014ee0dc6651ff
BLAKE2b-256 aea61163064d612b173d828e835284440716f5f769adf9f15f4e8456be1f6a22

See more details on using hashes here.

File details

Details for the file pop_pay-0.6.16-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: pop_pay-0.6.16-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 103.1 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pop_pay-0.6.16-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 ef5dd54ff022a5db9fd043f5945030bae774dbe95f2ed8c7ddff4abd69191a0a
MD5 128eb787a8fe362e41a7b901a0146be9
BLAKE2b-256 67e10e40927f6857554bc2ce133e3e5a3eb42b4eaa84cbb223174a1c1aadfc27

See more details on using hashes here.

File details

Details for the file pop_pay-0.6.16-cp310-cp310-win32.whl.

File metadata

  • Download URL: pop_pay-0.6.16-cp310-cp310-win32.whl
  • Upload date:
  • Size: 74.6 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pop_pay-0.6.16-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 07f7cb6c3478559dc21fcc8a7bd04a882cd83c144039672e990d0b2a8f3cd0b3
MD5 6774323ac19147b7be5425a85d9ab762
BLAKE2b-256 65f688e77d83d649bc704ad6d016c128344d78e6abd1c7157533e2499e8b9495

See more details on using hashes here.

File details

Details for the file pop_pay-0.6.16-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pop_pay-0.6.16-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ad3513e66047c9ba6c70debbc494c7d8984c691fd96be26f61e39fef9b2d26ac
MD5 6a6d88568f4c7886a8ff7f7c3ddfcf37
BLAKE2b-256 d2bcdcdb570399ceb70904551a35169958385bc99ef9a71cb4614b7aba001b7f

See more details on using hashes here.

File details

Details for the file pop_pay-0.6.16-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for pop_pay-0.6.16-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 55dc36b3661f2fc098d0bed763c4bd05bbf72ab72b59aaa060aa2ef4f0376951
MD5 1c491ab1f51ad13bf673807ae0213f07
BLAKE2b-256 552bcd4e086b24cec53e4520352bbd573e5bec32b9acef29be6e972e14036dfe

See more details on using hashes here.

File details

Details for the file pop_pay-0.6.16-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pop_pay-0.6.16-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e2ddde57d2cbc810c971fb7943350cf9e9e70e09ac64c7984cd9e975554ae81e
MD5 af9408d03e99a6ba819d1f7aa3b290d9
BLAKE2b-256 48a90bd48f5f79a5e8dfcaf3517f57a657cd3026b03c1c94d518687d7da60067

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page