Beanstream works with Merchant Accounts (and therefore, Chargify merchants) in these countries:
Beanstream works with customers/consumers in these countries:
- All countries
- Product prices in Canadian dollars or US dollars
- Customers purchasing in other currencies will be charged in their local currency at the exchange rate in effect at the time of the transaction
Card Storage with Beanstream
Please be sure you have Beanstream's card number storage service/option. We need that to store credit card numbers.
Payment Profile Configuration
You will need to configure your Beanstream account to allow duplicate payment profile information. Here's how:
- Log in to your Beanstream account and navigate to configuration -> payment profiles
- Uncheck the boxes for "Do not allow profile to be created with card data duplicated from an existing profile." and "Do not allow profile to be created with billing information duplicated from an existing profile."
- Click "Update" to save the changes
Having duplicate profiles is not a "bad thing", and is something we must do in some cases since we can't always detect duplicates ourselves given the limited card information we store.
When using Beanstream, be sure to let Beanstream know whether you intend to process transactions using US dollars or Canadian dollars. The currency setting in Chargify must match the currency set up by Beanstream. Chargify is unable to detect if a there is a discrepancy in this setting.
Using Beanstream with the API
Beanstream requires that every API request must include the customer's name, address, state/province, zip/postal code, and country.
Beanstream only allows specific state/province and country codes to be used. Please review pages 64-67 of 'Process_Transaction_API_Guide.pdf,' available in the Beanstream administration console under Documentation > Processing > Process Transaction API Guide.
Using Beanstream with Chargify Hosted Pages
To use Chargify's hosted pages with Beanstream, you must enable billing address collection.
Creating a user specifically for use with your Chargify account
Sometimes, it's a good idea to separate out the administrator from access that Chargify would use. To do that, follow these steps:
- After you've logged into Beanstream, click on Administration->User Manager
- Click "Add user", which brings up a dialog. Add the appropriate information, with a username like "chargify"
- Make sure you records (somewhere) the username/password you're going to use for this user - you'll need to copy it back into your Chargify settings. When done, click "Add User" from within the dialog.
- Change the permissions for the new user, by clicking the new user in the left list, to the following:
- Recurring Billing = No Access
- Payment Form = No Access
- Web Terminal = No Access
- Account Settings = No Access
- Security = No Access
- Language = English
- Disabled = No
- Secure Webspace = No Access
- Payment Profile = Full Access
- Company Info = Read Only
- Credit Card Viewing = Masked Card
- Reporting = Full Access
- Administrator = No
- When you have all that added, just click the "Update" button.
OTHER CHARGIFY MERCHANTS HAD THIS TO SAY
If you get "Transaction Declined. Restricted transaction type."
then here's what one of our very kind customers said about his experience...
Looks like the "Restricted transaction type" is due to Beanstream setup. Here's a helpful blurb for other Beanstream users:
When setting up the Beanstream account, you need to change the order settings for "Restrict Internet Transaction Processing Types" to >allow both purchase and pre-auth transactions. This setting can be found under Administration -> Account Settings -> Order Settings, >selecting the radiobutton for both types and hitting 'Update'
The following very complete list of steps was graciously provided by Chargify customer firstname.lastname@example.org:
a. Get a Beanstream account or test account
b. Email Beanstream support and ask for payment profiles to be enabled (may add extra cost)
c. In Beanstream go to Configuration->Payment Profile Configuration in the Secure Payment Profile section click on "Generate New Code" for API Access Passcode and then hit "Update" at the bottom.
d. In Beanstream go to Administration->Account Settings->Order Settings and under Transaction Validation options make sure "Restrict Internet Transaction Processing Types" is off - alternately make sure "Purchase or Pre-Authorization only " is on. Turn use username/password validation against transaction on and enter a username and password.
e. In Chargify go to your product and under Settings->Payment Gateway configure Beanstream using your merchant id, the username/password from #4 and the Payment Profile API Pass Code from #3.
N.B. You can only use each Beanstream test card once for a customer. You must clear the information to use it again under Processing->Payment Profile in Beanstream.
To be fair to Beanstream it was their support than cleared this up and they have been very helpful to me on the business side (for a merchant account as well as a payment gateway). I am surprised that neither Beanstream or Chargify had a complete set of instructions. Beanstream support said they would read through my instruction list in this thread as well.