Download the PHP package msen/coinbase-commerce-symfony-bundle without Composer
On this page you can find all versions of the php package msen/coinbase-commerce-symfony-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package coinbase-commerce-symfony-bundle
Coinbase Commerce Symfony Bundle
A Symfony bundle for Coinbase Commerce Api
API Reference
For more information about Coinbase Commerce API, look at:
Getting Started
Assuming you already have your own symfony 4 project, please follow the below instructions along with configuration installation and test codes. This bundle makes it very easy to develop high level of Coinbase Commerce applications.
Prerequisites
Create coinbase.yaml file under folder [symfonyproject]/config/packages/
coinbase.yaml
Installing
edit your composer with the bundle library and version
then update your composer
Configure Service
Let's check out the services
After you have installed the bundle, syfmony will have the following service
coinbase.commerce.client App\Coinbase\Commerce\Handler\CoinbaseHandler
However, the coinbase.commerce.client is still private, so let's create the public alias
Add public alias on [symfonyproject]/config/services.yaml
Development
You can get the handler inside your Controller and call the functions
Example
Get the Charge Handler
Since we made the public alias, we can get it anywhere we want
Create new Charge
Let's create a new charge along with $3.6 donation. The input can be json array, json string or Charge object
CALL WITH JSON ARRAY
CALL WITH JSON STRING
CALL WITH CHARGE OBJECT
Show a Charge
List Charges
Charge Object
Charge is one of your main object model that is re-usable once it is retrieved. It includes all other object models;
Addresses, Timeline, Pricing, Money etc..
It includes the raw json string as well in case you need to look up the fields manually.
Here is an example of a returned Charge object that is already expired. No action taken in 15 minutes
Unit Test -> Charge
Let's Create a unit test file that extends KernelTestCase
Webhook
To retrieve a Webhook object from a json string, use the method below, just so simple!
When Coinbase calls your webhook endpoint, follow the below example inside your controller
Unit TEST -> Webhook
You can unit test your Webhook by sending a sample json. The below only tests the json to be parsed as webhook object.
Or you can even unit test your Controller. Remember from above that your controller has still /webhooks/ end point
Note: When you test above, do not forget to comment out the webhook signature part inside your Controller
Below is the complete code of the Unit Test of Webhook. Delete the _ignore__ for each and test each function one by one
Webhook Object
Here is an example of Webhook Object
TO DO:
Events, Checkout
All versions of coinbase-commerce-symfony-bundle with dependencies
ext-ctype Version *
ext-iconv Version *
doctrine/doctrine-bundle Version ^1.9
doctrine/orm Version ^2.6
guzzlehttp/guzzle Version ^6.3
symfony/console Version ^4.1
symfony/debug Version ^4.1
symfony/flex Version ^1.0
symfony/framework-bundle Version ^4.1
symfony/yaml Version ^4.1