Passthrough network fees
Interchange and card scheme fees
Interchange and card scheme fees represent the two main categories of passthrough fees charged by card networks for processing credit, debit, or prepaid card transactions. These fees are passed to you as the Moov fee under the “Interchange++” pricing model.
Interchange++ is Moov’s cost-plus pricing model for card processing, comprising:
- Interchange: Set by card networks, this fee goes to the cardholder’s issuing bank
- Card scheme fees: Non-negotiable fees by card networks for transaction processing, often labeled as “dues and assessments” or “processing fees”
- Moov processing fee: Agreed upon Moov markup for transaction processing
How will I be charged?
Note: If you’re on Moov’s standard (blended) pricing plan, you’ll be charged a flat rate, differing from the variable costs detailed below.
Moov bills the card scheme fees by debiting from your wallet per transaction. Only successful transfers incur these fees. Failed transfers, which are transactions not completed due to various reasons like insufficient funds or incorrect details, will be invoiced monthly.
If you’re facilitating card payments, your Moov fee will adjust accordingly and be segmented into the three components mentioned above, visible in the moovFeeDetails
:
- interchange: Determined at the time of settlement and charged upon completion
- cardScheme: Charged upon transfer completion
- moovProcessing: Moov’s agreed-upon markup, charged upon completion
The get a transfer GET
endpoint will include the buckets of fees described above, with a total moovFee
:
|
|
Each fee line item will show exact fee amounts that were charged and support up to 9 decimal places. The total Moov fee charged to your facilitator is the sum of all three line items represented as moovFeeDecimal
.
Given that card processing fees support up to 9 decimals, you can also input facilitator fees with higher precision. In the create a transfer POST
request, you’ll find two additional fields for a more detailed fee structure: totalDecimal
and markupDecimal
. Moov also supports the rounded version of these fields (total
and markup
), but only one field is required in the payload.
Rounding and reconciliation
Because network costs have precise values beyond USD cents, exact decimal values will be provided where relevant. The fee charged to your account is the precise amount, and you can use the moovFeeDecimal
field to reconcile the charge in the corresponding facilitatorFee
wallet transaction. All wallet transactions and balances will display precise values to ensure accurate charges and reconciliation between transactions and balances.
Using the example above, plus a $5.00 facilitator fee, the corresponding wallet transaction will look like this:
|
|
Most of the existing API fields will maintain standard rounding to the nearest unit (cents). For example, if the moovFeeDecimal
is 0.065
, Moov will round the moovFee
up to 0.07. If the fee is 0.064
, we round down to 0.06
.
The availableBalance
in a wallet will always be rounded down to prevent transfers that exceed the available amount. The availableBalanceDecimal
always reflects the precise value remaining in your wallet. If you cash out your wallet for 1204
using the example above, the remaining balance would be 0.0063
.