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.

CategoryPayments
Data flowTwo-way
SetupYour own API keys
PlansEvery plan
How the money moves

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.

Pitch2Sale · Invoice SentPaid

INV-0057

ClientNorthwind Traders
Amount due$0
PaymentStripe
Stripe Checkout

Northwind Traders

CardVisa ending 4242
$12,400
  1. 01Client clicks Pay with Stripe on the invoice in the client portal.
  2. 02Pitch2Sale opens a Stripe checkout for the amount due.
  3. 03The client pays by card on Stripe's own page.
  4. 04Stripe calls your webhook URL. The signature is checked against your secret.
  5. 05The payment is recorded and the invoice moves to Paid.

What it does in Pitch2Sale

01 · Portal button

Pay with Stripe

Every unpaid invoice in the client portal gets the button when there is an amount due.

02 · Routing

Every currency but rupees

Non-INR invoices use Stripe; rupee invoices go to Razorpay if you connect it.

03 · Refunds

Both directions

Refund from the invoice's Payment History, or in Stripe, and the invoice updates either way.

04 · Test first

Test and Live modes

Try it with test keys and test cards, then switch to Live. Keys are encrypted at rest.

Set it up

  1. Open Settings → Payments.

    You need an admin role, or a role with the Settings edit permission.

  2. Turn on Test mode on the Stripe card.

    Use Stripe's test keys while you try it out.

  3. Paste your Publishable key and API secret.

    Both come from your Stripe dashboard. The secret is encrypted when you save.

  4. Copy the Webhook URL and add it in Stripe.

    Create a webhook endpoint in the Stripe dashboard with that URL.

  5. Paste the Webhook signing secret.

    Stripe shows it on the endpoint you just created.

  6. Click Save changes.

    The card shows Connected · Test. Pay a test invoice from the portal with a test card.

  7. Switch to Live mode.

    Enter your live keys and save again.

What syncs, and what does not

DirectionWhatWhen
Pitch2Sale → StripeA checkout for the invoice's amount dueThe client clicks Pay with Stripe
Stripe → Pitch2SaleA payment on the invoice (method: Stripe). Status becomes PaidPayment succeeded
Stripe → Pitch2SaleThe failed attempt is noted; the invoice stays unpaidPayment failed
Both waysRefunds, full or partial, update the invoiceYou refund in Pitch2Sale or in Stripe
Not syncedStripe 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.