Plugin & API

Build directly on top of your MID

The Midcove API routes sale, void, and refund calls through the merchant account you've already boarded — NMI, Authorize.Net, Stripe, or PayPal — so your integration doesn't change when your processor doesn't.

Overview

Two ways to integrate

Most merchants start with the plugin and move to the API as their needs grow. Both talk to the same boarded MID and show up in the same transaction management dashboard.

  • Plugin — drop-in checkout and virtual terminal fields for common storefronts, no code required.
  • REST API — full control over sale, void, refund, and lookup calls from your own application.
  • Webhooks — get notified in real time on transaction status changes and chargeback events.

Base URL

https://api.midcove.com/v1

Authentication

Every request is signed with a secret key issued per boarded MID.

Authorization: Bearer sk_live_51Nx...
Code examples

Sale, void, refund, and webhooks

Static examples for reference. Full parameters, error codes, and SDKs are documented at docs.midcove.com.

Create a sale
POST /v1/transactions/sale
Content-Type: application/json
Authorization: Bearer sk_live_51Nx...

{
  "mid": "mid_8k2p91",
  "amount": 4200,
  "currency": "USD",
  "card": {
    "number": "4111111111111111",
    "exp_month": "09",
    "exp_year": "2027",
    "cvv": "123"
  },
  "order_id": "ORD-10493"
}
Void a transaction
POST /v1/transactions/void
Content-Type: application/json
Authorization: Bearer sk_live_51Nx...

{
  "mid": "mid_8k2p91",
  "transaction_id": "txn_7f3a92c1"
}
Issue a refund
POST /v1/transactions/refund
Content-Type: application/json
Authorization: Bearer sk_live_51Nx...

{
  "mid": "mid_8k2p91",
  "transaction_id": "txn_7f3a92c1",
  "amount": 4200
}
Webhook payload
{
  "event": "transaction.updated",
  "mid": "mid_8k2p91",
  "transaction_id": "txn_7f3a92c1",
  "status": "settled",
  "type": "sale",
  "amount": 4200,
  "currency": "USD",
  "created_at": "2026-07-23T14:02:11Z"
}

Fraud filters via API

Manage IP, email, and phone blocklists programmatically, and read the automatic 24-hour lockout status for any identifier.

POST /v1/fraud/block
{
  "type": "ip",
  "value": "203.0.113.42",
  "reason": "manual_block"
}
Coming soon

Full reference docs at docs.midcove.com

We're building out complete API reference documentation, SDKs, and plugin guides. In the meantime, our team can walk you through integration directly.

Ready to integrate?

Get API access and start routing transactions through your MID.