Documentation You are here: start » gateways » coinbase

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
gateways:coinbase [2015/03/04 22:58] – [Important Notes and Caveats] jludwickgateways:coinbase [2022/04/07 19:01] (current) – [Setting Up Coinbase for FoxyCart] marija
Line 1: Line 1:
 ---- dataentry gateway ---- ---- dataentry gateway ----
-type            : gateway         # do not change this line +type                   : gateway # do not change this line 
- +name                   : Coinbase #  
-# Add the full name of the gateway after the colon below. +countries              : US #  
-name             Coinbase +support-added          2.0 #  
- +support-removed         #  
-Supported Countries. Please use 2-character ISO Country Codes available at +auth-net-emulation     : no # enter "yes" or "no" (without quotes) 
-# http://www.iso.org/iso/english_country_names_and_code_elements +supports-3dsecure      : no # enter "yes" or "no" (without quotes) 
-# Separate multiple country codes by commas. +supports-multicurrency : yes enter "yes" or "no" (without quotes) 
-countries       : US +gateway_url            http://www.coinbase.com 
- +
-Enter the FoxyCart versions where support was added or removed (if applicable). +
-# Version numbers should include applicable decimals, such as "0.7.0" and not "070" +
-support-added   1.1 +
-support-removed :  +
- +
-Features and Details +
-auth-net-emulation : no # enter "yes" or "no" (without quotes) +
-supports-3dsecure  : no # enter "yes" or "no" (without quotes) +
- +
-Gateway URL +
-gateway_url     : www.coinbase.com+
 ---- ----
  
  
