# Square recipes

> Text customers after a sale or a booking in Square.

Two recipes for Square. Each names its trigger and the BlueBot step, lists the fields to map and says how to test it with your own number before anyone else gets a text.

## How Square connects

- **[Zapier](https://usebluebot.com/docs/zapier)**: BlueBot’s Zapier app has a Send Text action and instant triggers for incoming texts and every change of state.

## Thank customers after a sale

| Part             | What it is                       |
| ---------------- | -------------------------------- |
| Trigger          | When a payment is made in Square |
| Action           | BlueBot’s **Send Text** action   |
| Connects through | [Zapier](https://usebluebot.com/docs/zapier)           |

### Steps

1. Start a Zap with Square’s trigger for a new payment.
2. Add a Filter by Zapier step so it goes on only when the sale has a customer with a phone number.
3. Add BlueBot’s Send Text action and map that phone to To.

### Map the fields

| BlueBot field                | Map it to                                                                                                                                   |
| ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| To                           | The person’s mobile number from Square. US numbers can leave off the +1.                                                                    |
| Text                         | Thanks for coming in today, {{first_name}}! Reply here if you have any questions about your order.                                        |
| `{{first_name}}` in the text | Square’s first name field.                                                                                                                  |
| Metadata                     | `source` set to `square`, and `record_id` set to the record’s id, so the status and reply webhooks for this text can find the record again. |
| Service                      | Auto, the default: iMessage when the person uses it, otherwise SMS through your iPhone.                                                     |

### Test it

Put your own number in **To** and press **Test step**. A text arrives on your phone from your own number, and Zapier shows the message BlueBot returned with `state: "queued"`. Then map Square’s field back into **To** and turn the Zap on.

## Confirm appointments

| Part             | What it is                              |
| ---------------- | --------------------------------------- |
| Trigger          | When an appointment is booked in Square |
| Action           | BlueBot’s **Send Text** action          |
| Connects through | [Zapier](https://usebluebot.com/docs/zapier)                  |

### Steps

1. Start a Zap with Square’s trigger for a new booking.
2. Add BlueBot’s Send Text action and map the customer’s phone to To.
3. Write the text with the service and time mapped in.

### Map the fields

| BlueBot field                | Map it to                                                                                                                                   |
| ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| To                           | The person’s mobile number from Square. US numbers can leave off the +1.                                                                    |
| Text                         | Hi {{first_name}}, you’re booked for a {{service}} on {{date}} at {{time}}. Reply here to change it.                                |
| `{{first_name}}` in the text | Square’s first name field.                                                                                                                  |
| `{{service}}` in the text    | Square’s service field.                                                                                                                     |
| `{{date}}` in the text       | Square’s date field.                                                                                                                        |
| `{{time}}` in the text       | Square’s time field.                                                                                                                        |
| Metadata                     | `source` set to `square`, and `record_id` set to the record’s id, so the status and reply webhooks for this text can find the record again. |
| Service                      | Auto, the default: iMessage when the person uses it, otherwise SMS through your iPhone.                                                     |

### Test it

Put your own number in **To** and press **Test step**. A text arrives on your phone from your own number, and Zapier shows the message BlueBot returned with `state: "queued"`. Then map Square’s field back into **To** and turn the Zap on.

## Before you turn it on

- Text only people who asked to hear from you. Anyone who replies STOP goes on your stop list, and BlueBot cancels texts to them. [Stop words](https://usebluebot.com/docs/concepts/stop-words)
- A text that can’t go yet waits with a hold rather than failing: quiet hours, your Mac away, a daily limit. [Holds](https://usebluebot.com/docs/concepts/holds)
- [Square with BlueBot](https://usebluebot.com/integrations/square) on the integrations page says what else the two do together.
