Arpixa feature

Payments: Your Own Razorpay and Stripe Keys, Money Straight to You

Plenty of tools will collect payments for you and keep a slice. Arpixa Payments takes a different position: you connect your own Razorpay or Stripe account, so the checkout runs on your gateway, the money lands in your bank, and Arpixa never touches it. What Arpixa does is make sure the invoice, the confirmation, and the record all agree.

Arpixa payment settings with Razorpay and Stripe connected, beside a client paying an invoice on a public pay page

Why getting paid takes longer than it should

Most late payments are not disputes. They are friction. The invoice was a PDF attachment, so paying it meant opening a banking app and typing account numbers. Or the payment link went to a different address than the invoice. Or the client paid and nobody noticed for a week, so a reminder went out anyway and the relationship took a small, unnecessary hit.

Behind that sits a reconciliation problem. The gateway dashboard knows a payment arrived. The invoice, in a different system, does not. Someone has to connect the two by hand, and until they do, every question about whether a client is up to date has an unreliable answer. We covered the tracking side in how to track client payments.

And then there is the platform-fee problem. A lot of all-in-one tools route your client's money through their own merchant account and keep a percentage. On agency invoice sizes, that adds up to a meaningful number for something that is really just a database write.

What Arpixa Payments is

Arpixa Payments is a bring-your-own-gateway payment layer. You connect your own accounts, and Arpixa acts as the thing that ties the checkout to the right invoice and keeps the record straight.

Connecting Razorpay means pasting your key id and key secret. Connecting Stripe means pasting your secret key, and optionally your publishable key. In both cases Arpixa verifies the credentials against the gateway before saving them, so a typo fails at setup rather than at the moment a client tries to pay. Verified keys are encrypted at rest with AES-256-GCM and held in a private area of the workspace that the browser app cannot read. Either gateway can be disconnected later.

Bank transfer is also supported for agencies that need it: bank name, account holder, account number with confirmation, IFSC code, and branch, encrypted the same way, and shown on public invoices masked to the last four digits.

The positioning follows from the architecture. Because the checkout is created on your gateway account, funds never pass through Arpixa, so there is nothing for Arpixa to take a percentage of.

What you can do with payments

Arpixa payment capabilities
Capability What it does
Your gateway account, not ours You paste your own Razorpay or Stripe keys. Arpixa verifies them against the gateway, encrypts them at rest with AES-256-GCM, and uses them to create checkouts. Client money settles directly into your account, and Arpixa takes no cut of it.
Razorpay for India, Stripe for everywhere else Razorpay covers UPI, cards, net banking, and wallets for INR invoices through an inline checkout on the page. Stripe covers international card payments through a hosted Checkout redirect. You can connect both and set a default.
Checkout that knows the balance Arpixa computes the outstanding balance from the invoice total minus any advance and anything already collected, and charges that. A paid invoice cannot be paid again, and an invoice with nothing outstanding will not open a checkout.
Signature-verified webhooks Payment confirmations arrive by webhook and are cryptographically verified before anything is written. Arpixa also de-duplicates on the gateway payment id, so a retried or replayed webhook cannot double-record the same payment.
Saved payment methods for repeat clients A signed-in client can save a card, UPI handle, bank, or wallet against your agency, set a default, and remove one later. For retainer work you can charge a saved card off-session rather than sending another link.
Refunds, in full or in part Refund the whole captured amount or a specific amount, through whichever gateway took the payment. Requests are idempotent so a double-click cannot double-refund, the action is restricted to the workspace owner, and both sides get an email.

How a payment actually completes

The client opens the invoice, either on the public pay page — no login, nothing to sign up for — or in their portal, where a Pay Now action appears only if there is a balance outstanding.

Arpixa checks the invoice is not already paid, computes what is outstanding by subtracting any advance and anything already collected from the total, and refuses to open a checkout if that comes to zero. Then, depending on the gateway:

  • Razorpay — an order is created on your account and the Razorpay checkout opens inline on the page, with the client's name and email prefilled, covering UPI, cards, net banking, and wallets.
  • Stripe — a hosted Checkout session is created and the client is redirected, returning to the pay page afterwards.

Confirmation is verified server-side rather than trusted from the browser. For Stripe, Arpixa retrieves the Checkout session and confirms its payment status. For Razorpay, it verifies an HMAC signature over the order and payment identifiers. On success the invoice is marked Paid with the time, the gateway, and the payment id, and confirmation emails go to the client and to you.

Webhooks are the belt to that braces. Gateway webhooks are verified against your webhook secret — Stripe's signature check, or an HMAC over the raw body for Razorpay — before anything is written, and Arpixa compares the incoming payment id against the last one it recorded, so a retried or replayed webhook cannot double-record a payment. The client sees a plain confirmation that the invoice is now paid.

Arpixa vs the usual stack

A gateway dashboard plus accounting, or one record

