For the complete documentation index, see llms.txt. This page is also available as Markdown.

NMI

Accept card and wallet payments through NMI on Hyperswitch, with mandates, refunds, and manual capture.

NMI handles card payments and Apple Pay and Google Pay wallets through Hyperswitch, with mandates, refunds, and manual capture across the board, and optional 3DS on cards. The integration is live.

Status and capabilities

Integration status: live

Category: payment gateway

Webhook flows: payments, refunds

Payment method
Type
Mandates
Refunds
Capture methods
3DS
Card networks
Countries
Currencies

card

Credit Card

supported

supported

automatic, manual, sequential automatic

supported, optional

American Express, Cartes Bancaires, Diners Club, Discover, Interac, JCB, Maestro, Mastercard, UnionPay, Visa

98

160

card

Debit Card

supported

supported

automatic, manual, sequential automatic

supported, optional

American Express, Cartes Bancaires, Diners Club, Discover, Interac, JCB, Maestro, Mastercard, UnionPay, Visa

98

160

wallet

Apple Pay

supported

supported

automatic, manual, sequential automatic

not applicable

-

96

160

wallet

Google Pay

supported

supported

automatic, manual, sequential automatic

not applicable

-

96

160

Webhooks

Use NMI webhooks to keep payment and refund statuses updated in Hyperswitch after NMI sends transaction updates. Keep webhooks enabled for the Hyperswitch endpoint used by your account. See your NMI account settings for where to configure the endpoint.

NMI handles 10 event names that follow transaction.<type>.<result>, where <type> is sale, auth, capture, void, or refund, and <result> is success or failure.

NMI event
Effect in Hyperswitch

transaction.auth.failure

Payment authorization fails

transaction.auth.success

Payment authorization succeeds

transaction.capture.failure

Payment capture fails

transaction.capture.success

Payment capture succeeds

transaction.refund.failure

Refund fails

transaction.refund.success

Refund succeeds

transaction.sale.failure

Payment fails

transaction.sale.success

Payment succeeds

transaction.void.failure

Payment cancellation fails

transaction.void.success

Payment is cancelled

Any other event, including the unknown variants, is acknowledged without changing a status. Event names are defined in NmiWebhookEventType, and mapped by get_nmi_webhook_event.

Hyperswitch verifies the webhook-signature header before processing NMI webhooks in IncomingWebhook for Nmi.

Source reference

Connector implementation: crates/hyperswitch_connectors/src/connectors/nmi.rs.

Last updated

Was this helpful?