Medpaid Plugin API
All public endpoints for integrating HSA/FSA payments into your storefront. Endpoints are 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-platform Configure 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-platform Check 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-client Get Client
Retrieve authenticated merchant account details.
Parameters
OnboardingKey query string Yes ExternalKey query string Yes Response 200 OK
GET /plugin/clients/get-client-status Get Client Status
Lightweight check to confirm the merchant account is active. Useful for health checks in your integration.
Parameters
OnboardingKey query string Yes ExternalKey query string Yes Response 200 OK
POST /plugin/clients/log-intake Log 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
POST /plugin/clients/checkout-champ/configure-platform Configure Platform (Checkout Champ)
Set connection settings for a Checkout Champ integration. Provide your store domain, callback URLs, and plugin key.
Request Body application/json
Response 200 OK
POST /plugin/clients/checkout-champ/check-platform Check Platform (Checkout Champ)
Verify all Checkout Champ platform settings are in place.
Request Body application/json
Response 200 OK
POST /plugin/clients/woocommerce/configure-platform Configure Platform (WooCommerce)
Set connection settings for a WooCommerce integration. This is called automatically by the Medpaid WordPress plugin.
Request Body application/json
Response 200 OK
POST /plugin/clients/woocommerce/check-platform Check Platform (WooCommerce)
Verify all WooCommerce platform settings are in place.
Request Body application/json
Response 200 OK
GET /plugin/clients/woocommerce/get-client Get Client (WooCommerce)
Retrieve merchant details for a WooCommerce integration.
Parameters
OnboardingKey query string Yes ExternalKey query string Yes Response 200 OK
GET /plugin/clients/woocommerce/get-client-status Get Client Status (WooCommerce)
Check if a WooCommerce merchant account is active.
Parameters
OnboardingKey query string Yes ExternalKey query string Yes Response 200 OK
POST /plugin/clients/shopify/configure-platform Configure Platform (Shopify)
Set connection settings for a Shopify integration.
Request Body application/json
Response 200 OK
POST /plugin/clients/shopify/check-platform Check Platform (Shopify)
Verify all Shopify platform settings are in place.
Request Body application/json
Response 200 OK
Cart
Push cart data from your storefront to Medpaid and retrieve cart status. The push endpoint initiates the HSA/FSA checkout or reimbursement flow and returns a CartReference used for tracking.
POST /plugin/cart/push Push Cart
Submit a cart for generic plugin integrations. Returns a CartReference to identify this cart through the Medpaid flow.
Request Body application/json
Response 200 OK
POST /plugin/cart/checkout-champ/push Push Cart (Checkout Champ)
Submit a cart from Checkout Champ. Use Action: "checkout" for in-checkout HSA/FSA payment or Action: "reimburse" for the Medpaid Reimburse post-purchase flow.
Request Body application/json
Response 200 OK
GET /plugin/cart/checkout-champ/get/{CartReference} Get Cart (Checkout Champ)
Retrieve the current status of a Checkout Champ cart by its reference.
Parameters
CartReference path string Yes The CartReference returned from a push. OnboardingKey query string Yes ExternalKey query string Yes Response 200 OK
POST /plugin/cart/shopify/push Push Cart (Shopify)
Submit a Shopify cart to Medpaid. Returns a CartReference for the initiated flow.
Request Body application/json
Response 200 OK
POST /plugin/cart/woocommerce/push Push Cart (WooCommerce)
Submit a WooCommerce cart to Medpaid. Called automatically by the WordPress plugin when a customer selects Medpaid at checkout.
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-products Get Products
Retrieve all products configured for your merchant account with their eligibility and approval status.
Parameters
OnboardingKey query string Yes ExternalKey query string Yes Response 200 OK
GET /plugin/products/checkout-champ/get-products Get Products (Checkout Champ)
Retrieve products for a Checkout Champ integration.
Parameters
OnboardingKey query string Yes ExternalKey query string Yes Response 200 OK
GET /plugin/products/woocommerce/get-products Get Products (WooCommerce)
Retrieve products for a WooCommerce integration.
Parameters
OnboardingKey query string Yes ExternalKey query string Yes Response 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-products Import Products
Bulk import products for a generic integration. Products are queued for eligibility review.
Request Body application/json
Response 200 OK
POST /plugin/onboarding/checkout-champ/import-products Import Products (Checkout Champ)
Bulk import products from Checkout Champ into Medpaid.
Request Body application/json
Response 200 OK
POST /plugin/onboarding/shopify/import-products Import Products (Shopify)
Bulk import products from Shopify into Medpaid.
Request Body application/json
Response 200 OK
POST /plugin/onboarding/shopify/update-products Update Products (Shopify)
Update existing products in Medpaid from Shopify when catalog details change.
Request Body application/json
Response 200 OK
POST /plugin/onboarding/woocommerce/import-products Import Products (WooCommerce)
Bulk import WooCommerce products into Medpaid. Called automatically by the WordPress plugin.
Request Body application/json
Response 200 OK
Orders
Manage recurring orders and retrieve order status. Recurring endpoints are Checkout Champ-specific; order status retrieval is available for WooCommerce.
POST /plugin/orders/checkout-champ/recurring Create Recurring Order (Checkout Champ)
Register a new recurring/subscription order in Medpaid for a Checkout Champ customer.
Request Body application/json
Response 200 OK
POST /plugin/orders/checkout-champ/recurring/cancel Cancel Recurring Order (Checkout Champ)
Cancel an active recurring/subscription order in Medpaid.
Request Body application/json
Response 200 OK
GET /plugin/orders/woocommerce/get-order Get Order (WooCommerce)
Retrieve the status of a WooCommerce order in Medpaid.
Parameters
OnboardingKey query string Yes ExternalKey query string Yes OrderId query string Yes WooCommerce order ID. Response 200 OK
Refunds
Push refund requests and check refund status. Use the idempotency key to safely retry refund requests without duplication.
POST /plugin/refunds/checkout-champ/push Push Refund (Checkout Champ)
Submit a refund request for a Checkout Champ cart. Returns a refund ID and initial queue status.
Request Body application/json
Response 200 OK
GET /plugin/refunds/checkout-champ/get/{RefundId} Get Refund (Checkout Champ)
Retrieve the status of a specific refund by its Medpaid ID.
Parameters
RefundId path string (guid) Yes OnboardingKey query string Yes ExternalKey query string Yes Response 200 OK
GET /plugin/refunds/checkout-champ/get-by-idempotency Get Refund by Idempotency Key
Look up a refund using the idempotency key you provided when pushing the refund. Useful for reconciliation after retries.
Parameters
OnboardingKey query string Yes ExternalKey query string Yes IdempotencyKey query string Yes Response 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-lmn Has 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.