0% found this document useful (0 votes)
52 views39 pages

Connector API BM-DOC-001

The Connector API simplifies the process of creating jobs in Bridge Select from any CRM or software, reducing manual lead handling and expediting STC claims. It requires a technical person for integration, a unique account KEY and SALT, and provides various functions for job management. Important limitations include the inability to update completed jobs and specific requirements for job data formatting.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
52 views39 pages

Connector API BM-DOC-001

The Connector API simplifies the process of creating jobs in Bridge Select from any CRM or software, reducing manual lead handling and expediting STC claims. It requires a technical person for integration, a unique account KEY and SALT, and provides various functions for job management. Important limitations include the inability to update completed jobs and specific requirements for job data formatting.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 39

Connector API

Reduce manual handling of leads to jobs


Ful l jobs via Bridge Select and claim STCs quicker
fi
What is the Connector API
• It provides a means to create jobs in Bridge Connector
API
Select from any CRM / software product.

• It’s meant to facilitate usage of Bridge


Select’s powerful job ful lment capabilities
and post outcome back to any CRM /
software product.

• It employs unique API connection services


that are quick and easy to use.It takes away
the pain and high levels of complexity of
building and maintaining your own services

These manufacturer and CRM system logos are trademarks' or registered ® trademarks of their respective
holders. Use of these logos does not imply any af liation with or endorsement to Bridge Select
fi
fi
Pre-requisites
• You have a technical person to help with integration of your CRM to
Bridge Select via the Connector API

• You have received a unique account KEY for the Connector API from the
Bridge Select team

• You have received a unique SALT for the Connector API from the Bridge
Select team

• Integrate the createKey() method in your codebase

de nitions: a salt is a xed-length cryptographically-strong random value that is added to your input data to create unique values for every input, regardless of the input not being unique
fi
fi
Supported Certi cate Types
Solar PV Hot Aircon Battery EV
Water Upgrade Charging

BATTERY NO
PV STC HW STC STC
(coming soon)
CERT
(coming soon)

PRC AIRCON PRC


HW VEEC (bess 1)
(bess 1) VEEC

PRC AIRCON PRC


HW ESC
(bess 2) ESC (bess 2)

AIRCON
HW REPS REPS
(coming soon)

PRC
(coming soon)
fi
Important points of note
• Jobs cannot be updated via the API once they’ve been completed

• You cannot set panel serial numbers via the API

• Location cannot be set once the job has started

• Date changes will result in the job being rendered non-SPV if an SDP (XML) has
been generated

• Error responses will need to be displayed in your CRM as the API will respond with
errors as and when applicable

• Master accounts are created for companies running SaaS / PaaS type systems, e.g.
Zoho, Salesforce, etc
Available Functions
• Create / Edit job - ${BASE_URL}/connector/${KEY}/job/create-or-edit

• Get Status - ${BASE_URL}/connector/${KEY}/job/status

• Get products / serials - ${BASE_URL}/connector/${KEY}/job/products

• Get job details - ${BASE_URL}/connector/${KEY}/job/details

• Get photo (coming soon)

• Get STC form (coming soon)


How to build your request
• Fetch your job data from your CRM (software system) database along with your unique ID (referred
to as CRMID in Bridge Select)

• Create a JSON of the same using the keys described in the slides under Create / Edit job section
and stringily it, for e.g. in javascript you can use JSON.stringify(…)

• Generate base64 encoded version of the “stringi ed” JSON

• Append the SALT provided to you to the base64 encoded string

• Generate checksum of the appended string

• Generate request to be sent to Bridge Select with your unique URL and as described in the format
below. The request contains “data” parameter which is the original base64 encoded JSON (without
the SALT) and the “csum” parameter which is the checksum of the appended string (JSON + SALT)

