=== Shieldz - Non-custodial Crypto Payments ===
Contributors: shieldzcash
Tags: woocommerce, cryptocurrency, bitcoin, payment gateway, non-custodial
Requires at least: 5.6
Tested up to: 7.0
Requires PHP: 7.2
Stable tag: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Accept Bitcoin, USDC/USDT and shielded Zcash with 0% platform fees. Non-custodial: payments settle straight to your own wallet. Keyless setup.

== Description ==

Shieldz is a **non-custodial crypto payment gateway** for WooCommerce, Easy Digital Downloads and GiveWP. Your customer pays to an address that belongs to **you**, Shieldz watches the blockchain and confirms the payment, and the money settles straight to your own wallet. The gateway never holds your funds, so there is nothing to freeze and nothing to skim.

= Start in two minutes, no account needed =

Shieldz has a **keyless mode**: paste your own wallet address, and you are ready to accept crypto. No signup, no API key, no dashboard. This is the fastest way to add crypto to a store.

Prefer a full account? Switch to **API key mode** to also accept Bitcoin and shielded Zcash and get HMAC-signed webhooks.

= Why Shieldz =

* **0% platform fee.** You pay only the blockchain network fee, never a percentage of sales.
* **Non-custodial.** Funds go directly to your wallet, never ours. We only ever hold a public key, so we cannot freeze, hold, or seize your money.
* **No KYC to start.**
* **Accept Bitcoin, USDC and USDT** across Base, Arbitrum, Optimism, Polygon and Ethereum, plus **shielded Zcash** for real privacy.
* **Modern + classic checkout.** Full support for the WooCommerce Cart/Checkout Blocks and the classic shortcode checkout, and HPOS (High-Performance Order Storage).
* **One plugin, many platforms.** WooCommerce, Easy Digital Downloads and GiveWP donations, all from the same install.

= How it works =

1. A buyer chooses "Crypto" at checkout.
2. Shieldz creates a hosted checkout and sends the buyer there to pay.
3. When the payment confirms on-chain, the order is marked paid, in API key mode via a signed webhook, in keyless mode via a status check when the buyer returns and a background poll.

Learn more at [shieldz.cash](https://shieldz.cash) and read the API docs at [shieldz.cash/docs](https://shieldz.cash/docs).

== External services ==

This plugin connects to external services to create hosted crypto checkouts and to confirm payments. It does not load any third-party scripts on your store front-end.

**1. Shieldz API (https://shieldz.cash)** — required for the plugin to work.
When a buyer starts a crypto payment, the plugin sends the Shieldz API the order total (converted to USD), an order reference, and, in API key mode, the buyer's email address, so a hosted checkout can be created and the resulting payment can be reconciled with the order. In API key mode the plugin also registers a webhook URL so Shieldz can notify your site when a payment settles. Terms: https://shieldz.cash/terms . Privacy policy: https://shieldz.cash/privacy .

**2. Frankfurter currency API (https://api.frankfurter.app)** — used only when your store currency is not USD.
The Shieldz invoice API works in USD, so if your store uses another currency the plugin asks this free, no-key exchange-rate service to convert the amount. Only the two currency codes (for example "EUR" and "USD") are sent, never any order or personal data. About: https://frankfurter.dev . The result is cached for one hour.

== Installation ==

1. Upload the plugin to `wp-content/plugins/` and activate it, or install it from the Plugins screen.
2. Go to **WooCommerce > Settings > Payments** and enable **Shieldz**.
3. Pick a setup mode:
   * **Keyless (recommended):** paste your own 0x wallet address and choose a chain (Base, Arbitrum, Optimism, Polygon or Ethereum) and asset (USDC or USDT). Done.
   * **API key:** paste your `sk_live_` or `sk_test_` key from your Shieldz dashboard. On an HTTPS site the payment webhook is registered automatically.
4. Save. Crypto now appears at checkout.

For Easy Digital Downloads or GiveWP, activate the plugin and set your Shieldz API key under that plugin's gateway settings.

== Frequently Asked Questions ==

= Is it really non-custodial? =
Yes. Payments settle to a wallet or address you control. Shieldz only ever holds a public key, so it can watch for payments but can never spend, freeze, or seize them.

= Do I need an account? =
No. In keyless mode you only paste a wallet address. An account (API key) is optional and unlocks Bitcoin, shielded Zcash and signed webhooks.

= What are the fees? =
0% platform fee. You pay only the blockchain network fee.

= Which coins can I accept? =
USDC and USDT on Base, Arbitrum, Optimism, Polygon and Ethereum in every mode. Bitcoin and shielded Zcash are available in API key mode.

= Does it work with the block checkout and HPOS? =
Yes, both the WooCommerce Cart/Checkout Blocks and the classic checkout, and High-Performance Order Storage.

= My store is on HTTP, not HTTPS. =
Payments still work, but automatic webhooks require HTTPS. On an HTTP site orders are confirmed when the buyer returns and by a background check. HTTPS is strongly recommended.

== Screenshots ==

1. The crypto payment option on the WooCommerce block checkout.
2. The hosted Shieldz checkout the buyer is sent to.
3. The order confirmed and marked paid after payment.

== Changelog ==

= 1.0.0 =
* Initial release.
* WooCommerce gateway with keyless (wallet-address) and API key modes.
* Cart/Checkout Blocks support and HPOS compatibility.
* Easy Digital Downloads and GiveWP integrations.
* Signed webhook receiver with replay protection, plus a return-page and background poller fallback.

== Upgrade Notice ==

= 1.0.0 =
First public release.