-====== coinbase ====== 
-===== Setting Up coinbase for FoxyCart ===== 
-There are a few advanced settings possible on the Coinbase side, but this is the minimum to get you going:  
-  - Create an account with Coinbase (if you already have one, you may wish to start a new wallet for foxycart purchases). I highly suggest using two-step verification to better secure your account. 
-  - From within Coinbase: Select Settings/API Access. Click the button "+ New API Key". 
-  - In the New API Key window, under the Accounts heading, select which wallet you want purchases to go into. 
-  - Under the Permissions heading select "Merchant" only. 
-  - Under the Security Settings heading, leave the Allowed IP Addresses blank. 
-  - Click Create. 
-  - Your new API key will show up in the API list, but it is disabled initially. You must click enable and you will be emailed a code to enable the API Key. Paste in the code and you have an active key. 
-  - Note that the key is truncated in the API Key list, click on it to see the full API Key and API Secret. 
-  - In a separate browser window open your foxycart settings and go to STORE/payment, select "Let customers pay with Coinbase:", paste in your API Key and Secret Key. Then click "Update Payment Gateway". 
-  - Now back to Coinbase, where you have one final step before you can accept purchases: From your home account page select "Merchants" in the left sidebar. You must set up all of the info in the Profile tab (e.g. company name, logo, contact info and tax ID). 
-  - Test, test, test. 
  
 +====== Coinbase ======
  
 +<WRAP center round important 90%>
 +Subscriptions are not supported with Coinbase at this time. If you intend to sell subscriptions with your FoxyCart store, you will need to make use of another payment gateway. (You can still use Coinbase Commerce //and// other gateways. Coinbase Commerce just won't be an option for payment if there's a subscription item in the cart.)
 +</WRAP>
 +===== Setting Up Coinbase for FoxyCart =====
  
 +  - Create an account with [[https://commerce.coinbase.com/?lang=en|Coinbase Commerce]].
 +  - In your Coinbase account, go to "Settings" and scroll down to "API keys". Create an API key and copy/paste it into the API key section in the Foxy admin for Coinbase API key (on the payments page, under **Accept payments using your Coinbase V2 account**).
 +  - In Coinbase, go to the "Webhook subscriptions" and click "show shared secret". Copy that out paste it into the Foxy "Webhook Shared Secret" field in the Foxy admin in the same option, **Accept payments using your Coinbase V2 account**.
 +  - Click "Add an endpoint" in the Coinbase webhook subscriptions settings. The URL should be your Foxy store URL followed by ''/ipn''. So if your store domain is ''example.foxycart.com'', you'd enter ''https://example.foxycart.com/ipn''. If you're using a custom domain like ''secure.example.com'', it'd be ''https://secure.example.com/ipn''.
 +  - Save that webhook subscription in Coinbase. Save your Foxy payment settings.
 +  - You may test the gateway setup by completing a transaction.
  
-===== Testing ===== 
-Cheap way to test if you already have Bitcoin: I set up a $1 non-taxable item in my store and bought it with Bitcoin. Very smooth transaction! I'm impressed. 
 ==== Obtaining a Test Account ==== ==== Obtaining a Test Account ====
-Contact coinbase for info. <wrap help>Know more? Feel free to edit this page with info.</wrap> 
-==== Test Card Numbers ==== 
-Contact coinbase for info. <wrap help>Know more? Feel free to edit this page with info.</wrap> 
- 
  
 +Coinbase currently do not provide test accounts. This means that even if your gateway settings in your store's FoxyCart administration may be set to Test Servers, any transactions placed with Coinbase would be legitimate transactions with real Bitcoin.
  
 +In order to test a transaction with Coinbase, you could create a custom $1 product for your store, and complete the transaction with Coinbase to confirm everything is working as expected.
 ===== Troubleshooting & Interpreting Response Codes ===== ===== Troubleshooting & Interpreting Response Codes =====
-Contact coinbase for info. <wrap help>Know more? Feel free to edit this page with info.</wrap>+Contact Coinbase for info. <wrap help>Know more? Feel free to edit this page with info.</wrap> 
 + 
 +If you do not configure your Merchants/Profile in Coinbase, you will not be able to complete a FoxyCart purchase. You, or your enduser/customer, will see an error code instructing you to set up your merchant profile.
  
  
  
 ===== Important Notes and Caveats ===== ===== Important Notes and Caveats =====
-**Instant Exchange** is a Coinbase feature that allows you to accept Bitcoin, but have it instantly converted to currency (e.g. USD) and deposited to the bank account of your choice. This could significantly reduce your exposure to exchange rate fluctuations, but it comes at a price. As of March 4, 2015 the fees associated with this service is 1% + $0.15 per transaction. Keeping your payments in Bitcoin are free of transaction fees. 
-More info: https://developers.coinbase.com/docs/merchants/payouts 
- 
-I asked Coinbase about the API Key permissions to set and this was their reply: 
-<blockquote>Hi Jonathan, 
- 
-The Merchant permission is all you need, and the only one that you should select in order to configure your FoxyCart account. 
- 
-This will allow the following actions: 
-Create payment buttons and forms, view your basic user information, edit your merchant settings, and generate new receive addresses 
- 
-You shouldn’t need to restrict the server IP, both because the IP address Foxy uses may actually change, and because there is no risk of this key being used to move funds from your account. 
- 
-I hope that helps! If you need further assistance, please let me know. 
- 
-Thanks, 
-John 
-Coinbase</blockquote> 
  
 +==== Possible Action: Datafeed Handling ====
  
 +At the time of the customer completing the transaction - we don't necessarily know whether the transaction was completed yet or not. We instead rely on a notification from the gateway after the checkout has been completed to confirm whether the transaction was approved or not. To handle this, transactions are initially marked as pending, and when we get a confirmation from the gateway on the result of the transaction, we update it accordingly. Each time the status changes, a datafeed will be sent to your endpoint if configured with the transaction details and the ''status'' node will be present.
  
 +The ''status'' node can contain one of three different values: ''pending'', ''approved'' or ''rejected''. Depending on the types of actions you're needing to perform at your datafeed endpoint, you need to make sure the appropriate status value is present first.
  
 +==== Other Notes ====
  
 +Coinbase has multiple settings and features you should explore, such as minimum and maximum amounts, and thresholds for how exchange rate fluctuations should or shouldn't be accepted. Since cryptocurrency is very, very unlike credit cards, please familiarize yourself with your Coinbase Commerce account before you go live.
 ===== User Notes and Experiences ===== ===== User Notes and Experiences =====
 <wrap tip>If you have tips, experience, or helpful notes related to this gateway that would benefit others, please add them below, including your name and the date.</wrap> We reserve the right to edit or remove comments that don't add value to this page. <wrap tip>If you have tips, experience, or helpful notes related to this gateway that would benefit others, please add them below, including your name and the date.</wrap> We reserve the right to edit or remove comments that don't add value to this page.

Site Tools