If required, please get in touch with us for running sample client side code. We can provide php and nodejs running samples.
fi
An Example
{
"crmid": “CRM#12345",
"at": "Physical", Assuming you have the data (on the left) for a job you want to
"e": "[email protected]", create in Bridge Select. The payload sent to Bridge Select API
"fn": "Anu",
would look like the below image
"id": "06/05/2019",
"ie": "[email protected]",
"ifn": "Anu",
"ilat": -38.043408,
"iln": "Berry",
"ilng": 145.32377999999994,
"im": "+61411297857",
"ipa": "2 Grand Arch ",
"ipc": 3806,
"iph": "+61411297857",
"ipra": "Grand Arch ",
"isb": "Berwick",
"ist": "VIC",
"istn": "2",
"istp": "WAY"
}
createKey method
If you are sending embedded JSON payloads in the request, for e.g. when creating panels and inverters
(explained later in the documentation) then all KEYS in the embedded JSON will have to be created using
the createKey method.

function createKey(key) {
var k = key.replace(/[^A-Z0-9^-]+/ig, "_");
return k;
}

Example: if you’re creating a job with Shanghai JA Solar Technology Co Ltd panels and with model number JAP60S01-275/SC
Key for manufacturer will be Shanghai_JA_Solar_Technology_Co_Ltd
And the key for model will become be JAP60S01-275_SC
How to assign panels to the job
Assuming you want to assign 20 Suntech panels to the job with model number STP275-20/Wfw. Please
embed the following json in the payload.

"mfs": { The key you need to send for creating panels is “mfs”.
"Wuxi_Suntech_Power_Co_Ltd": {
"ms": { Please refer to the createKey() explained earlier in the
"STP275-20_Wfw": { documentation.
"n": "STP275-20/Wfw",
"w": “275”,
"rs": “SF Suntech Australia Pty Ltd”,
"np": 20 For latest approved panel listing please refer to the CER website at https://
} www.cleanenergyregulator.gov.au/DocumentAssets/Pages/CEC-approved-PV-
modules.aspx
},
"n": "Wuxi Suntech Power Co Ltd"
}
}

Please note we only support 1 brand per job. SPV also supports 1 brand per claim. Multiple models within the same brand are supported however.
How to assign hot water tanks to the job
Assuming you want to assign 1 Rheem tank with 2 panels to the job with model number
511161/1CS26-26G. Please embed the following json in the payload.

"mfs": { The key you need to send for creating panels is “mfs”.
"Rheem": {
"ms": { Please refer to the createKey() explained earlier in the
“511161_1CS26-26G": { documentation.
"n": "511161/1CS26-26G",
"w": “200”, //tank capacity
"np": 1, //number of tanks
“nop”: “2” //number of panels For latest approved hot water products listing please refer to the CER website at
} https://www.cleanenergyregulator.gov.au/RET/Scheme-participants-and-industry/
Agents-and-installers/Small-scale-systems-eligible-for-certi cates/Register-of-
}, solar-water-heaters
"n": “Rheem"
}
}
fi
How to assign inverters to the job
"ifs": { "ifs": {
"Fronius_Australia": { "United_Renewable_Energy_Co_Ltd": {
"ms": { "ms": {
"Primo_GEN24_5_0_Plus": {
"MA1-INV": {
"n": "Primo GEN24 5.0 Plus",
"sr": "Fronius Primo GEN24 Plus", "n": "MA1-INV",
"w": "5000", "sr": "MA",
"np": 2 "w": "4600",
} "np": 1
Multiple Inverters }, Single Inverter }
"n": "Fronius Australia" },
}, "n": "United Renewable Energy Co Ltd"
"SolaX_Power_Co_Ltd": {
}
"ms": {
"X1-5_0-T-N": { }
"n": "X1-5.0-T-N",
"sr": "X1",
The key you need to send for creating inverters is “ifs”.
"w": "4999", Please refer to the createKey() explained earlier in the
"np": 1 documentation.
}
},
"n": "SolaX Power Co Ltd" For latest approved inverter listing please refer to the CER website at https://
} www.cleanenergyregulator.gov.au/DocumentAssets/Pages/CEC-approved-
inverters.aspx
}
How to assign batteries to the job
"bfs": { "bfs": {
"BYD": { "BYD": {
"ms": { "ms": {
“LVS_8_0”: { “LVS_8_0”: {
"n": “LVS 8.0”,
"n": “LVS 8.0”,
"sr": "Battery-Box Premium LVS",
"sr": "Battery-Box Premium LVS",
"np": 1
} "np": 1
}, }
Multiple Batteries "n": "BYD" Single Battery },
}, "n": "BYD"
"Tesla": { }
"ms": { }
"AC_Powerwall_AS4777-2_2020_": {
"n": "AC Powerwall (AS4777-2
2020)", PLEASE NOTE: if assigning batteries to a job you must assign
"sr": "Tesla Powerwall",
appropriate values to the eld “ctieg” - refer documentation below
"np": 1
}
},
The key you need to send for creating inverters is
"n": “Tesla" “bfs”. Please refer to the createKey() explained earlier
} in the documentation.
}
fi
How to assign an address to the job
Search Address 2/48 Rosanna Street Carnegie VIC 3163 Search Address 173 Golf Links Road Berwick VIC 3806

