=== SkinsFlow for Easy Digital Downloads ===
Contributors: skinsflow
Tags: payments, skins, cs2, steam, easy digital downloads
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
Stable tag: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Let customers pay with CS2, Dota 2 and Rust skins in Easy Digital Downloads. The value lands on your SkinsFlow balance in USD.

== Description ==

SkinsFlow adds "Pay with skins (CS2, Dota 2, Rust)" to your Easy Digital Downloads checkout. Customers pick items from their Steam inventory, accept one Steam trade, and you get the value on your SkinsFlow balance in USD.

* Orders complete on their own when the payment is confirmed by a signed webhook.
* Steam Trade Protection handled: protected payments wait as "Processing" until they settle.
* Test mode with your test API secret (also on while the store is in test mode).
* Works with Easy Digital Downloads 3.x (and 2.11+).

You need a SkinsFlow account and a project: https://dashboard.skinsflow.com

== Installation ==

1. Plugins > Add New > Upload Plugin, choose skinsflow-easy-digital-downloads.zip, then Activate.
2. Downloads > Settings > Payments > SkinsFlow.
3. Paste your project's Client ID, API secret, test secret and webhook signing secret (SkinsFlow dashboard > Projects & API keys) and save.
4. In the SkinsFlow dashboard, set your project's webhook URL to the address shown at the top of the settings: https://your-store.example/wp-json/skinsflow/v1/webhook
5. Downloads > Settings > Payments > General: tick "SkinsFlow (pay with skins)" under Active Gateways and save.
6. Place a small order with test mode on, then turn test mode off.

== Frequently Asked Questions ==

= Which currencies work? =

The ones SkinsFlow supports at checkout (USD, EUR and more). For other store currencies fill in "USD rate" so totals can be converted to USD. Your SkinsFlow balance is always in USD.

= When is an order marked as complete? =

When SkinsFlow confirms the payment: the plugin checks the webhook signature and reads the payment again from the SkinsFlow API before it changes the order. A customer's browser can never complete an order.

= What does "Processing" mean? =

Steam can hold traded items for several days (Trade Protection) and return them to the customer in that window. Those orders wait as Processing and complete on their own when the hold ends (within about 8 days). You can release a payment early in your SkinsFlow dashboard.

= How does test mode work? =

Turn on Test mode (or put the whole store in test mode) and paste your test API secret (sk_test_…). No real items or money move; order notes start with [Test].

== External services ==

This plugin connects to SkinsFlow (operated by Skinsflow Limited) to take payments:

* api.skinsflow.com — to create and read payments when a customer checks out with skins, and to list supported currencies. The order number, order total, currency and your store's return URLs are sent.
* pay.skinsflow.com — the checkout page your customers are sent to.

Terms: https://skinsflow.com/legal/terms · Privacy: https://skinsflow.com/legal/privacy

== Changelog ==

= 1.0.0 =
* First release.
