Buy Points With Crypto Currencies component installation and setting up.

using theseRequirements:
  • Joomla 3+
  • Points manager component: AltaUserpoints OR EasySocial OR Jomsocial
  • Coinbase Commerce account
If you need a Free Coinbase account you can get one from
https://www.coinbase.com/join/52811c7cf16a66a0a3000255 
(this referral link will reward both of us with $10 worth of Bitcoin or Ethereum as soon as your account gets loaded with $100 of crypto)

I. Setting up your Coinbase Commerce account: https://commerce.coinbase.com/dashboard/settings

SETTINGS -> Active cryptocurrencies
Set here what cryptocurrencies you want customers to be able to use to pay you.




SETTINGS -> Whitelisted domains
Add your domain, we added: https://www.nordmograph.com

SETTINGS -> API keys
Create at least one API key, you'll need it in the component options



SETTINGS -> Webhook Subscriptions
- Add an End Point: this is required for Coinbase to let our component know if a payment is failed (expired) or complete: add:
https://www.YOURDOMAIN.COM/index.php?option=com_crypto2points&task=webhook (make sure you set YOUR domain. The exact URL can be found in the component settings)
- Get the Shared Secret and add it to the corresponding field in the component settings.





II. Component installation
  • Download the component from the extension page
  • Install it via the regular Joomla extension installer ( Extensions -> Manage -> Install ). The component installation/update script will detect if AltaUserPoints, Jomsocial or EasySocial is installed and will install the required points rules.




III. Component options



Points Manager: Select your installed points manager: AltaUserPoints, Jomsocial or EasySocial points manager. These 3 extensions are 3rd party extensions need to be downloaded and installed separately. You are supposed to be comfortable with the one you use. AltaUserPoints is the only free one and is by far the most powerful of the 3 when it comes to points management.

Coinbase Commerce Api Key: This is required, get one from https://commerce.coinbase.com/dashboard/settings

API Version: Leave it as it is , it may evolve in the future following Coinbase commerce API

Webhook URL: You can not edit this, this is just a required information when setting up your Coinbase COmmerce account. Copy/Paste it to your Coinbase Commerce account when creating a webhook endpoint. This setting is required to let Coinbase API know where to send payment status confirmations to our application.




IV. Adding your first points packs to your points shop
Use the administration top menu to access the BUY POINTS WITH CRYPTO component submenu. Select the PACKS submenu.
This page lists all the available points packages that members will be able to purchase. Click NEW to create your first pack.






Title: Give a title to your pack

Description: Give a description too

Points: this is the amount of points customers will receive when purchasing this pack  (multiplied by the quantity option they set).

Price: the price value for the points package

Currency: this is displayed currency of the previously set price. It can be either a fiat currency (USD, EURO etc...) or a crypto currency (Bitcoin, Litecoin, Ethereum etc...)

Published: is this pack yet visible from the front end?

You can save!




V. Create a front end menu item to the component
In Joomla administration, go to your menu manager, add a new menu Item to the component Packs view or to a single Pack view. Users will be able to access your Points packages and purchase some.




VI. Understanding the transaction workflow

When a visitor hits the BUY button on a pack page:
1. Coinbase creates a 'charge' object, with pack pricing info, quantity and customer info. It has, at this point, no payment information.
2. This charge object is stored in the Joomla DB with the 'charge:created' status.
3. Customer is redirected to the coinbase page where he will have to choose one between the active cryptocurrencies. Payment has to be made within the next 15 minutes
4a. Customer makes the transaction successfully, he is redirected to the site, and Coinbase sends a webhook payload to the component that updates the charge status to 'charge:confirmed' which triggers the points reward.
4b. Payment is not processed. After 15 minutes, Coinbase sends a webhook payload to the component that updates the charge status to 'charge:failed'. Every failed transaction for a user are deleted from the Joomla DB except for the latest one.





  • Created on .
  • Last updated on .
Disclaimer: Nordmograph is not affiliated with or endorsed by The Joomla! Project™. Any products and services provided through this site are not supported or warrantied by The Joomla! Project or Open Source Matters, Inc. Use of the Joomla!® name, symbol, logo and related trademarks is permitted under a limited license granted by Open Source Matters, Inc.