Skip to main content
The SDK accepts card, bank transfer, exchange, and wallet funding and normalizes them into a single payment flow. It handles UI, source selection, and execution.

Available funding sources

Install the package and drop the component in:

Default to card or bank funding

Set paymentMethod to open the widget on the fiat tab:

Fund an exact output amount

By default, Fund treats the user’s input as EXACT_INPUT: the customer spends a specific amount and receives whatever that converts to. To guarantee a specific delivered amount instead, set tradeType to EXACT_OUTPUT:

Fund directly into a product account

Pass to.calldata to encode a destination action that executes automatically when funds arrive. Use dynamic() wherever the arrived amount should appear in the encoded arguments:
See Dynamic values for details on dynamic() and related placeholders.

Validate card and bank purchase amounts

Card and bank funding has per-country, per-currency, per-destination minimums and maximums. The widget reads them up front: an amount under the minimum shows “Minimum purchase is X CUR” on the CTA, disables the button, and skips the quote request entirely. To validate the amount outside the widget, use useMeldPurchaseLimits and isBelowMeldMinimum.

Fund component props

For theming and appearance options, see SDK configuration.

Non-React sites

For pages without React, load the widget via CDN:

Direct API

For server-side integrations with no frontend component, use the API directly.
For the full intent lifecycle and all endpoints, see the API reference.