Whenever we build something, we want it to provide the best possible user experience. Great user experiences lead to greater take up and an enhanced desire to promote a service from councils.

With a revenue generating service like bulky waste collection we felt it vital to ensure the process was as quick to complete as possible and leveraging APIs integrate with multiple systems to deliver unparalleled levels of automation.

The Bulky Waste Collection service provides integration to:

  • Your Waste Management system to:
    • Retrieve the address
    • See the available slots for collection
    • Create the job(s)
  • Your Benefit system to:
    • Confirm eligibility for any discounts you may offer
  • Your Payment system to:
    • Collect payment from the customer prior to the creation of the job
  • IEG4's OpenProcess solution to:
    • Enable the citizen to track the progress of the task
Online form walkthrough

We will walkthrough the online form's screens below.

About you

This first page captures the person's name, contact details and then provides an address look up. The address look up is directly to your waste management system and is essential as it is responsible for retrieving the UPRN to then be able to use in subsequent integration.

 

This page also asks if they're in receipt of benefits. If they say Yes they are asked for their benefit claim reference.

 

When moving to the next page we carry out the check to see if they have a live claim. If they do not the following is presented:

mceclip1.png

If  we are unable to communicate with the back office or if an error is received the following will be presented:

mceclip2.png

Where their benefit status is successfully confirmed the customer can progress to the next page and the cost of the service will be updated to reflect the discount available for benefit claimants. 

Tell us what needs to be collected

This next page is where the customer will set what needs to be collected and see the cost for this to be taken away. They first indicate how many items need to be collected and then, based upon the count of items they set, the user can choose the item. 

We can also see the message presented when benefit status is confirmed and the summary cost of the items they've indicated that need to be collected:

 mceclip0.png

The list of the items available, whether they are classified as white goods or not and the price of the collection are all controlled in settings. This is walked through in the 'Configuration' section later. 

 

Book Collection

The next page is where the customer can:

  • select when they'd like the bulky collection to take place
  • provide a description of the location / any access information

mceclip1.png

Declaration / Payment Integration

The standard declaration page is then shown and on clicking submit the user is taken to your payment system to make payment. Details of the specific request, the amount and form reference are automatically pushed into the payment system:

mceclip3.png

Once the payment is made the customer is taken to the standard Thank You (Submission) page. 

 

Bulky White Goods

In most councils there are different costs for white goods vs regular items to be collected. Indeed, in some councils the day on which the collections slots are available can differ for regular bulky goods vs white goods. To make it simple for customers, they simply need to indicate what they need collected. Then using configuration for the form you can indicate whether an item is a white good or not.

This means when the user selects their items it will automatically separate them out as shown below left. Plus, because a council can have collection dates that are different for regular items vs bulky white goods, there is also the ability for the customer to separately indicate when they would like their white goods to be collected:

 

Screenshot_2020-04-17_at_10.55.29.png

 

Upon submission of the form in the scenario above two separate jobs are created automatically. 

 

Configuration

This online form has three different sets of configuration associated with it to enable localisation for your council.

Edit Mode

IEG4 online form come with a built in 'Edit Mode'. This means in the development environment that you can change the wording of the form's title, questions, help text etc. 

Screenshot_2020-04-17_at_14.17.41.png

 

By selecting a zone you can see the wording and then edit it/add help text etc. Note that you should NEVER delete content like {group_label} shown in the screen shot below. This is because it is dynamically filled based upon the type of collection i.e. bulky white goods if only white goods are being collected. 

Screenshot_2020-04-17_at_14.19.20.png

This mode is also where you can edit the messaging shown to customers on these below:

Screenshot_2020-04-17_at_14.22.27.png

 

Settings 

The following are settings which council users can change in the Forms System Management area:

Name Description
ShowGuidanceNotes

If set to TRUE this will place a Guidance Notes page into the form. The default is FALSE, as the expectation is guidance would be present on the website itself.

DisableValidationOnPreviousButton

If set to TRUE a customer can move back from a page even if the current page is incomplete. This is useful to cater for user error. 

WasteIntegrationSource

This is the name of the Waste Management back office you have e.g. Yotta Alloy, Yotta Mayrise, Whitespace Powersuite, Bartec Collective

WhiteSpaceApiBaseUrl

This is the url for your waste management back office application's API

ClaimVerificationEnabled

If set to TRUE it means that the form will automatically check for benefit status as a part of the process. This is a setting as not all councils give discounts for being in receipt of benefits. 

MaximumItemsForCollection This setting controls the maximum number of items a person can have collected.
ClaimSource

This is the name of the Benefits back office you have for e.g. Northgate, Capita, Civica

SourceId

This will be IEG4

SourceUserId

This will be IEG4User

UserId

This should aisdba for Capita. It should be IEG4 for Northgate/Capita.

BackOfficeUrl

This is the url for your Benefit system's API

NB - where payment integration is in place these are added in the global (not form specific) settings and these are different depending upon the payment system you have. 

 

Files

This is the only area with any complexity in the set up of this form. There is a file in the Files area for the Bulky Waste form called:

configuration/serviceconfigurationmappings.json

This file contains:

  • the pricing model you have 
  • the list of all items that can be collected and
    • the code associated with this in your back office waste management system
    • detail on whether the item is classed as white goods or not

This file is in JSON format and so takes a little time to review but is simple when you know how. 

Pricing

In the file there is a section like this which is outlines the price for Bulky Waste Items (not white goods). 

In summary this section of JSON below is saying:

  • 1 item is £19.60 (basePrice) and there is no discount (baseDiscountedPrice) for one item
  • 2-5 items is £32.60 (basePrice) and a discounted price of £25.50 (baseDiscountedPrice) if they are on benefits
  • 6-20 items is £32.60 (basePrice) and there a discounted price of £25.50 (baseDiscountedPrice) if they are on benefits and for each item beyond 5 items there is a cost of £11.70 (pricePerItem) or £10.70 (discountedPricePerItem) if they're on benefits.

"priceListItems": [
{
"minItemQuantity": 1,
"maxItemQuantity": 1,
"basePrice": 19.6,
"baseDiscountedPrice": null,
"pricePerItem": null,
"discountedPricePerItem": null
},
{
"minItemQuantity": 2,
"maxItemQuantity": 5,
"basePrice": 32.6,
"baseDiscountedPrice": 25.5,
"pricePerItem": null,
"discountedPricePerItem": null
},
{
"minItemQuantity": 6,
"maxItemQuantity": 20,
"basePrice": 32.6,
"baseDiscountedPrice": 25.5,
"pricePerItem": 11.7,
"discountedPricePerItem": 10.7
}
],
"name": "Bulky waste items",

The same exists for white goods but with different info.

In summary this section of JSON below is saying:

  • There is only one price rule and for any number of items between 1 and 9 the cost is £26.70 (pricePerItem) per item.

"priceListItems": [
{
"minItemQuantity": 1,
"maxItemQuantity": 9,
"basePrice": null,
"baseDiscountedPrice": null,
"pricePerItem": 26.7,
"discountedPricePerItem": null
}
],
"name": "Bulky white goods"

 

There is therefore an enormous amount of flexibility in how you do your pricing. You can have:

  • A set cost per item 
  • A set cost per item where they are in receipt of benefits
  • A cost for a range e.g. 1-3 items 
  • A cost for a range e.g. 1-3 items where they are in receipt of benefits
  • A mix of costs / ranges e.g.
    • 1 item costs £20.00
    • 2-5 costs £30.00
    • 6-10 costs £50.00
    • 11+ is £50 + £20 for each additional item

And these can be different for regular goods vs bulky white goods. 

Payment Integration

The following section contains details of the information that is relevant to the payment system. 

In summary this section is holding details to say:

  • When the item(s) to be collected is/are regular bulky waste:
    • the payment reference for your payment system is r1
    • the fund code for your payment system is f1
    • the description the customer will see when making a payment in your payment system will be Bulky waste items collection
  • When the item(s) to be collected is/are bulky white goods:
    • the payment reference for your payment system is r2
    • the fund code for your payment system is f2
    • the description the customer will see when making a payment in your payment system will be Bulky white goods collection

"bulkyWasteItemGroups": [
{
"groupId": "29",
"groupName": "Bulky waste items",
"purchasableItemDetails": {
"reference": "r1",
"fundCode": "f1",
"description": "Bulky waste items collection",
"price": null
}
},
{
"groupId": "30",
"groupName": "Bulky white goods",
"purchasableItemDetails": {
"reference": "r2",
"fundCode": "f2",
"description": "Bulky white goods collection",
"price": null
}
}

Bulky Waste Items that can be collected

The next section contains the list of all items that can be collected by type. 

The section below contains:

  • The id for each bulky waste item that can be collected
  • The name that will be shown to the customer

The following are just some examples:

"bulkyWasteItemLists": [
{
"bulkyWasteItemTypes": [
{
"id": "201",
"name": "5 Black Bags As One Item"
},
{
"id": "202",
"name": "Armchair"
},
{
"id": "203",
"name": "Bed Base"
},

So if I want to add a new item I'd literally just find out the id of the item as it is known in the back office. So if my item was a Canvas Painting with an id of 999 I'd add:

{
"id": "999",
"name": "Canvas Painting"
}

 

The IDs are used to know what to add to the job that is created. 

At the bottom of the list is a number that identifies the items as being regular bulky items:

"bulkyWasteGroupId": "29"

 

Bulky White Goods Items that can be collected

The next section contains the list of all items that can be collected by type. 

The section below contains:

  • The id for each bulky white good item that can be collected
  • The name that will be shown to the customer

The following are just some examples:

"bulkyWasteItemTypes": [
{
"id": "218",
"name": "Cooker (Gas Or Electric)"
},
{
"id": "225",
"name": "Dishwasher"
},
{
"id": "236",
"name": "Freezer (Empty)"
},

The IDs are used to know what to add to the job that is created. 

At the bottom of the list is a number that identifies the items as being bulky white goods:

"bulkyWasteGroupId": "30"

 

So whilst the JSON file is a little complex it is remarkably simple to update/configure additional flexiblity.