# Associate a customer to a payment made on a Square terminal

**URL:** <https://developer.squareup.com/forums/t/associate-a-customer-to-a-payment-made-on-a-square-terminal/24692>\
**Category:** Questions\
**Tags:** customers-api, payments-api\
**Created:** [December 3, 2025, 4:30am UTC](https://developer.squareup.com/forums/t/associate-a-customer-to-a-payment-made-on-a-square-terminal/24692 "2025-12-03T04:30:03Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![khahn](https://sea1.discourse-cdn.com/square/forums/user_avatar/developer.squareup.com/khahn/32/10887_2.png) [@khahn](https://developer.squareup.com/forums/u/khahn)\
**Post date:** [December 3, 2025, 4:30am UTC](https://developer.squareup.com/forums/t/associate-a-customer-to-a-payment-made-on-a-square-terminal/24692/1 "2025-12-03T04:30:03Z")

</div>

Scenario definition: Store1 has a terminal device. Using the customer API one or more customers have been created for Store1. Customer-A, existing customer create via the API, makes a purchase and pays with a card at the terminal.

How can the payment be associated with payment made at the terminal?

I see in the payment API documentation that a customer\_id value can be sent with the payment but I don’t know how that gets linked to the payment when using a terminal device. If the link cannot be done when a terminal device is used is the a workflow that would support this association when using the POS for iPad? If possible I would like to know how the association could be done using both devices.

The end goal is to subscribe to a payment web hook and capture the customers purchase.

---

<div class="post-metadata">

**Author:** ![Square-Dev-AI](https://sea1.discourse-cdn.com/square/forums/user_avatar/developer.squareup.com/square-dev-ai/32/2513_2.png) [@Square-Dev-AI](https://developer.squareup.com/forums/u/Square-Dev-AI)\
**Post date:** [December 3, 2025, 4:30am UTC](https://developer.squareup.com/forums/t/associate-a-customer-to-a-payment-made-on-a-square-terminal/24692/2 "2025-12-03T04:30:13Z")

</div>

👋 I’m Square Dev AI, here to help answer your question!  
Based on the information you’ve provided, the following documentation will help answer your question:

> **[Customers API Workflows](https://developer.squareup.com/docs/customers-api/how-it-works)**
>
> Learn more about how the Square Customers API processes information.

> **[Take Payments and Build Integrations on Square Hardware](https://developer.squareup.com/docs/in-person-payment-options)**
>
> Use Square's in-person payment solutions to process payments and build payment integrations with the seller's POS application.

> **Additional Documentation**
>
> [Square Developer Documentation](https://developer.squareup.com/docs/pos-api/how-it-works)  
> [Technical Scenarios](https://developer.squareup.com/docs/customers/scenarios)  
> [Payment API: Process Online and In-Person Payments](https://developer.squareup.com/docs/payments-overview)

If this documentation helped you find a solution, please check the box indicating that this reply solves the problem.  
Otherwise one of our Developer Advocates will provide additional assistance shortly.

---

<div class="post-metadata">

**Author:** ![Square-Dev-AI](https://sea1.discourse-cdn.com/square/forums/user_avatar/developer.squareup.com/square-dev-ai/32/2513_2.png) [@Square-Dev-AI](https://developer.squareup.com/forums/u/Square-Dev-AI)\
**Post date:** [December 3, 2025, 8:30pm UTC](https://developer.squareup.com/forums/t/associate-a-customer-to-a-payment-made-on-a-square-terminal/24692/3 "2025-12-03T20:30:20Z")

</div>

To associate a payment made at a Square Terminal with a customer, you can follow these steps:

1. **Terminal API and Customer Association** : When using the Terminal API, you can associate a customer with a payment by including the `customer_id` in the `CreateTerminalCheckout` request. This way, when the payment is processed, it will be linked to the specified customer profile.

2. **Point of Sale API and Customer Association** : For payments made using the Square Point of Sale (POS) application on devices like an iPad, direct association of a customer with a payment at the time of transaction isn’t supported through the API. However, you can manually associate a customer with a payment after the transaction by retrieving the payment details using the Payments API and updating the customer profile accordingly.

3. **Post-Transaction Association** : After a payment is completed, you can use the `GetPayment` endpoint of the Payments API to retrieve the payment details. If the payment was made using the Terminal API and included a `customer_id`, this information will be part of the payment object. For POS transactions, you might need to manually associate the payment with a customer by updating the customer profile with the payment details.

4. **Webhooks** : To capture customer purchases, you can subscribe to payment webhooks. When a payment is completed, the webhook will notify your application, and you can use the payment details to update the customer’s purchase history in your system.

By using these methods, you can effectively associate payments with customer profiles, whether the payment is made through a Terminal device or the POS application on an iPad.

_This answer was reviewed by @Bryan-Square._

---

<div class="post-metadata">

**Author:** ![khahn](https://sea1.discourse-cdn.com/square/forums/user_avatar/developer.squareup.com/khahn/32/10887_2.png) [@khahn](https://developer.squareup.com/forums/u/khahn)\
**Post date:** [December 4, 2025, 11:52pm UTC](https://developer.squareup.com/forums/t/associate-a-customer-to-a-payment-made-on-a-square-terminal/24692/4 "2025-12-04T23:52:29Z")

</div>

If the customer exists in the Square production environment can that customer be associated with the payment prior to the transaction when using a terminal or POS device?

---

<div class="post-metadata">

**Author:** ![Bryan-Square](https://sea1.discourse-cdn.com/square/forums/user_avatar/developer.squareup.com/bryan-square/32/38_2.png) [@Bryan-Square](https://developer.squareup.com/forums/u/Bryan-Square)\
**Post date:** [December 5, 2025, 7:37pm UTC](https://developer.squareup.com/forums/t/associate-a-customer-to-a-payment-made-on-a-square-terminal/24692/5 "2025-12-05T19:37:35Z")

</div>

The seller would have to add the customer to the order that they’re sending to the Terminal. 🙂