"at": "Physical Address", "at": "Physical Address",


"ipa": "48 Rosanna", "ipa": "173 Golf Links",
"istp": "ST", "istp": "RD",
"ilat": -37.8995166, "ilat": -38.043435,
"ist": "VIC", "ist": "VIC",
"ilng": 145.0617631, "ilng": 145.323977,
"ipc": "3163", "ipc": "3806",
"ipra": "Rosanna", "ipra": "Golf Links",
"isb": “Carnegie", "isb": "Berwick",
"istn": "48", "istn": "173",
"lat": -38.043435,
"lat": -37.8995166,
"lng": 145.323977,
"lng": 145.0617631,
"pa": "173 Golf Links",
"pa": “2/48 Rosanna Street",
"pc": "3806",
"pc": "3163",
"pra": "Golf Links",
"pra": "Rosanna",
"pt": "Residential",
"pt": "Residential", "sb": "Berwick",
"sb": "Carnegie", "st": "VIC",
"st": "VIC", "stn": "173",
"stn": "48", "stp": "RD",
"stp": "ST", "unt": "",
"unt": "UNIT", "untn": null,
"untn": 2, "iunt": "",
"iunt": "UNIT", "iuntn": null
"iuntn": 2
How to enable installer presence sel es for job

To enable all 3 installer presence sel es To enable designer presence sel e

