AI is moving from chatbots that answer questions to agents that take real actions: booking the table, filling the cart, running the errand. More and more of that activity is happening in iMessage, where people already talk to each other and, increasingly, talk to agents built on Linq. An agent that lives in the thread should be able to finish the job in the thread, and finishing the job usually means getting paid.
Until now, it could not. An agent on Linq could hold a conversation, send rich messages, and act on a user's behalf, but the moment money entered the picture, it paused the conversation. Agents pasted a Stripe link, sent a payment handle, or pushed the user to a web page and hoped they came back. Every one of those steps is a drop off point.
Today we're launching Agent Pay, a way for agents to request payments directly inside an iMessage conversation. An agent creates a payment request and drops the checkout into the chat as a tappable payment card. The recipient taps it, an App Clip opens with the amount and line items, they checkout with Apple Pay and never leave the Messages app. Funds settle to your own Stripe account, and your server gets a webhook. Agent Pay is available to all Linq customers today.
What agents can charge for
Agent Pay covers the three moments where money most often shows up in an agent conversation.
The first is paying for access to the agent. If your product gates access behind a subscription, usage, or a one-time unlock, the paywall can live directly in the thread instead of in an external link they’re likely to bounce from. An agent can now ask a new user to start a plan in the same conversation where they signed up.
The second is paying for what the agent does. When an agent shops, books, or orders on someone's behalf, it can settle the bill in place. Now, a grocery shopping agent can build the cart and request $40 to check out. A concierge agent can instantly collect a $25 deposit to hold a reservation. Agents finish the task in the same thread where it started.
The third is funding a wallet the agent can spend from. Some of the most useful agent behavior is autonomous: reorder groceries when they run low, grabbing the reservation the moment it opens, book the cheaper flight when the price changes. Those moments can't wait for a checkout tap. With Agent Pay, a user can top up a balance in the thread (ie. $100 for the week's errands) and the agent draws it down as it works, reporting back as it goes. Instead of approving every purchase, users give your agent a budget.
How it works
Collecting a payment is two API calls and one webhook. You create a payment request with an amount and currency, and you get back a hosted checkout_url. You send that URL into the chat as a link message part, so it arrives as a card rather than a bare URL. The recipient pays, and you receive a payment.succeeded webhook.
This call creates the request:
curl -X POST https://api.linqapp.com/api/partner/v3/payment_requests \
-H "Authorization: Bearer $LINQ_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"amount": 4000,
"currency": "usd",
"description": "Grocery order, Whole Foods",
"metadata": { "order_id": "order_8675309" }
}'
Payments run on Stripe Connect, so recipients can pay with Apple Pay, Visa, Mastercard, Amex, and any other method Stripe supports, and no card data touches your servers. Charges are created on your own connected account with you as the merchant of record, which means the funds, the payout schedule, and the customer relationship stay yours. Linq orchestrates the request and the checkout and is never in the funds flow. Refunds and disputes are handled in your Stripe Dashboard.
The checkout meets the recipient wherever they are. On a supported iPhone, the link opens an Agent Pay App Clip, a native checkout sheet with no install. On Android, on desktop, and on iPhones where the App Clip hasn’t activated yet, the same URL opens a web checkout. This means a single request works across every device.
Building for agent commerce
Agents are becoming a category of software that people pay for and pay through, and the surface where that happens matters. The Messages app is the most-used surface on the phone, and it’s where Linq agents already live. Agent Pay is the first step in giving those agents a full commercial loop inside the conversation, alongside iMessage Apps, group chat, and the rest of the Partner API.
To start collecting, connect Stripe in your Linq dashboard and read the guide:


