Overview
An onramp lets your customer pay Naira (NGN) into a Daya bank account. Daya records the incoming money as a deposit, then sends the value as stablecoins. New integrations create onramps with Funding Accounts. In the API, an onramp is a funding account with:The older
/v1/onramps routes still exist for existing integrations. New integrations should create onramps with /v1/funding-accounts.Customer
Every onramp belongs to a customer. Create the customer first withPOST /v1/customers, then pass customer.customer_id when creating the funding account.
Customers are scoped to your merchant account. The same customer can have more than one temporary onramp, but permanent onramps are reused when there is already a live one for that customer.
Temporary Onramps
Use a temporary onramp for one payment.
For
ONCHAIN settlement, get a BUY rate first with GET /v1/rates?side=BUY. Pass the returned rate_id when creating the onramp. The rate must still be valid when the onramp is created.
After creation, display these values to the customer:
- Bank name
- Account number
- Account name
- Expected NGN amount
- Expiry time, when present
Temporary onramp to onchain settlement
Permanent Onramps
Use a permanent onramp when the same customer should keep the same NGN bank details for repeat payments.
If a live permanent onramp already exists for that customer, Daya returns the same account. Updating settlement does not change the bank account details shown to the customer.
Permanent onramp to Daya balance
Rate Behavior
For temporary onramps with a bound
rate_id, the customer must pay during the valid payment window. Late deposits do not settle automatically.
Settlement
Choose where the NGN value goes after Daya receives the bank transfer.
For
ONCHAIN, use Supported Chains to choose a supported network.
Developer Fees
To keep a percentage of each onramp deposit, senddeveloper_fee.percentage when creating the funding account. Use a decimal string from 0 to 50. Deposit responses and deposit webhooks show the developer fee and the customer amount separately from Daya fees.
For onramps, the developer fee is deducted before the final customer amount is calculated. It is not added as an extra charge. Use developer_fee.amount and developer_fee.currency to track the fee, and use customer_amount to know what the customer should receive or be credited with.
developer_fee.percentage is a percentage value, not basis points. For example, 0.5 means 0.5%, 2 means 2%, and 50 means 50%.
Track Deposits
Use/v1/deposits to reconcile money received through onramps. Deposit responses include funding_account_id, so you can connect the payment back to the account shown to the customer.
Listen for:
Limits
Funding account creation limits may apply to high-volume integrations. If you need a higher limit, contact Daya before launch.Next Steps
Create Funding Account
Create an onramp with an NGN virtual account.
Rates and Settlement
Understand BUY rates and settlement destinations.
Deposits
Reconcile money received through onramps.