Card Payments
Card payments let a client pay an invoice by card, Apple Pay or Google Pay on the hosted invoice page, next to paying with stablecoins. You connect the Stripe account you already have, and the money goes straight into that Stripe account.
- Plirin never holds or forwards the money. Each payment, and each refund, is made on your own Stripe account.
- Plirin never stores your Stripe keys. It keeps only the ID of the account you connected.
- Plirin never sees a card number. The client types it into Stripe’s payment form.
Who can connect Stripe
Section titled “Who can connect Stripe”Only the account owner can connect or disconnect Stripe, and only from the dashboard. Staff members and API keys cannot, whatever their role. Staff can see that Stripe is connected and which account it is.
You connect an existing Stripe account. Plirin does not create Stripe accounts for you. A Stripe account that is managed by another service (another platform has control of it) cannot be connected, and one Stripe account can be connected to one Plirin account at a time.
Connect Stripe
Section titled “Connect Stripe”- Go to Settings > Integrations and find Stripe.
- Choose Connect Stripe. You are taken to Stripe’s own approval screen.
- Approve the connection on Stripe. You come back to Settings, which finishes the connection and shows the account ID and country.
The approval link works once and expires after 10 minutes. If it has expired, or you cancelled on Stripe, start again from Connect Stripe. Settings tells you which of these happened:
| Message | What it means |
|---|---|
| Stripe is connected | Done. Clients can pay by card once card payments are on for your invoices |
| Stripe wasn’t connected | You cancelled on Stripe’s screen. Try again any time |
| Stripe is reconnected | You approved the same Stripe account that was already connected, and it is active again |
| Stripe didn’t connect this account | Stripe refused it, usually because another service manages that account, or card payments are not available for your account |
| That Stripe account is already connected to another Plirin account | Disconnect it there first, or use a different Stripe account |
| That connection link has expired | Start again |
| Something went wrong connecting Stripe | Try again. If it keeps happening, contact support |
Connecting always uses your live Stripe account, even while Plirin is in test mode. See Test mode below.
If Stripe pauses charges on your account (for example while it asks you for more verification), the Stripe section says so in red and the card option disappears from your live invoices until you resolve it in your Stripe dashboard. Test-mode invoices are not affected, because they do not use your live account’s charge status. Nothing in Plirin needs to change: it comes back by itself once Stripe lets the account take payments again.
Turning card payments on or off for invoices
Section titled “Turning card payments on or off for invoices”There are two switches, and the more specific one wins.
- Your default. In Settings > Invoicing, Accept card payments by default decides whether your invoices offer card payment unless they say otherwise. It is on by default. Only the account owner can change it.
- One invoice. When you create an invoice, and afterwards in the invoice’s details under Card payments, you can turn card payment on or off for that invoice alone. Use my default hands it back to your default. Anyone who can manage invoices can change this.
Turning card payment off on an invoice also cancels a card payment the client has started but not finished. If a card payment is already being processed, Plirin refuses to turn it off until Stripe has finished with it.
What your client sees
Section titled “What your client sees”On the hosted invoice page, below whichever other ways to pay the invoice offers, the client sees a Pay by card button. It opens Stripe’s payment form on the same page, in your brand colour. Apple Pay and Google Pay appear where the client’s device supports them, and Stripe decides which payment methods to show from those you have enabled in your Stripe dashboard.
The client pays what is still owed on the invoice. While the payment is being confirmed the page says so and updates by itself, so the client does not pay twice. When it succeeds, the invoice becomes paid, the client is emailed a receipt (when the invoice has their email address), and you are emailed that you were paid.
The card option is shown only when all of these hold. A client is never told which one is missing; they just do not see the button.
- Card payments are on for your account, and Stripe is connected and able to take charges.
- Card payment is on for the invoice (its own switch, or your default).
- The invoice is sent or overdue and still has a balance.
- The invoice has no milestones (those are billed one stage at a time) and is not set to be collected outside Plirin.
- The amount is above Stripe’s minimum for the currency, and the currency is one Plirin supports.
If a client pays by stablecoin while a card payment is still processing, Plirin records it and flags the invoice in the audit log so you can check both.
The amount a client pays is the invoice total. Plirin never adds a fee on top of it. Any Plirin fee is taken from your payout, never charged to your client.
- Stripe’s own fees are charged to you by Stripe, on your Stripe account, under your Stripe agreement.
- Plirin’s fee applies only once Plirin has switched the card fee on for the platform. Until then it is zero. Once it is on, it applies to merchants who are not on a paid plan: the free Starter plan, and also an account with no subscription or a cancelled one. Merchants on a paid plan pay no Plirin fee on card payments. The rate is set by Plirin and is planned at about 0.5%.
The fee taken on each payment is recorded with it and returned as platform_fee_amount by the API.
Refunds and disputes
Section titled “Refunds and disputes”- Refunds. Refund a card payment from the invoice, or from your Stripe dashboard. Either way the refund goes back to the client’s card and the invoice gets a credit note. See Refunds and Refund Approval.
- Disputes. If a client disputes a card payment with their bank, Plirin emails you with the deadline and shows a banner on the invoice. You answer the dispute in Stripe. See Card Disputes.
Test mode
Section titled “Test mode”Your Plirin account has a test mode and a live mode (see Test and Live Mode). You connect Stripe once, and the design is that the same connection serves both.
- An invoice created in test mode takes card payments in Stripe’s test mode: use Stripe’s test card numbers. No real money moves, nothing reaches your live Stripe balance, and the payment is marked Test in the invoice’s details.
- An invoice created in live mode takes real payments on your live Stripe account.
- Test and live records never mix: a Stripe test event never changes a live invoice, and a live event never changes a test one.
Disconnecting Stripe
Section titled “Disconnecting Stripe”Choose Disconnect in Settings > Integrations > Stripe. Plirin revokes its access to your Stripe account, and card payments stop at once: clients no longer see Pay by card. Payments you already received stay in your Stripe account.
You can also end the connection from your own Stripe dashboard, by removing Plirin from your connected apps. Plirin learns of it from Stripe and the connection ends the same way.
A card payment that was still open when access ended is left as it is, because Plirin can no longer ask Stripe how it ended. Check it in your Stripe dashboard, and if the money arrived, record the payment on the invoice by hand (see Offline invoice payments). The audit log lists these payments under stripe.payments_unreachable. To refund a payment after disconnecting, refund it in your Stripe dashboard.
Connecting again later is the same as connecting the first time.
Reconnecting Stripe
Section titled “Reconnecting Stripe”When Plirin moves to a new Stripe platform account, the connection your Stripe account approved before needs approving once more. Until you reconnect, card payments are paused for your invoices; nothing else changes. You will see it three ways: an email to the account owner (once), a strip at the top of every dashboard page, and a note on the Stripe card in Settings.
- In Settings > Integrations > Stripe, choose Reconnect Stripe (the account owner only).
- Approve it on Stripe’s screen with the same Stripe account.
It is one approval on Stripe, with no new verification. Your earlier payments and refunds stay on your own Stripe account and keep working. If the link in the email asks you to sign in first, you are taken back to Settings afterwards. To connect a different Stripe account instead, choose Disconnect, then Connect Stripe.