Stripe
Your clients pay invoices by card from the client portal, on Stripe's own checkout. The payment is written to the invoice and its status changes to Paid, and refunds flow both ways.
From invoice to Paid in one loop
Pitch2Sale opens a Stripe checkout for the amount due. Stripe tells Pitch2Sale when the payment succeeds, in a message signed with your webhook secret.
INV-0057
Northwind Traders
- 01Client clicks Pay with Stripe on the invoice in the client portal.
- 02Pitch2Sale opens a Stripe checkout for the amount due.
- 03The client pays by card on Stripe's own page.
- 04Stripe calls your webhook URL. The signature is checked against your secret.
- 05The payment is recorded and the invoice moves to Paid.
What it does in Pitch2Sale
Pay with Stripe
Every unpaid invoice in the client portal gets the button when there is an amount due.
Every currency but rupees
Non-INR invoices use Stripe; rupee invoices go to Razorpay if you connect it.
Both directions
Refund from the invoice's Payment History, or in Stripe, and the invoice updates either way.
Test and Live modes
Try it with test keys and test cards, then switch to Live. Keys are encrypted at rest.
Set it up
- Open Settings → Payments.
You need an admin role, or a role with the Settings edit permission.
- Turn on Test mode on the Stripe card.
Use Stripe's test keys while you try it out.
- Paste your Publishable key and API secret.
Both come from your Stripe dashboard. The secret is encrypted when you save.
- Copy the Webhook URL and add it in Stripe.
Create a webhook endpoint in the Stripe dashboard with that URL.
- Paste the Webhook signing secret.
Stripe shows it on the endpoint you just created.
- Click Save changes.
The card shows
Connected · Test. Pay a test invoice from the portal with a test card. - Switch to Live mode.
Enter your live keys and save again.
What syncs, and what does not
| Direction | What | When |
|---|---|---|
| Pitch2Sale → Stripe | A checkout for the invoice's amount due | The client clicks Pay with Stripe |
| Stripe → Pitch2Sale | A payment on the invoice (method: Stripe). Status becomes Paid | Payment succeeded |
| Stripe → Pitch2Sale | The failed attempt is noted; the invoice stays unpaid | Payment failed |
| Both ways | Refunds, full or partial, update the invoice | You refund in Pitch2Sale or in Stripe |
| Not synced | Stripe customers, products, subscriptions, payouts and fees stay in Stripe. Disputes are logged, not acted on | — |
Common questions
The client paid but the invoice still says Sent.
Stripe could not reach the webhook, or the signing secret does not match. Fix it in the Stripe dashboard, then use Record Payment.
Can a client pay part of an invoice?
The checkout is for the full amount due. Record other amounts by hand with Record Payment.
Can I refund from Pitch2Sale?
Yes. Use Refund Payment in the invoice's Payment History. You need permission to record payments.
Can I use Stripe and Razorpay together?
Yes. Rupee invoices go to Razorpay and other currencies to Stripe.
Send the invoice. Let it mark itself paid.
Connect Stripe in Test mode today and run the whole loop with a test card.