"eiprf": { "edprf": {
“s”: 1, //start sel e “m”: 1
“m”: 1, //middle sel e }
“e”: 1, //end sel e
}
fi
fi
fi
fi
fi
fi
How to assign external image links to a job
"external": {
“photos”: {
0: {
“l”: “https://abc.com/images/project-plan-1.png”,
“t”: “Project Plan 1”
},
1: {
“l”: “https://abc.com/images/project-plan-2.png”,
“t”: “Project Plan 2”
}
}
}

You will need to construct an array of photo objects, as displayed in above JSON sample. 0, 1, 2… is the
usual sequence format for arrays.

e.g.
https://abc.com/images/sample.png
https://xyz.com/ les/image.jpg
fi
AVAILABLE
[ENDPOINTS]
[ENDPOINT]
Job Status / Details
The following is what the raw request looks like for job status and details end point

{
"crmid": “CRM#12345”,
“retailer”: “retailerUsername” //required only if you have a master account with us
}
[ENDPOINT]
Job Create / Edit
Described in following slides
Common Fields
(for all jobs)
[ENDPOINT] Create / Edit Job
Field Name Description Mandator Request Respons Zapier
y e
crmid Unique ID from your CRM Y Y Y Y
crms Status of job in your CRM N Y N Y
fn Customer rst name Y N Y Y
ln Customer last name Y N Y Y
e Customer Email Y Y Y Y
Installation Date (expected values: Text Date: DD/
id MM/YYYY)
N Y Y Y
Customer Mobile Number (expected values: Text,
m e.g. +61411297857)
Y Y Y Y
Owner type (Expected values Individual, Y
ot Government,
(if you submit address
to BSEL)
Y Y Y
Customer Phone Number (expected values: Text,
p e.g. 0380863035)
N Y Y Y
at Address type (expected values: Physical/Postal) N Y Y Y
Customer address street number + installation Y
pa street name (expected values: Text, E.g. 95
(if you submit address
to BSEL)
Y Y Y
pc Postcode (expected values: Text, E.g. 3806) Y (if you submit address Y Y Y
to BSEL)
fi
Create / Edit Job (contd…)
Field Name Description Mandatory Request Response Zapier
Organisation name if customer type is other than
orn Individual N Y N Y
STC Discount offered to customer (expected
fp value: number) N (Y for SolarVIC) Y Y Y

lat Latitude (expected values: Float, e.g. -34.88042) Y (if you submit address to
Y Y Y
BSEL)

Longitude (expected values: Float, e.g. Y


lng -34.88042)
(if you submit address to
BSEL)
Y Y Y
Installation suburb name (expected values: Y
sb Text, E.g. Berwick)
(if you submit address to
BSEL)
Y Y Y
PO Box number: If customer address is postal Y
pobxn then this will be set (E.g. 123)
(if you submit POSTAL
address to BSEL)
Y Y Y
Postal delivery type: If customer is postal then Y
potyp this will be set (E.g. PO Box)
(if you submit POSTAL
address to BSEL)
N Y Y
Street name (expected values: Text, E.g. Y
pra Graves)
(if you submit address to
BSEL)
Y Y Y
Property type (expected value 'Commercial',
pt ‘School' or ‘Residential’) N Y Y Y
Create / Edit Job (contd…)
Field Name Description Mandatory Request Response Zapier

ifn First Name of customers used for installation Y Y Y Y

iln Last Name of customers used for installation Y Y Y Y


Installation Latitude (expected values: Float, e.g. Y
ilat -34.88042)
(if you submit installation
address to BSEL)
Y Y Y

ist Installation State name (E.g. VIC) Y (if you submit installation
Y Y Y
address to BSEL)

Installation Longitude (expected values: Float, Y


ilng e.g. -34.88042)
(if you submit installation
address to BSEL)
Y Y Y
Installation Mobile Number (expected values:
im Text, e.g. +61411297857) Y Y Y Y
installation street number + installation street Y
ipa name (expected values: Text, E.g. 95 Graves)
(if you submit installation
address to BSEL)
Y Y Y
Installation Postcode (expected values: Text, Y
ipc E.g. 3806)
(if you submit installation
address to BSEL)
Y Y Y
Installation Phone Number (expected values:
iph Text, e.g. 0380863035) N Y Y Y

ipnn Property Name (expected values: Text) N Y Y N


Create / Edit Job (contd…)
Field Name Description Mandatory Request Response Zapier
Installation street name (expected values: Text, Y
ipra E.g. Graves)
(if you submit installation
address to BSEL)
N Y Y
Installation suburb name (expected values: Y
isb Text, E.g. Berwick)
(if you submit installation
address to BSEL)
Y Y Y
installation street number (expected values: Text, Y
istn E.g. 95)
(if you submit installation
address to BSEL)
Y Y Y
installation street type (expected values: Text, Y
istp E.g. ST)
(if you submit installation
address to BSEL)
Y Y Y

st State name (E.g. VIC) Y (if you submit address to


Y Y Y
BSEL)

stn Street number (expected values: Text, E.g. 95) Y (if you submit address to
Y Y Y
BSEL)

stp Street type (expected values: Text, E.g. ST) Y (if you submit address to
Y Y Y
BSEL)

Job type. JT =1 (Solar), JT = 2 (Hot Water),


jt etc… Y Y N Y
Special instructions for installer. Usually a short
spns sentence. e.g please check roof tiles and also N Y N N
Job category. R =shading
Retail, B = Builder, EN =
jcg Embedded Network, etc… N Y N N
Create / Edit Job (contd…)
Field Name Description Mandatory Request Response Zapier
Unit Type (if address is a unit then specify the
unt type in this key, e.g. Warehouse, Unit, Lot, etc…) N Y N Y
Unit Number (if address is a unit then specify the
untn number in this key) N Y N Y
Installation address unit type (if address is a unit
iunt then specify the type in this key, e.g. Warehouse, N Y N Y
Unit,unit
Installation address Lot,number
etc…) (if address is a
iuntn unit then specify the number in this key) N Y N Y
Storey type (expected values are “Single story”
srt or “Multi story”)
N Y Y N
CECID or Plumbing License number of the
installer to be assigned to the job. If you pass a
installer blank we will remove the existing installer from Y Y N Y
the job

Installation company connection code to assign


iccc jobs to a company instead of an installer N N N N

Con gurable gap between installer presence


eiprg sel es. Must be in minutes and cannot be less N N N N
than 30. e.g. 60 for 1 hour, 120 for 2 hours
fi
fi
Solar PV
(STC only)

Create / Edit Job


Create / Edit Job (contd…)
Field Name Description Mandatory Request Response

ceccs CEC accreditation statement (expected values: Yes/No) N Y Y

cgst Is customer registered for GST (expected values: 0/1) N Y Y


Has the installer changed default manufacturer setting of
cbs the battery storage system (expected values: Yes/No) N Y Y
Connection Type of Electricity Grid (expected values:
Connected to an electricity grid without battery storage/
ctieg Connected to an electricity grid with battery storage/ N Y Y
Stand-alone (not connected to an electricity grid))
Australian/New Zealand standards statement (expected
anzss values: Yes/No) N Y Y

enff Explanatory notes (expected values: Text) N Y Y

esd Electrical safety documentation (expected values: Yes/No) N Y Y


Is this application installing additional panels to an
iia existing system? (expected values: Yes/No) N Y Y

stc Number of STCs (e.g. 64) N N Y

stcdp STC deeming period (e.g. Twelve years) N N Y


Create / Edit Job (contd…)
Field Name Description Mandatory Request Response
Is this application creating certi cates for a system that
icfc has previously been failed by the CER? (expected
N Y Y
values: Yes/No)Email - can be same as or different to
Installation
ie customer email
Y Y Y
Is there currently more than one system installed at this
imto address? (expected values: Yes/No)
N Y Y
Property ABN (if customer address is Commercial or
pabn School)
N Y Y
Location of other system (expected values: Text, e.g.
loos North east side of second roof)
N Y Y
Not grid connected statement (expected value Yes /
ngcs No. If system is standalone, i.e. not connected to an N Y Y
electricity grid then value is Yes else No)
NMI number of property (expected value 9 or 11 digit
nmi number) N N Y
Number of existing panels (expected value is a
noep number)
N Y Y
Number of replacement panels (expected value is a
norp number if installation is replacing an existing system) N Y N
Type of system (expected value “S.G.U. - Solar
tos (Deemed)” or “L.G.U. - Solar (Deemed)”)
N Y Y
fi
Create / Edit Job (contd…)
Field Name Description Mandatory Request Response
Local, State and Territory government Siting approvals
sia (expected values Yes / No) N Y Y
Yes if customer address is same as installation Y
siad address and No if the 2 addresses are different
(if you submit address to
BSEL)
Y Y
System mounting type (expected values are “Ground
smt mounted or free standing”, “Building or structure”) N Y Y
Is the battery system part of an aggregated control?
ibpoa (expected values: Yes/No) N Y Y

sw System warranty (expected value: number) N Y Y

tp Total panels (expected value: Number) N Y Y


Warranty description (expected value: Text E.g. “This is
wd a standard 10 years warranty”) N Y Y
Size of installation in watts (expected value: 6600 for a
sz 6.6 kW system)
Y Y Y
mtrn Meter number of the property N Y N
dstbn Electricity distributor name N Y N
Create / Edit Job (contd…)
Field Name Description Mandatory Request Response
AM / PM (if job is to be done in morning or evening.
ampm Values am or pm)
N Y N
Have you removed an existing PV system from this add
rmepv ress or replaced any panels on an existing system?
N Y Y
Comments if (expected values:
rmepv is ‘Yes’ Yes/No)value is a text
(expected
cxpv string)
N Y Y
Restrict completing jobs on app unless Solar VIC QR
esvic code isn’t scanned (values 0 or 1)
N Y N

ismd Installer sel e mode enabled (values 0 or 1) N Y N

csmd Customer sel e mode enabled (values 0 or 1) N Y N


Enable installation variation form in the app and portal
peivf (values 0 and 1)
N Y N
Enable reduced performance form in the app and
erpf portal (values 0 and 1)
N Y N
Enable installation commissioning report in the app
eicrf and portal (values 0 and 1)
N Y N
Enable up to 3 installer presence sel es (start, middle,
eiprf end) in the app and portal (example in an earlier slide)
N Y N
fi
fi
fi
Create / Edit Job (contd…)
Field Name Description Mandatory Request Response
aemojid Distributor (NSP) Job Reference number N Y N
Attaching publicly accessible links of images to the job
external from any 3rd party software
N Y N
PRC
(BESS1 and BESS2)

Create / Edit Job


Create / Edit Job (contd…)
Field Name Description Mandatory Request Response
dan Distributor area network (Ausgrid, Essential, Endeavour) Y Y N
binloc Battery physical location (Indoor or Outdoor) Y Y N
6 (this is for battery only jobs)
jt OR 1 (for Solar PV + Battery)
Y Y N
prcsn Number of PRCs for BESS1 Y Y N
cbess1 Is this is BESS1 job (0 or 1) Y Y N
Out of pocket expense for the customers after the
prcsfp discount. Must match what’s in the invoice Y Y N
b2sn Number of PRCs for BESS2 Y Y N
cbess2 Is this is BESS2 job (0 or 1) Y Y N
Out of pocket expense for the customers after the
b2sfp discount. Must match what’s in the invoice
Y Y N
toact Activity being performed. Will always be “BESS” Y Y N
SWH
(STC, VEEC and ESC)

Create / Edit Job


[ENDPOINT] Create / Edit Job
Field Name Description Mandatory Request Response
toact Type of activity undertaken (for e.g. D17-D21 for ESCs) Y Y N
Installation type (see options from Bridge Select portal for
inst e.g. Replaced Gas Water Heater) Y N N
Is there more than one SWH systems at this address
imto (values Yes or No)
N N N
Type of system being decommissioned (Values Gas or
tosbd_e Electric) N N N

mofdis Method of disposal N N N


vba_mod Method of decommissioning N N N
iia Is volumetric capacity greater than 700L N N N
Is there more than one SWH/ASHP at this address (Value
ceccs Yes or No)
N N N
inssa Where is previous system located (if ceccs is Yes) N N N
mo g Method of lead generation N N N
actshc Activity undertaken at a scheduled activity premises N N N
fl
[ENDPOINT] Create / Edit Job
Field Name Description Mandatory Request Response
cstc STC applicable for this job Y Y N
cvcs VEECs applicable for this job Y N N
cesc ESCs applicable for this job N N N

vcso VEEC only (no STC) job N N N


escso ESC only (no STC) job N N N
plccnv VBA CoC contractor name (VEECs job) N N N
plcclc VBA CoC contractor license number (VEECs job) N N N
vba_ccn VBA compliance certi cate number (VEECs job) N N N
bldr If the retailer is categorised as a builder (0 or 1) N N N
bldr_icn Installation company name for bldr jobs N N N
bldr_icna Installation company address for bldr jobs N N N
bldr_pcn Principal contractor name for bldr jobs N N N
fi
[ENDPOINT] Create / Edit Job
Field Name Description Mandatory Request Response
VEEC (eligible VIC jobs only)
vcsn Number of VEECs Y N N

vcsfp Discount offered to customer in lieu of VEECs Y N N

vcsszs Size of system (Values ’S’, ‘M’, ‘L’) Y N N

ECS (eligible NSW jobs only)


escsn Number of ESCs Y N N
escsfp Discount offered to customer in lieu of ESCs Y N N
escsszs Size of system (Values ’S’, ‘M’, ‘L’) Y N N
[ENDPOINT] Create / Edit Job
Field Name Description Mandatory Request Response
REPS (eligible SA jobs only)
repsn Number of REPS Y N N

repsfp Discount offered to customer in lieu of REPS Y N N

repsszs Size of system (Values ’S’, ‘M’, ‘L’) Y N N


Connect to Bridge Select from your CRM and get onboard the
Solar Panel Validation project

[email protected]

You might also like