The gateway knows a payment arrived and the invoice does not, so someone reconciles by hand. Arpixa ties the checkout to the invoice and records the payment against the client.

Instead of juggling
StripeCard paymentsPayPalPayment linksQuickBooksReconciliationXeroBooks
You get
ArpixaAll of it, connected

Saved methods, partial payments, and refunds

For clients who pay you repeatedly, a signed-in client can save a payment method against your agency: a card with its brand, last four digits, and expiry, or a UPI handle, bank, or wallet. They can set a default and remove one later. With a saved Stripe card you can charge off-session, which is the difference between a retainer that renews and a retainer you chase.

Partial payments are supported on the record-keeping side. Recording a payment below the total accumulates the amount paid, appends an entry to the invoice's payment history with the amount, method, provider, transaction reference, and date, and sets the invoice to Partially Paid. This is also how you log a payment that happened off-platform — a bank transfer, a cheque — from the client's Payments tab. Worth being precise about one thing: gateway checkout always charges the full remaining balance, so a client cannot decide at the checkout screen to pay half.

Refunds go back through whichever gateway took the payment, either in full or for a specific amount you enter in the invoice currency. Each request carries an idempotency key, so a double-click cannot produce two refunds. Only the workspace owner can issue one, deliberately — it is not delegated to team roles. Both your agency and the client get an email, and the gateway's own refund state, whether pending, processed, succeeded, or failed, is passed through as-is rather than assumed.

How it connects to the rest of Arpixa

  • Every payment is against an invoice, and updates its status, amount paid, and payment history.
  • Payment history appears on the client record in your CRM, with a total collected figure and a Record Payment action for off-platform payments.
  • Clients pay from the branded client portal or a public pay page, and see a My Payments section.
  • Analytics reports collected revenue, outstanding balance, and invoice aging.
  • Automations can react to an invoice being paid, for example with a thank-you message or a follow-up task.

Let clients pay, and keep all of it

Start free in minutes, or log in to your Arpixa workspace. See pricing for plan details.

Arpixa has a real Free plan (not a trial), with Starter at $12/month, Pro at $29/month, and Advanced at $89/month. Arpixa charges no transaction fee on client payments, because they run on your own gateway account; gateway fees are set by Razorpay or Stripe. Emailing invoices to clients requires Starter or above. Annual billing lowers the effective monthly cost, and the pricing page is the source of truth for current plan limits.

How to set up payments

  1. Open payment settings and paste your Razorpay key pair, your Stripe secret key, or both.
  2. Let Arpixa verify each set of keys against the gateway before saving them encrypted.
  3. Add your bank details if you also want to offer manual transfer, shown to clients masked to the last four digits.
  4. Pick a default payment method for new invoices.
  5. Send an invoice, and the client pays from the public pay page or their portal.
  6. The webhook marks the invoice paid, confirmation emails go out, and payment history is recorded.

Related reading: payment links for agencies, invoicing clients with Stripe, and Razorpay invoicing for agencies.

Frequently asked questions

Which payment gateways does Arpixa support?

Razorpay and Stripe, both connected with your own API keys rather than through a platform account. Razorpay handles UPI, cards, net banking, and wallets and is positioned for INR invoices; Stripe handles international card payments through hosted Checkout. Bank transfer is supported as a manual option where you store your account details and record the payment yourself. PayPal is not available.

Does Arpixa take a cut of my client payments?

No. Because you connect your own gateway keys, the payment is created on your gateway account and the money settles directly into your bank account. Arpixa never holds client funds and takes no transaction fee. The only thing you pay Arpixa is your subscription; gateway fees are whatever your Razorpay or Stripe agreement says.

How are my API keys stored?

Keys are verified against the gateway when you connect them, then encrypted at rest with AES-256-GCM and held in a private area of your workspace that is not readable by the client-side app. Bank details are encrypted the same way, and only the last four digits of an account number are shown on public invoices.

How does Arpixa know an invoice has been paid?

Two ways, both server-side. On return from checkout, Arpixa verifies the result with the gateway directly: for Stripe it retrieves the Checkout session and checks its payment status, and for Razorpay it verifies an HMAC signature over the order and payment identifiers. Separately, gateway webhooks are verified against your webhook secret and mark the invoice paid, de-duplicated on the payment id so a replayed webhook cannot double-record.

Can I take a partial payment?

You can record one. Recording a payment smaller than the total accumulates against the amount paid, appends an entry to the invoice payment history with the amount, method, provider, transaction reference, and date, and sets the invoice to Partially Paid. Gateway checkout, however, always charges the full remaining balance, so a client cannot choose to part-pay at the checkout screen.

Can I issue a refund?

Yes, and it can be full or partial. You choose the amount in the invoice currency, or omit it to refund everything captured, and Arpixa sends the refund through whichever gateway took the payment. Requests carry an idempotency key so a repeated click cannot refund twice, only the workspace owner can issue one, and both your agency and the client are emailed. Refund states from the gateway are passed through rather than guessed at.