Skip to main content
Payin webhooks notify your system about changes in the lifecycle of a funding operation.
A payin represents any incoming payment into a wallet, whether it comes from bank transfers, cards, crypto networks, or internal transfers.
These events allow you to:
  • Reconcile incoming funds
  • Update user balances
  • Trigger business logic (e.g., grant access, release goods)
  • Handle failures or cancellations

Payin Lifecycle

A payin moves through the following states:
PROCESSING → COMPLETED
            ↘ FAILED

State Definitions

StateDescriptionTypes
PROCESSINGFunds received but not yet settled or confirmedcardPayin
COMPLETEDFunds settled and credited to the walletcardPayin, bankPayin, cryptoPayin
FAILEDThe funding process failedcardPayin, bankPayin, cryptoPayin

Available Webhook Events

Each state transition triggers a webhook event.
EventDescription
payin_processingNotifies when a funding is pending confirmation
payin_completedNotifies when a funding are fully settled and credited
payin_failedNotifies when a funding has failed

Payin Types

A payin can originate from different funding sources:
TypeDescription
bankPayinBank transfer funding
cryptoPayinBlockchain transfer
cardPayinCard payment
The payinType field in the webhook payload identifies the origin of the funds.

Important Behavior

  • payin_completed guarantees funds are available in the wallet.
  • Only COMPLETED payins increase the wallet balance.
  • Fees and FX conversion (if applicable) are already calculated in the payload.
  • Always use orderId or own_reference for reconciliation.