The MCASuite REST API allows companies to integrate into MCA Suite system through a HTTP RESTful web service. The API is designed to ease the painful process of hand entering data from one system to another system. All responses will be in JSON format.
Login
All calls require two identifying header parameters for credentialing:
1. X_MCASUITE_APP_ID
2. X_MCASUITE_APP_TOKEN
Both of these values will be generated by MCA Suite and provided to our customers. Please contact your representative to get these credentials.
URLS:
The Base REST URL will be provided to the customer upon API request.
Format:
The API will accept form encoded or json encoded parameters.
Testing:
To test the rest url and parameter, we recommend to use the “Advanced Rest Client” extension on google Chrome. If using the Chrome extension, please verify you use application/json as content type, and paste the json parameters into the Raw tab.
Adding a Deal
Functions:
Name: addDeal
Type: POST
Parameters:
Field Name | Required? | Type | Description |
amountRequested | Decimal | Amount requested of the deal, example if the amount is $10000.25, send 10000.25 | |
companyName | Yes | String – Max 50 | Name of the company |
dba | Yes | String – Max 50 | DBA of the company |
entityType | String | Business type, valid options only are: · Corporation · Incorporation · Limited Liability Company · Limited Liability Partnership · Partnership · Sole Proprietorship Non-Profit | |
name | String - Max 100 | Name of deal, if not the default deal name setting will be used. | |
useOfProceeds | String – Max 250 | Description of the deal | |
companyAddress.street1 | String – Max 100 | Company address street line 1 | |
companyAddress.street2 | String – Max 100 | Company address street line 2 | |
companyAddress.city | String – Max 30 | Company address city | |
companyAddress.state | String – Max 2 | Company address state, only the two letter abbreviation | |
companyAddress.zip | String - Max 10 | Company address zip code, only valid 5 number zip – 4 digit extension. Valid examples: 12345 or 12345-1234 | |
companyBusinessPhone | String – Max 20 | Company business phone number | |
companyMainPhone | String – Max 20 | Company main phone number | |
companyFaxPhone | String – Max 20 | Company fax number | |
companyEmail | String – Max 50 | Company business email | |
web | String – Max 50 | Company website | |
businessMonthlyRate | Decimal | Monthly rental rate of business | |
currentProcessor | String – Max 30 | Current credit card processor | |
grossAnnualSales | Decimal | Credit Card Annual sales of business | |
averageMonthlyGross | Decimal | Average monthly gross sales | |
averageMonthlyCC | Decimal | Average monthly credit card | |
averageMonthlyMasterCard / avgMonthlyVisa | Decimal | Average monthly MC or Visa | |
bankruptcies | String – Max 20 | Number of bankruptcies | |
firstName | Yes | String – Max 30 | Owner’s first name |
lastName | Yes | String – Max 30 | Owner’s last name |
middleName | String – Max 30 | Owner’s middle name | |
title | String – Max 60 | Title of the owner’s name | |
ssn | String | Owner’s SSN | |
dateOfBirth | String – Max 20 | Owner’s date of birth | |
ownerHomePhone | String – Max 20 | Owner’s home phone | |
ownerMobilePhone | String – Max 20 | Owner’s mobile phone | |
ownerAddress.street1 | String – Max 100 | Owner address street 1 | |
ownerAddress.street2 | String – Max 100 | Owner address street 2 | |
ownerAddress.city | String – Max 30 | Owner address city | |
ownerAddress.state | String – Max 2 | Owner address state | |
ownerAddress.zip | String – Max 10 | Owner address zip code | |
ownerEmail | String – Max 20 | Owner email of type ‘Business’ | |
ownership | String – Max 20 | Ownership % | |
contactId | Number | MCA Suite Contact ID. If you addContact first, you can associate deal to it. | |
owner2.firstName | String – Max 30 | Owner 2 first name | |
owner2.lastName | String – Max 30 | Owner 2 last name | |
owner2.ssn | String | Owner 2's SSN | |
owner2.dateOfBirth | String - Max 20 | Owner 2's date of birth | |
owner2.homePhone | String – Max 20 | Owner 2's home phone | |
owner2.mobilePhone | String – Max 20 | Owner 2's mobile phone | |
owner2.title | String – Max 10 | Title of owner 2 | |
owner2.address.street1 | String – Max 100 | Owner 2's street 1 address | |
owner2.address.street2 | String – Max 100 | Owner 2's street 2 address | |
owner2.address.city | String – Max 30 | Owner 2's city address | |
owner2.address.state | String – Max 2 | Owner 2's state address | |
owner2.address.zip | String – Max 10 | Owner 2's zip code | |
owner2.email | String – Max 20 | Owner 2's email | |
owner2.ownership | String - Max 20 | Owner 2's ownership % | |
dateInc | String | Date Incorporated | |
taxId | String | Business EIN | |
matchTaxId | Boolean | Will re-use an existing company of EIN matches. | |
totalDeposits | Decimal | Total Deposits | |
loanAmount | String – Max 50 | Existing Loan Amount | |
paybackAmount | String – Max 50 | Existing Payback Amount | |
holdback | String – Max 50 | Holdback | |
industry | String – Max 50 | Must match Industries in Application Configuration options | |
numberEmployees | String – Max 20 | Number of employees in the business | |
homeBusiness | String - Max 20 | Is it home based business? | |
assignedToOne | String | This is the username (email login) of a MCA Suite user. The system must have the user in MCA Suite in order for the record to be accepted. Permissions on the deal will automatically be set to this user. | |
assignedToTwo | String | Deal Assigned 2 field. Username must be email | |
category | String | Match Deal Category in MCA Suite. | |
campaign | String | Match campaign name in Admin - Application configuration. | |
autoAdd | String | Must be set to “true”. This will automatically send it through from pending to accepted. You must contact MCA Suite to setup this feature. | |
externalId | String - Max 50 | Deal external ID | |
annualGrossSales | String - Max 20 | Bank statements annual gross sales | |
dealDescription | String - Max 250 | Deal description | |
additionalInformation | String - Max 250 | Deal additional information | |
sourceCompany | String | Must match company name in the MCA Suite, if doesn't match, deal will still be added. | |
sourceContact | String | First and last name separated by space. If no match, deal will still be added. | |
businessCreditStartDate | String | Business Credit - Start Date | |
timeAtLocation | String | Business Credit > Business Location Time at Location | |
contractTerms.advanceAmount | Decimal | Contract Terms - Advance Amount | |
contractTerms.paybackAmount | Decimal | Contract Terms - Payback Amount, will calculate factor if both advance and payback are entered but NOT factor | |
contractTerms.factor | Decimal | Contract Terms - Factor %, if advancedAmount and factor are entered, payback amount will be calculated and override payback amount | |
contractTerms.purchasedPct | Decimal | Contract Terms - Purchased % | |
contractTerms.calculation | Integer | Contract Terms - Calculation Method 0 - Manual, enter number of payments and rate 1 - Calculate off Daily Rate, enter collection method daily rate 2 - Calculate off payments, enter number of payments | |
contractTerms.numberPayments | Decimal | Contract Terms - Number of Payments | |
contractTerms.funder | String | Contract Terms- Funder. Must match a Company name in the system | |
collectionMethod.dailyRate | Decimal | Collection Method - Daily Rate, also used to calculate number of payments | |
collectionMethod.collector | String | Collection Method - Collector on deal details page. Must match existing company name. | |
collectionMethod.merchantNumber | String | Collection Method - Merchant Number on deal details page |
Return Response
Field Name | Type | Description |
success | boolean | true/false |
error | String | Error message if available |
url | String | Only if autoAdd is used then the response will include the URL of the deal summary page for new deal. |
id | Number | Only if autoAdd is used then then the new deal id will be returned. |
Example (URL not real):
PHP code example:<?php
$service_url = 'http://XXXXXXXXXX/rest/addDeal/';
$app_id = 'XXXXXXXXXX';
$token = ‘XXXXXXXXXXX';
$curl = curl_init($service_url);
$curl_post_data = array(
"companyName"=> "Test Company",
"firstName"=> "Bob",
"lastName"=> "Smith",
"dba"=> "Test Company LLC",
"companyBusinessPhone"=> "4564564568",
"companyMainPhone"=> "8978978978",
"companyAddress.street1": "123 fake St",
"companyAddress.street2": "Suite 230",
"companyAddress.city": "Saint Louis",
"companyAddress.state": "MO",
"companyAddress.zip": "11100",
"entityType"=> "LLC");
$headr = array();
$headr[] = 'X_MCASUITE_APP_ID: ' . $app_id;
$headr[] = 'X_MCASUITE_APP_TOKEN: ' . $token;
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $curl_post_data);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headr);
$curl_response = curl_exec($curl);
curl_close($curl);
echo $curl_response;
?>