A U.CASH Pay payment app for Ecwid. Shoppers pay with crypto or card at the hosted checkout; a verified webhook completes the Ecwid order. Non-custodial.
Status: scaffold. Ecwid's payment-app install flow (OAuth, payment-method registration, order object shape) is version/platform-specific. Wire up the OAuth token store + the Ecwid
PUT /orders/{id}call noted inindex.js, then validate in the Ecwid dev sandbox before submitting to the App Market.
GET /pay- Ecwid opens this at checkout; the app redirects the shopper to a hosted U.CASH Pay checkout for the order.POST /ucashpay/webhook- receives the U.CASH Pay settlement webhook, verifies theX-Webhook-Signature(HMAC-SHA256, 300s window), and marks the Ecwid order PAID (implement the Ecwid API call in the handler).
npm install
UCASH_CLOUD_TOKEN=st_your_store_cloud_token \
UCASH_WEBHOOK_SECRET=your_store_webhook_secret \
PORT=3000 \
npm startHost it on a public HTTPS endpoint. Register it as an Ecwid app (Dev → My Apps), add it as a payment app, and point the payment URL to https://your-host/pay.
- Sign up at pay.u.cash, verify your email.
- Set your receive addresses under Settings → Addresses (a wallet per coin, or ENS/Unstoppable/FIO names).
- Create a store at Account → Stores → + Add Store.
- Copy the Store Cloud Token + Store Webhook Secret (store-level, not account-wide).
- Set the webhook URL in pay.u.cash to
https://your-host/ucashpay/webhook, then Test Webhook.
Listing is via the Ecwid App Market submission (partner review) - outside this repo.
MIT.