Biftpaydocs

Dollars

If dollar collections are turned on for your account, customers can pay in USD by card. The money is held in your dollar balance.

Collecting dollars#

Create a payment with "currency": "USD" and an amount in cents (2500 is $25.00). Checkout shows card only for dollar payments.

Dollars become available T+7 business days after the day they were collected. See Balances and settlement.

Converting to naira#

Biftpay publishes a dollar-to-naira rate. You see it, and the exact naira you'd get, before converting:

bash
curl "https://sandbox.api.biftpay.com/v1/fx?usd_amount=100000" \
  -H "Authorization: Bearer bp_test_..."

The response includes the rate's id. Convert at that rate:

bash
curl https://sandbox.api.biftpay.com/v1/fx/conversions \
  -H "Authorization: Bearer bp_test_..." \
  -H "Idempotency-Key: convert-oct-04" \
  -H "Content-Type: application/json" \
  -d '{ "usd_amount": 100000, "rate_id": "..." }'

You always get the rate you were shown. If Biftpay published a new rate in between, nothing converts and you get rate_changed with the new rate, so you can show it and try again. Naira is rounded down to the kobo.

You can also have dollars converted automatically every business day as part of automatic settlement.

USDT#

Instead of converting, you can have your dollars sent as USDT to your own wallet. Wallets are added, and USDT payouts confirmed, by a signed-in owner or admin in the dashboard with a one-time code, so the API can't send to a new wallet on its own. GET /v1/usdt/preview shows the fee and the USDT the wallet should receive before sending.