PayPal
The PayPal tool gives your assistant a way to take a payment without juggling a checkout page in the middle of a call. A caller agrees on a price, the assistant generates a hosted PayPal payment URL pointed at your merchant account, and the link goes out — usually via SMS — so the customer can complete checkout on PayPal's own page. The actual money movement, the receipt, the fraud screening — all of that happens on PayPal. Insighto's job is to build the link and hand it off cleanly.
This is the simplest tool in Insighto. It's not a full e-commerce checkout, not a subscription manager, and not a billing system. It's a way to put a "pay me $X for Y" link in front of a customer in the moment they're willing to pay.
What you can do with this tool
- Generate a one-time PayPal payment link with a description and an amount.
That's the production-ready surface. There's also a subscription-link function in the codebase but it's currently broken — see below.
Business use cases
Deposit collection during a service-business voice call
A moving company's voice agent qualifies inbound jobs, quotes a price range, and asks for a non-refundable $200 deposit to hold the date. Customer agrees. The assistant calls generate_payment_link with description="Booking deposit — moving services on May 28" and amount=200, then calls send_sms to text the link to the caller's phone. Says "I've texted you a PayPal link. We'll hold your slot for the next 30 minutes while you complete the payment." Conversion goes up because there's no "okay, log into our website" friction.
Consultation prepayment for a coaching practice
A business coach charges $150 for a one-hour discovery call. Her voice assistant qualifies leads — only paying customers get a calendar invite. Caller agrees to the consultation, the assistant generates a PayPal link for $150, texts it, and tells the caller the booking is confirmed once the payment completes. The coach reconciles paid bookings in her PayPal dashboard before each morning's calls.
Add-on sales during a customer-service chat
A subscription product's support chat handles cancellation requests. The assistant offers a discounted add-on as a save attempt: "If you stay, I can offer you the premium tier for $9 this month." If the customer accepts, the assistant generates a payment link for $9 and sends it via SMS. The customer completes payment on PayPal; the support agent reconciles manually or via a webhook on the merchant side.
Restaurant pre-payment for catering orders
A catering operation takes orders by phone. Once the order is confirmed and the total is computed (the assistant adds it up), the agent calls generate_payment_link with the total and the order description, texts the link, and tells the customer the order is locked in once payment clears.
How this actually works
The URL points to PayPal's hosted checkout page (paypal.com) with the merchant email, item description, amount, and currency encoded in the URL. Customer opens it, signs into PayPal (or pays as guest), and PayPal handles the rest. Insighto does not call PayPal's REST API, does not create a PayPal invoice record, and does not see the payment status afterward. Reconciliation happens via your PayPal account's notification emails, your PayPal dashboard, or a separate IPN/webhook handler on your side.
Connecting PayPal
Step-by-step
- Tools & Integrations → PayPal → Add.
- Provide:
- PayPal email — the merchant account that will receive funds. Triple-check this. Funds go wherever this email points.
- Currency — ISO 4217 code (e.g.
USD,EUR,GBP,CAD). Stored in uppercase.
- Name the connection, save.
No OAuth, no client ID, no API key. Just an email and a currency. If you switch merchant accounts, update the email here.
Prerequisites
- A PayPal Business account capable of receiving payments in the currency you select.
Functions the assistant can call
generate_payment_link
Builds a one-time PayPal payment URL and returns it.
- Arguments
description(string, required) — what the customer is paying for. Truncated to 125 characters; shows up on the PayPal checkout page and on the customer's receipt.amount(number, required) — the amount to charge in the connection's configured currency.
- Returns —
"Payment link is: https://www.paypal.com/cgi-bin/webscr?...".
generate_subscription_link
Currently broken. The implementation has unresolved variables and will error if invoked. Don't expose this function on assistants until it's fixed in a future release. For subscription billing, use Stripe-based custom tooling.
Example invocation
The assistant generates a deposit link mid-call:
{
"function": "generate_payment_link",
"arguments": {
"description": "Booking deposit — moving services on May 28",
"amount": 200
}
}
Result returned to the assistant:
"Payment link is: https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&business=billing%40acme.com&item_name=Booking%20deposit%20%E2%80%94%20moving%20services%20on%20May%2028&amount=200.0¤cy_code=USD"
The assistant then calls send_sms to text the link, and says: "I've sent the payment link to your phone — your slot is held for the next 30 minutes."
System prompt guidance
Be explicit about when to charge and how much:
When the customer agrees to a service that requires a deposit (any quoted price above $50), call
generate_payment_linkwith a cleardescriptionand the agreedamount. Immediately after, callsend_smswith the returned URL to text it to them. Tell them the booking is held pending payment.
You can also chain it with a Calendar booking:
Don't book the appointment until they've agreed to the deposit. The flow is: agree on time → generate payment link → text the link → confirm the booking once they tell you they paid.
What this tool isn't
- Not a checkout flow. No PayPal invoice record is created. There's no "track this payment" object on the PayPal side.
- Not payment-status tracking. The assistant has no way to check whether the customer paid. You confirm payment some other way.
- Not a subscription billing system. The subscription function is broken.
- Not refunds. Refunds happen manually in your PayPal dashboard.
For invoice records, status tracking, refund handling, or recurring billing, build a Custom tool on PayPal's REST API (/v2/checkout/orders, /v2/invoicing/invoices) or use a Stripe-based custom tool.
Failure modes
- Wrong merchant email — the link still works (PayPal renders the checkout), but funds land in the wrong account. Verify at setup, ideally with a $1 test transaction.
- Unsupported currency — the customer reaches PayPal and sees an error. Test currency support with a sandbox merchant first.
- Long descriptions — anything past 125 characters gets silently truncated. Keep descriptions short and specific.
- Subscription link — known broken. Don't enable that function.
Where to next
- Send the payment link via SMS for reliable delivery.
- For invoice records, status checks, refunds, or subscriptions, build a Custom tool on PayPal's REST API.
- Pair with Google Calendar to gate bookings behind a paid deposit.