Square

In this article, you will learn how to set up your Square integration with Onfleet. This integration will automatically create tasks within Onfleet from your Square fulfillment orders, allowing your organization to streamline your order-to-delivery operation with Onfleet's advanced last-mile delivery software. 

This article will cover: 

Square

Square allows your business to receive payments, manage staff and conduct business in-store and online. With this integration, your organization can configure how orders are assigned to drivers and receive real-time updates on the deliveries within the Square dashboard. 

Millions of brands of all sizes trust Square to accept payments, build customer relationships, and grow their business.

Return to Top

Workflow

The workflow for this integration is as follows:

  1. An order will be input into Square and will automatically be sent to Onfleet in real-time, creating a pick-task or a pick-up and drop-off linked task when the fulfillment process is started.
  2. The Onfleet task will be updated if the Square order fulfillment is updated.
  3. Onfleet tasks will update the Square order accordingly:
    • When a task is created the Square order status is "New."
    • When a task is started, the Square order status is set to "Ready" and the Onfleet tracking URL is updated (URL is available via API on Square’s side).
    • When a task is completed by a driver, the Square order is set to "Completed", and the Square shipping notes are updated from the Onfleet task notes.
    • If a task is failed the Square order status is set to "Completed". On the Square API, the order fulfillment status is set to "Canceled". The failure reason is updated in Square (the reason is available only via API).
    • If a task is deleted, the Square order status is set to "Completed". On the Square API, the order fulfillment status is set to "Failed". The cancellation reason is updated in Square (the URL is available via API on Square’s side).

Return to Top

Set Up in Square (Shipment Fulfillment Configuration)

Onfleet tasks can be created from Square Shipment or Local Delivery Orders. Only one fulfillment type can be used with this integration, not both at once.

1. Log into your Square online account, select "Fulfillment", then click on "Shipping".

Screen_Shot_2022-08-16_at_9.17.49_AM.png

2. Once inside the "Shipping" section, select "Set-Up" to create a new shipping profile. 

Screen_Shot_2022-08-16_at_9.24.14_AM.png

3. Name your shipping profile and add a country, then select "Done". 

Screen_Shot_2022-08-16_at_9.26.14_AM.png

4. Now you will be prompted to add a rate name, and the rate name will be displayed to your customers. Please note, the rate name must be set to "Onfleet". 

Screen_Shot_2022-11-10_at_11.28.58_AM.png

5. Once you have set the rate name, return to "Settings", and then select "Checkout".

checkout.png

6. If your business supports multiple locations, Onfleet tasks can be configured to be created for specific locations. The integration will check for the location of an item before a task is created.

Return to Top

Set Up in Square (Local Delivery Fulfillment Configuration)

1. Log into your Square online account, select "Fulfillment", and then click on "Pickup and Delivery".

2. Enable "Delivery" for your location, then select "Edit". 

location_home.png

3. Select "My Own Couriers" and then choose "No" for the "Calculate & Assign Delivery Times Automatically" section. 

config1.png

4. You will then have the option to set your delivery region. You can set this region by using a Postal Code or Radius.

config2.png

5. Complete the rest of the required information on the page and then click "Save".

6. If your business supports multiple locations, Onfleet tasks can be configured to be created for specific locations. The integration will check for the location of an item before a task is created.

Return to Top

Set Up in Onfleet

To set up the integration with Square on Onfleet's end, please follow these steps.

1. Log into your Onfleet administrator account. Select the plug icon located on the upper right corner of the app to access the Integrations Marketplace”

Snip20230815_6.png

2. Within the "Add Ons" section, click on "Integration Marketplace". Once in the "Integrations Marketplace" module, click "Activate" on the "Square" integration card.

3. Once you have selected the "Activate" option, you will be prompted to choose an API key under the "Authentification" menu. 4. Once you have selected the API key you would like to use, click on "Next". 

Screenshot_2023-01-26_at_1.57.25_PM.png

4. Once you have clicked on "Next", you will be redirected to log in to your Square account. Select "Allow" when the permissions are requested, after you have selected "Allow", you will be redirected back to the configuration. Press Next to continue with the setup process.

5. Now you can set up the task configuration, and begin by selecting your fulfillment type. Onfleet tasks can be created from "Shipment" or "Local Delivery" fulfillment orders.

Screenshot_2023-01-26_at_2.07.02_PM.png

6. Select which type of tasks are created.  If your organization requires your drivers to pick up the last from one location and then drop it off at a recipient's location we recommend selecting the "Pickup and Dropoff Tasks" option. This option will create a pickup task with an Onfleet hub as a destination and a dropoff task with the customer's address.

While the "Dropoff Task" option will create one task with the recipient's address. 

Screenshot_2023-01-26_at_2.10.14_PM.png

7. Select which one of your organization's Square locations the tasks should be created for. Please note, your organization must update your Square items with the appropriate location. 

Screenshot_2023-01-26_at_2.28.35_PM.png

8. If your organization would like to impose a task completion requirement, you will be able to do so now. 

Screen_Shot_2022-08-24_at_9.37.04_AM.png

9. Now you will be able to select your "Assignment Mode Configuration". This step will allow your organization to decide if tasks will remain unassigned, be automatically assigned to a team or driver or be automatically assigned. 

If you select "None" the task will be placed in the "Unassigned" queue of your organization. 

Screenshot_2023-01-26_at_2.29.30_PM.png

If your team would like to automatically assign tasks to a specific team or worker, select "Manual Assignment" and then select the team or worker within your Onfleet organization you would like the tasks to be assigned.

Screenshot_2023-01-26_at_2.30.08_PM.png

Lastly, if your organization would prefer to have the tasks be auto-assigned then select the "Auto Assignment" option. Auto-assignment will allow you to assign tasks based on the distance or load of the worker. You can restrict assignments to a specific team, specify the maximum number of tasks and exclude workers from the assignment logic.

Screenshot_2023-01-26_at_2.30.48_PM.png

10. Once you have set your "Assignment Mode Configuration" select "Save and Review" to save your settings, and then select "Save and Connect" to complete the configuration process.

Screenshot_2023-01-26_at_2.31.49_PM.png

Return to Top

Troubleshooting

If you are running into any errors with your Onfleet integrations, please refresh the page in the Integration Marketplace. If you still have issues, please contact the Onfleet Support Team.