Crypto Pay-ins Integration Guide
Introduction
This guide describes the technical integration of Paybis Send into your platform, enabling you to accept cryptocurrency deposits from end users. These deposits are automatically converted to fiat and credited to your virtual account. Paybis Send supports pay-ins for a wide range of partners, including PSPs, Acquirers, Merchants, payment processors, e-commerce platforms, and other deposit-driven platforms.
Prerequisites
- Implement request signing: Secure all API requests by implementing request signing. See our Signing Requests Guide for details.
- (Optional) Customer-facing UI: Implement a user interface that uses Paybis APIs to display dynamic cryptocurrency deposit addresses, enabling end users to make payments in crypto.
- (Optional) Admin panel integration: Integrate Paybis Send into your admin or operations panel to enable your team to monitor incoming deposit transactions and transaction statuses.
Pay-in Crypto Flow
1. Request a Sell Quote
Call the Quote API to obtain a real-time exchange rate for the "Sell" direction (Crypto to Fiat). You can specify the exact crypto amount the user wants to send or the fiat amount you wish to receive.
See the Quote API reference.
2. Execute Pay-in Event
Use the Execute API (payin_execute) to confirm the quote and generate a unique, single-use blockchain deposit address.
See the Execute API Endpoint reference.
3. Obtain the Deposit Address
The payment address is generated asynchronously. Before displaying it to the user, or executing a crypto payment via API, you must retrieve it either by listening for a webhook event or by polling the API.
Via Webhook (Recommended):
Listen for the waiting_for_funds webhook. The event payload will include the generated blockchain_address.
Via Polling:
Periodically call the GET /v1/event/pay-in/{event_id} until the blockchain_address field is populated.
See the Transaction Data Webhook reference.
Once the address is available, present it to the user along with the exact cryptocurrency amount required to complete the transaction or make a payment automatically.
4. Transaction Statuses and Reconciliation
Paybis will notify you of the deposit status via the Transaction Data Webhook. Implement webhook handling to automatically process these events and credit your user’s account on your platform, if necessary.
See the Transaction Data Webhook reference.
Available Environments
Sandbox:
A testing environment for your integration.
- Use the provided sandbox API key and URL.
- IP whitelisting is not enforced in the sandbox.
- Crypto pay-ins are simulated using testnet blockchains. See the Sandbox Testing section for more details.
Production:
The live environment for processing real transactions.
- Use the production API key and base URL.
- IP whitelisting is enforced and must be configured before going live.
- Real fiat balances and live blockchain transactions are used.
Managing Paybis Send Pre-funded Balance
While the primary purpose of Pay-ins is to receive funds, understanding how they interact with your Pre-funded Balance is crucial.
Crediting Your Balance:
Unlike payouts which deplete your balance, Pay-ins automatically top up your balance. When a user's crypto deposit is confirmed and cryptocurrency converted, the resulting fiat amount (in your account currency: EUR, USD, or GBP) is credited directly to your internal Paybis virtual account.
All incoming deposits are processed automatically and credited to your balance without manual intervention.
Key Points:
- Settlement
Funds settled from Pay-ins become immediately available in youravailable_balancefor future payouts or settlements (in crypto or fiat). - Currency
The credit is applied in the fiat currency defined in the Quote step (e.g., selling BTC to credit EUR balance).
Pay-ins act as a seamless sell mechanism, allowing you to convert incoming crypto flows directly into usable fiat liquidity on your ledger.
Additional Considerations
- Supported Cryptos and Fiats: Refer to the Supported Assets section for the full list of available currencies.
- Testing: Use testnet assets and small amounts when testing in the sandbox environment.
- Key Generation: Generate an RSA key pair for request signing and provide the public key to Paybis during onboarding.
- Webhook URL: To receive payout updates, provide your webhook URL to Paybis.
For assistance with Paybis Send API integration, request signing, webhooks, sandbox setup, vIBANs, or pre-funded balance management, please contact your Paybis account manager or designated support team.
Updated about 1 month ago