Follow

Collecting Credit Cards

The white label build form for a WholesaleBackup client allows one to specify that end users be prompted for credit card (CC) information at installation time.  The form allows you to specify whether users may optionally provide a CC, be required to provide a CC, or not be prompted as follows:

You also specify which of the following credit cards you accept at white label client build time as follows:

Credit card data input into the WholesaleBackup will be securely sent over an SSL connection, via https, to the destination you specified at white label build time.  Your options are to have this data sent directly to your WholesaleBackup Windows server or to a URL on the Internet of your choosing which supports the WholesaleBackup credit card API (contact us for a PHP template which fully implements this API), as shown below 

Assuming you have built a client which prompts for a credit card at installation time, the end user will be presented with the following form during the installation wizard:

All of the data in this form is sent to the CC gateway you specified and a string representing a billing token is passed back to the client and tracked with it and its account on your WholesaleBackup server.  You can change this billing token at anytime on either the client computer or on the WholesaleBackup server (the billcode INI setting).  This token is typically used to associate a backup account (or multiple accounts) to a billing account - so for example if you use a payment gateway such as authorize.net or whcms to securely store your credit card information, then you'd associate your backup accounts with the appropriate merchant services billing entity.

If you specified earlier to send CC data to your WholesaleBackup server, then at registration time, the Credit Card BAT file, specified on the Settings->Local tab and called WSBU_CC.BAT by default, will be called with all of the information the user provided on the form.  To actually collect credit card information and store it somewhere you will need to edit this file (which is very well commented) and generate and return a bill code token (an example file is shown below).

 Be sure to peruse PCI compliance rules before storing and processing any digital credit card data!  More information can be found at https://www.pcisecuritystandards.org.

Below is an example of the sample WSBU_CC.BAT file:

@ECHO OFF

REM CREDIT CARD API FOR WHOLESALEBACKUP

REM Copyright (c) Divinsa LLC, All rights reserved.
REM THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
REM INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
REM PURPOSE AND 
NONINFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY
REM CLAIM, DAMAGES OR 
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
REM ARISING FROM, OUT OF OR 
IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
REM THE SOFTWARE.

REM PLEASE SEE LICENSE.TXT FOR FULL TERMS!

REM BE SURE TO PERUSE PCI COMPLIANCE RULES BEFORE STORING OR PROCESSING CREDIT CARDS
REM FOR EXAMPLE, PLEASE SEE https://www.pcisecuritystandards.org

REM DO NOT ALTER THE FOLLOWING LINE; IT MUST BE PRESENT TO PROVE TO SERVER THIS ROUTINE
REM WAS CALLED
reg ADD HKLM\Software\WholesaleBackupServer /v WSBU_CC_ORIG_TOKEN /t REG_SZ /d "%1" /f >NUL

REM INPUT PARAMETERS

REM 1 = WSBU generated bill code token, you can replace this with your own or just use it (its unique to email)
REM 2 = credit card number without dashes or spaces
REM 3 = credit card type -- Mastercard, VISA, American Express, Discover, Diners Club, JCB, enRoute
REM 4 = credit card security code -- CVC, CCV 3 or 4 digit security code
REM 5 = credit card month of expiration -- two digit month
REM 6 = credit card year of expiration -- four digit year
REM 7 = first name for credit card
REM 8 = last name for credit card
REM 9 = phone for credit card
REM 10 = email for credit card
REM 11 = address line 1 for credit card
REM 12 = city for credit card
REM 13 = state for credit card
REM 14 = zip code for credit card
REM 15 = country for credit card -- string from a pull-down in client
REM 16 = brand
REM 17 = regcode
REM 18 = address line 2 for credit card -- which maybe empty or not present

REM Get input variables

set default_bill_code=%1
set cc_number=%2
set cc_type=%3
set cc_security_code=%4
set month=%5
set year=%6
set firstname=%7
set lastname=%8
set phone=%9
shift
set email=%9
shift
set address1=%9
shift
set city=%9
shift
set state=%9
shift
set zip=%9
shift
set country=%9
shift
set brand=%9
shift
set regcode=%9
shift
set address2=%9

REM Your code goes here (you can uncomment out following line to capture CC data to a file, for example,
REM though doing so is NOT PCI COMPLIANT).

REM ECHO %default_bill_code%, %cc_number%, %cc_type%, %cc_security_code%, %month%, %year%, %firstname%, %lastname%, %phone%, %email%, %address1%, %address2%, %city%, %state%, %zip%, %country%, %brand%, %regcode% >> WSBU_CC.CSV

REM Return values that must be specified are: WSBU_CC_CODE, WSBU_CC_TOKEN, WSBU_CC_MESSAGE
REM a value of 0 for WSBU_CC_CODE means CC was accepted and proceed with registration using
REM WSBU_CC_FINAL_TOKEN as billing token

REM a value of 1 for WSBU_CC_CODE will pass WSBU_CC_MESSAGE back to user and ask them to retry
REM any other return value for WSBU_CC_CODE will prevent the client from proceeding past the CC capture
REM stage of registration wizard
REM WSBU_CC_TOKEN must be only numbers and letters, with no spaces or other characters!

REM Set return values (replace values after /d with your own)

reg ADD HKLM\Software\WholesaleBackupServer /v WSBU_CC_CODE /t REG_DWORD /d 0 /f >NUL
reg ADD HKLM\Software\WholesaleBackupServer /v WSBU_CC_FINAL_TOKEN /t REG_SZ /d "%default_bill_code%" /f >NUL
reg ADD HKLM\Software\WholesaleBackupServer /v WSBU_CC_MESSAGE /t REG_SZ /d "OK" /f >NUL

ECHO ON

 

Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request

Comments

Powered by Zendesk