Settings — Payments
Connect the processor that charges your patients, write payment instructions, and set the default shipping price.
This is the tab where you connect the payment processor that charges your patients, and set the shipping price added to their orders.
Payments is not Billing. Three money pages look alike. This one configures the processor that takes money from patients. /billing repeats that card and adds the checkout activity. /settings/overview is the card you pay GEN Health with. Changing one never changes the others.
Questions people ask about this page
What is the difference between Payments and Billing?
This page is configuration: tiles, API keys, instructions, shipping. /billing repeats the same Payment processor card and adds the transactions table under it. Either page can connect a processor; only /billing shows what patients paid.
I have no Payment processor card. Where did it go?
Your client is on the Affiliate model, which takes payment through the paired provider network, so the picker is hidden on both this page and /billing. The /billing subtitle changes to Review patient checkout activity. Payments are processed through your provider network. Ask your network which processor is live.
My tile says Active but also Missing keys. Is checkout working?
No. Missing keys means it was made active before credentials were saved. Click the tile, fill every field not marked Optional, then Verify and save. The chip turns green.
What does None actually do?
None is subtitled Test mode — no real charges. Patients still reach a checkout screen and orders are still created, but no money moves, and every product row on /products picks up the chip Needs payment setup. Safe to build in, dangerous to go live in.
Why is the Vault charge orders switch greyed out?
The helper reads Requires API Orders to be enabled for this client. Contact your Gen Health administrator to enable API Orders first. Only GEN Health can set that flag. Finite installment billing needs it too, plus vault charge orders on first.
I typed a shipping price and nothing happened.
Amount (USD) saves on blur, not as you type. Click elsewhere or press Enter, and look for the toast Default shipping price updated.
Where to find it
Left menu → Settings → card Payments (Patient checkout processor, API keys, instructions, and default shipping price.). Direct link: /settings/payments. Two older links also land here: /settings/payment-processor and /settings/shipping. Visible to: Client Admin only. Hidden entirely for Review Only (gfe_only) clients.
What is on this page
| What you see | What it does |
|---|---|
| Card Payment processor — Manage billing processor and API keys | A grid of nine tiles. One is active at a time. Hidden for Affiliate clients. |
| Cards Vault charge orders and Finite installment billing | One switch each: Enable vault charge orders, Enable finite installment billing. Both are for API-created orders and both are off unless GEN Health enabled API Orders for you. |
| Card Default shipping price | One field, Amount (USD), applied to every product without its own override. |
The nine processor tiles, in the order they appear
| Tile | Subtitle | Credential fields |
|---|---|---|
| None | Test mode — no real charges | None. Demo checkout. |
| Custom Payment Instructions | Show instructions instead of checkout | Written instructions instead of keys. |
| Stripe | Credit card processing | Publishable Key, Secret Key, Webhook Secret (Optional) |
| Authorize.Net | Payment gateway | API Login ID, Transaction Key, Signature Key, Public Client Key |
| NMI | Network Merchants Inc. | Private API Security Key, Public API Key / Tokenization Key, Webhook Signing Key (Optional) |
| SimPay / SlidePay | SimPay gateway / SlidePay gateway | The same three as NMI |
| Square | Web Payments SDK checkout | Application ID, Access Token, Location ID |
| Whop | Hosted checkout | API Key, Company ID, Webhook Secret (Optional) |
How to connect a payment processor
Open the page
In the left menu, click Settings, then click the Payments card.
Click the processor you use
In the Payment processor card, click the tile — for example Stripe. A dialog opens whose title is the processor name.
Paste the keys
Fill every field that is not marked Optional. A field that already holds a saved value shows Saved next to its label and dots in the box; leave it alone to keep it. Use the eye button (Show value / Hide value) to check what you pasted.
Handle the webhook, then test
Stripe, Authorize.Net, and Whop show a read-only Webhook URL with a Copy URL button. Stripe and Whop register it for you on save; for Authorize.Net paste it into your own dashboard. Then click Test connection — success toasts Connection verified and saves nothing.
Save
Click Verify and save (it reads Verify and update if credentials already existed). On success you get Payment processor verified and configured successfully, and the tile gains a green Active chip.
Clicking a tile that is already configured but not active makes it active immediately — no dialog, just the toast Payment processor set to {processor}. That is how you switch back to a processor whose keys you already saved.
How to show payment instructions instead of a checkout form
Click the tile
Click Custom Payment Instructions. The dialog of the same name opens, headed Patient-facing payment instructions.
Write them
Read the warning first: These instructions replace the checkout form. Orders stay in payment-required status until staff updates them manually. Then type into the editor, whose placeholder is Explain how the patient should pay, where to send payment, and what to include.
Save
Click Save instructions. If instructions already exist the button reads Update instructions, and clearing the editor turns it into Clear instructions.
How to set the default shipping price
Type the amount
Scroll to Default shipping price and type a number into Amount (USD), for example 7.50. The $ is printed in the box; do not type it.
Commit it
Click outside the field or press Enter. The toast reads Default shipping price updated. Leave the field blank, or set 0, for free shipping.
Every setting on this page
| Setting | What it controls | Default |
|---|---|---|
| Payment processor tiles | Which processor takes patient payments at checkout. Exactly one is active. | None (test mode) |
| Processor credentials dialog | API keys per processor, plus the webhook URL where one applies. Delete credentials removes them; if that processor was active, you are left with none. | Empty |
| Custom payment instructions | Rich text shown to the patient in place of the checkout form. | Empty |
| Enable vault charge orders | Lets API callers send stored payment references with medication_amount. GEN Health charges the stored method when the provider approves the case or lab review is released. | Off |
| Enable finite installment billing | Pay-in-full or split-3 medication billing on vault-charge orders, using NMI, SimPay, or SlidePay. Split-3 is offered only on 3-month-or-longer products. | Off |
| Amount (USD) (default shipping) | Shipping added to every product that has no per-product override. | Blank (free) |
Statuses you will see here
| Status | What it means | What to do |
|---|---|---|
| Active (green, tile gains a green ring) | This is the live processor and its keys are saved. | Nothing. |
| Missing keys (amber) | The processor is active but its credentials were never saved. | Click the tile and complete every required field. |
| Missing content (amber) | Custom Payment Instructions is active but no instructions were written. | Click the tile and write them. |
| Configured (grey) | Keys are on file but this is not the active processor. | Click the tile to make it active. |
| No chip | Untouched. | Click it to open the credentials dialog. |
| Field label reads Saved | A value is stored; the box shows dots. Fields not required show Optional. | Leave it to keep it; type over it to replace it. |
What can go wrong
| What you see | Why | Fix |
|---|---|---|
Every product on /products shows Needs payment setup | No real processor is connected; the tooltip reads Set up a payment processor before patients can purchase this product. | Connect a processor here. None does not count. |
| Patients check out, orders appear, no money arrives | None is active — Test mode — no real charges. Nothing else warns you. | Pick a real processor before your first live patient. |
| Toast: Webhook auto-registration failed — open the credentials modal to add your webhook secret manually | Stripe or Whop rejected automatic registration. | Create the webhook yourself, then paste its secret into Webhook Secret. |
| Test says Customer Vault is not enabled. Saved payment methods will be unavailable. | Customer Vault is off in your NMI, SimPay, or SlidePay gateway. | Have the gateway enable it, or refills and vault charges cannot run. |
| Orders sit unpaid forever | Custom Payment Instructions is active; orders stay in payment-required status until staff update them by hand. | Assign someone to reconcile, or move to a real processor. |
| Both toggle cards are greyed out | API Orders is off for this client; installments also need vault charge orders on first. | Ask GEN Health for API Orders, then enable the two switches in order. |
| You expected a Stripe account-status or payout screen | There is none. This page stores API keys and nothing more — no Connect onboarding, no payouts-enabled indicator, and Verify and save stays greyed out until a required field changes. | Check payout status in the processor's own dashboard. |
Next
/billing, plus the checkout transactions it produces.
Your plan and account payment methodThe other card: the one you pay GEN Health with, on /settings/overview.
ProductsSet prices and per-product shipping overrides that beat the default here.
Was this helpful?
