snaplii-cli
Command-line client for Snaplii Agent-to-Merchant (A2M) payments. It lets AI agents and scripts buy gift cards from 500+ brands, pay bills, and send P2P transfers — all from a prepaid Snaplii Cash balance, with cashback on every purchase and no checkout or card sharing.
Every command prints JSON, so any agent that can run a shell command can use it.
Requirements
- Python 3.9+
- A Snaplii account and API key. In the Snaplii app (iOS / Android) go to More → Payment Methods → AI Payment Management → + New API Key, choose a scope, and set a hard spending limit. The key is shown once.
Install
From PyPI, isolated with pipx (recommended):
pipx install snaplii-cli
From a checkout of the repository:
pipx install -e ./snaplii-cli
Plain pip install snaplii-cli also works. OS-specific pipx setup and troubleshooting are in the repository README.
Authenticate
snaplii init
Prompts for your API key with hidden input. The key is exchanged for a session token and never stored; the token is kept in your OS keychain when one is available.
Usage
# Gift cards
snaplii browse tags # categories and brands for your account's country
snaplii browse brand --id CB... # denominations and cashback
snaplii balance --country CA # spendable Snaplii Cash (CA=CAD, US=USD)
snaplii quote --item-id CB...-CT... --price 50 # price after voucher/cashback
snaplii purchase --item-id CB...-CT... --price 50 # buy; pays from Snaplii Cash
snaplii giftcard list # owned cards
# Bill pay
snaplii billpay payees
snaplii billpay save --payee-code PE... --first-name Alex --last-name Chen --amount 75.25 --account 1234567890
snaplii billpay quote --pay-code PC... --price 75.25
snaplii billpay pay --pay-code PC... --price 75.25
# P2P transfer (API key scope P2P or ALL)
snaplii transfer create --to-phone 4165550006 --amount 12.50
snaplii transfer status --order-no ZZ... --wait --timeout 330
snaplii transfer list
--item-idis{cardBrandId}-{cardTemplateId}; both come fromsnaplii browse brand.- Bill pay flow:
payees → detail → save (returns payCode) → quote → pay → result. - A new transfer stays cancellable (
transfer cancel) for about 5 minutes, then sends automatically;transfer finishsends it immediately.transfer status --waitpolls for the outcome, but its--timeoutdefaults to 120s — pass a larger value (e.g.--timeout 330) to poll through the whole cancellable window. snaplii helpandsnaplii <command> --helplist every flag.
Commands
| Group | Commands |
|---|---|
| Auth & config | init, config show, config set --base-url URL, config clear |
| Catalog | browse tags, browse brand --id ID |
| Balance & quotes | balance [--country CA|US], quote --item-id ID --price P |
| Purchases | purchase --item-id ID --price P, giftcard list, giftcard detail --card-no NO |
| Smart | smart cashback --brand-id ID --amount A, smart dashboard |
| Bill pay | billpay payees, billpay detail, billpay save, billpay vouchers, billpay quote, billpay pay, billpay result, billpay history |
| Transfers | transfer create, transfer cancel, transfer finish, transfer status [--wait] [--timeout S], transfer list |
| Maintenance | update, help |
Safety model
Spending draws only from the prepaid Snaplii Cash balance and is capped by the per-key limit set in the app. Keys are scoped and can be revoked at any time from the app.
More
- Full documentation, MCP server, and agent skills: https://github.com/Snaplii-Inc/agent-to-merchant-payments
- Changelog: https://github.com/Snaplii-Inc/agent-to-merchant-payments/blob/main/CHANGELOG.md
- Issues: https://github.com/Snaplii-Inc/agent-to-merchant-payments/issues
License
Apache License 2.0
Release files for snaplii-cli 0.15.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| snaplii_cli-0.15.0.tar.gz | 29.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| snaplii_cli-0.15.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 67.8 kB
Release files / snaplii_cli-0.15.0.tar.gz
| Download URL | snaplii_cli-0.15.0.tar.gz |
|---|---|
| Size | 29.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
449f2a805c13caf878ca37acbc6fde2b466f604c1d13cf054f4d621a6db2f9be
|
|
BLAKE2b-256 checksum How to use checksums |
7ee62520ab48df6c7967c5d243d076863e5d96426f30e2c6c25fa5b16cf33479
|
| 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 2, 2026.
Transparency logRelease files / snaplii_cli-0.15.0-py3-none-any.whl
| Download URL | snaplii_cli-0.15.0-py3-none-any.whl |
|---|---|
| Size | 38.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
570269a7a68b8faa5fef211f3a943cee6190738f9882be1158e0a27f711198fb
|
|
BLAKE2b-256 checksum How to use checksums |
30c8816a90278d23a62ca3de79ef7a888933006acb3a822e93f2d8ddc0b61b9a
|
| 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 2, 2026.
Transparency log