Magento 2
Adds Stores → Configuration → Deakee → Loyalty. Earn fires via a `sales_order_save_after` observer and updates the plugin's own DB tables. Customer account dashboard adds "My Deakee Wallet" with withdraw/deposit controls.
composer require deakee/loyalty-magento2Two integration modes
The same plugin code supports both modes. Start in OAuth2 mode today; layer in the bridge later as a config flip — no data migration.
Centralized loyalty in your DB synced to Deakee via OAuth2. No chain, no exchange — but customers see balances in Deakee and you can accept Deakee vouchers.
- Works against today's deakee.com/api/oauth/* backend.
- No tokens, no legal exposure as an issuer.
- Upgrades to bridge mode in one config flip.
Deploy an ERC-8063 contract; customers can mint centralized balance to on-chain tokens and trade them on the Deakee exchange.
- Adds exchange listing and cross-brand redemption.
- Requires the Deakee relayer (not yet shipped).
- Same plugin code as OAuth2 mode — opt in when ready.
Install
- composer require deakee/loyalty-magento2
- bin/magento module:enable Deakee_Loyalty && bin/magento setup:upgrade
- Stores → Configuration → Deakee → Loyalty — set earn rate, paste API key.
- Click "Deploy My Token" (one-time ERC-8063 deployment).
- Done — earn is centralized, bridge is user-initiated.
How Deakee connects to your plugin
Your partner API key authenticates calls to the Deakee relayer. The OAuth2 authorize/token URLs are used once per customer to fetch the wallet address (scope: identity only).
| authorize_url | https://deakee.com/oauth2/authorize (scope=identity) |
| token_url | https://deakee.com/oauth2/token |
| api_base_url | https://deakee.com/api/relayer/v1 |
Verify conformance
Before going live, run the official conformance verifier against your deployment. It checks the centralized ledger, identity OAuth flow, bridge mint/burn wiring, and idempotency.
npx @deakee/loyalty-verifier \
--partner-api-key <your key> \
--plugin-url <your plugin URL> \
--contract-address <your ERC-8063 contract> \
--test-user-email test@example.comStuck? Read the full README or open an issue at github.com/deakee/loyalty/issues.