Medpaid Plugin API
The general endpoints for integrating HSA/FSA payments into your storefront, grouped by resource. Only /plugin/ endpoints are listed here — internal and admin endpoints are not included.
OnboardingKey and ExternalKey as query parameters on every request. These credentials are issued when your merchant account is set up. Contact support@medpaid.com to retrieve or rotate your keys. Keep keys server-side — do not expose them in client-side code.Clients
Configure platform connection, verify setup, and retrieve merchant account details. Most integrations call configure-platform once during setup, then check-platform to confirm all fields are correct before going live.
POST/plugin/clients/configure-platformConfigure Platform
Set connection settings for a generic plugin integration. Provide your store domain, callback URLs, and plugin key.
Request Body application/json
Response 200 OK
POST/plugin/clients/check-platformCheck Platform
Verify that all required platform settings are in place. Use this after configure-platform to confirm you are ready to accept carts.
Request Body application/json
Response 200 OK
GET/plugin/clients/get-clientGet Client
Retrieve authenticated merchant account details.
Parameters
OnboardingKeyquerystringYesExternalKeyquerystringYesResponse 200 OK
GET/plugin/clients/get-client-statusGet Client Status
Lightweight check to confirm the merchant account is active. Useful for health checks in your integration.
Parameters
OnboardingKeyquerystringYesExternalKeyquerystringYesResponse 200 OK
POST/plugin/clients/log-intakeLog Intake
Submit a new merchant intake form. Used during onboarding to register a merchant before credentials are issued.
Request Body application/json
Response 200 OK
Cart
Push an order's cart from your storefront to Medpaid to start the HSA/FSA checkout or reimbursement flow. Each push returns a Ref, the cart reference that identifies the cart from then on.
POST/plugin/cart/pushPush Cart
Submit a cart for generic plugin integrations. Returns a Ref to identify this cart through the Medpaid flow.
Request Body application/json
Response 200 OK
POST/plugin/cart/push/browserPush Cart (Browser)
Push a reimbursement cart from browser JavaScript. It authenticates with a browser cart push key instead of OnboardingKey and ExternalKey, and validates the request Origin. It creates a cart for a finalized, pending-payment order, or returns the existing Ref if a cart was already pushed for the same PlatformId. It does not accept a Ref and never updates an existing cart. Action ("reimburse") and Source are set by Medpaid.
Request Body application/json
Response 200 OK
Products
Retrieve the list of products in your Medpaid catalog along with their HSA/FSA eligibility status and LMN requirements.
GET/plugin/products/get-productsGet Products
Retrieve all products configured for your merchant account with their eligibility and approval status.
Parameters
OnboardingKeyquerystringYesExternalKeyquerystringYesResponse 200 OK
Onboarding
Bulk-import products from your platform into Medpaid for eligibility review. Call import-products during initial setup and when your catalog changes.
POST/plugin/onboarding/import-productsImport Products
Bulk import products for a generic integration. Products are queued for eligibility review.
Request Body application/json
Response 200 OK
Orders
Retrieve the Medpaid status of an order you have pushed.
GET/plugin/orders/get-orderGet Order
Retrieve the status of an order in Medpaid, including its cart reference and payment transactions.
Parameters
PlatformIdquerystringYesThe PlatformId the order was pushed with.ExternalKeyquerystringYesOnboardingKeyquerystringYesResponse 200 OK
Refunds
Push refund requests and check refund status. Use the idempotency key to safely retry refund requests without duplication.
POST/plugin/refunds/pushPush Refund
Submit a refund request for a cart. Returns a refund ID and initial queue status.
Request Body application/json
Response 200 OK
GET/plugin/refunds/get/{RefundId}Get Refund
Retrieve the status of a specific refund by its Medpaid ID.
Parameters
RefundIdpathstring (guid)YesOnboardingKeyquerystringYesExternalKeyquerystringYesResponse 200 OK
GET/plugin/refunds/get-by-idempotencyGet Refund by Idempotency Key
Look up a refund using the idempotency key you provided when pushing the refund. Useful for reconciliation after retries.
Parameters
OnboardingKeyquerystringYesExternalKeyquerystringYesIdempotencyKeyquerystringYesResponse 200 OK
End Users
Query shopper-level data such as active LMN status. Use has-valid-lmn before showing an HSA/FSA CTA to customers who may already be qualified.
POST/plugin/endusers/has-valid-lmnHas Valid LMN
Check whether a specific shopper already has an active Letter of Medical Necessity. If HasValidLmn is true, the shopper can proceed directly to payment without a new assessment.
