Underpayments
Receiving payment amounts less than expected
Under payments happen when end users do not send enough cryptocurrency to fulfil their payment obligation.
This can happen when the end user has a network fee debited, by their exchange platform, for a greater amount than expected from their payment amount. Additionally the end user may accidentally send less than they intended to (e.g. they intend to send 0.1 ETH but send 0.01 ETH instead). In this case, the payment will still transition to a UNDERPAID
status.
To give greater flexibility to your end users on how much they send crypto top-ups is recommended.
How can I see the amount actually received?
On the transactionConfirmed webhook you can see amount actually received in the paidCurrency.actual
field. You can compare this value to the paidCurrency.amount
field which shows the expected amount.
Handling underpayments
There is flexibility to how to handle underpayments with BVNK. The recommended way to handle an underpayment for the best customer experience is to adjust the final payment of the end user to match the total lower amount received. This avoids having to return the entire amount of amounts of crypto when it is fractionally less than expected due to fees or rounding errors, and rather crediting the new amount to the end user's account. This is the Settle Merchant Wallet setting, where the total sent amount will be deposited into the MID wallet that was linked to the transaction.
The total amount sent is given in the .actual
fields described in the section above, which can then be used to adjust the end users total payment amount on your system.
Where it is important that the full amount it received, and an underpayment does not fulfil this need, there are two other options which can be used. These are Handle Manually and Auto Refund.
Handle manually will keep the payment in its originally sent crypto, and deposit that into an equivalent crypto wallet on your account. No funds are sent to the MID-linked wallet. You can then use the payout functionality to manually return the excess amount to the end user if required, or manually convert to the MID-linked wallet at a new FX spot rate.
Auto Refund will generate an automatic payout request for the full underpaid amount, keeping it separate from any account wallets and generating a URL. This URL must be sent to the end user for final confirmation of the address where the returned funds should be sent.
Overpayment exception flows
The summary of the flow for 3 different outcomes is given below:
Configuration | Balance impact | Status |
---|---|---|
Settle Merchant Wallet | Amount received will be credited to your MID wallet in your wallet currency. What's a MID wallet? Learn more here | UNDERPAID |
Handle Manually | Amount received will be deposited into the merchant crypto currency wallet. | UNDERPAID |
Auto Refund | Functions the same as manually handing the refund except it is done automatically for you. The total amount of cryptocurrency received will be attributed to a new refund payout that will be auto created. | UNDERPAID , PENDING (refund) |
To change your configuration or learn more, please contact your Account Manager or Integration Manager
Updated 8 months ago