BPN OpenAPI
  1. Wallet
BPN OpenAPI
  • Getting Started
    • Introduction to BPN
    • Key Concepts & Terminology
    • Architecture Overview
  • Onboarding & Prerequisites
    • Product Demo
    • Sandbox & Test Environment
    • Signature Authentication Mechanism
  • Use Case
    • Transfer
    • Vault
    • On/Off Ramp
    • Compliance (Travel Rule Information Submission)
    • Fiat Collection(BRL PIX for example)
  • API Reference
    • Account Management
      • Inquiry Master VA Balance
      • Create Virtaul Account
      • Get Virtual Account Detail
      • List Virtual Account
      • Send Email Verify Code
      • Query bank info by account number
      • Payout via Virtual Account
      • Refund Virtual Account Order
      • Get Virtual Account Order Detail
      • List Virtual Account Orders
      • Submit Invoice
      • Get Invoice list Status
      • List Banks
      • Add Bank Account
      • List Bank Account
      • List RFI Sub Virtual Account
      • Get Sub Virtual Account RFI Template Info
      • Sub Virtual Account Submit RFI
    • Wallet
      • List Wallets
        GET
      • List Sub Account
        GET
      • Create Sub Account
        POST
      • Wallet Internal Transfer
        POST
      • Get Asset Balance
        GET
      • Get Deposit Address
        GET
      • Add Deposit Sender
        POST
      • Add Withdraw Whitelist
        POST
      • Delete Withdraw Whiltelist
        POST
      • Request Withdraw
        POST
      • Query Transaction History
        GET
    • FX
      • Inquery FX Rate
    • BPN Transactions
      • Get Stablecoin Quote
      • Create Stable Order
      • Get Order (Single) Detail
      • List Orders(Batch)
    • Reconciliation
      • Get Reconciliation Order List By Page
    • Crypto Payment Link
      • Create Payment Link
      • List Payment links
      • Get Curreny Network Config
    • Mock
      • Mock Virtual account Payin Order
  • Webhooks & Events
    • Resend Fail Webhook
    • Open Virtual Account Status
    • Virtual Account Payment Status
    • Virtual Account Invoice update
    • Transaction Status Notification
    • KYB Status Notification
    • Deposit Sender Detail Required
  • Appendix
    • Enum
    • Virtual Account(VA) Support List & KYB requirement
  • Release Notes & Changelog
    • Version History
  • Schemas
    • walletBalance
    • walletAddress
    • transactionRecord
  1. Wallet

Add Deposit Sender

POST
/v1/wallet/add-deposit-sender
This endpoint is designed to meet regulatory compliance and Travel Rule requirements. For every stablecoin deposit received into your wallet, you must provide detailed payer information. This information is essential for identifying the origin of funds and ensuring that all transactions meet applicable anti-money laundering (AML) and cross-border payment compliance standards.
When a deposit is detected, the system will automatically send you a webhook notification requesting the submission of payer details. The required fields typically include (but are not limited to):
• Payer Name – The legal name of the sender.
• Payer Wallet Address – The blockchain address from which the funds were sent.
• Payer Resident Country – The country or region where the payer resides.
• Originating VASP/Platform – The Virtual Asset Service Provider (VASP) or exchange from which the funds originated.
You should call this API promptly after receiving the webhook to ensure uninterrupted processing of the deposit. Failure to provide accurate and timely information may result in the deposit being delayed or rejected due to non-compliance.

Request

Body Params application/json

Example
{
    "hash": "0x9fe2d3c4b5a69788c1d2e3f4a5b6c7d8e9f00112233445566778899aabbccdde",
    "transactionId": "txn_20250809_0001",
    "depositOriginator": 1,
    "orgType": 0,
    "bnfType": 0,
    "orgName": "Carlos Hernández",
    "orgFirstName": "Carlos",
    "orgLastName": "Hernández",
    "country": "mx",
    "state": "CDMX",
    "region": "Centro",
    "city": "Ciudad de México",
    "pinCode": "06000",
    "address": "Av. Paseo de la Reforma 305, Juárez, Cuauhtémoc",
    "corpName": null,
    "corpCountry": null,
    "receiveFrom": 1,
    "vasp": "others",
    "vaspName": "Bitso",
    "declaration": true
}

Request Code Samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST '/v1/wallet/add-deposit-sender' \
--header 'Content-Type: application/json' \
--data-raw '{
    "hash": "0x9fe2d3c4b5a69788c1d2e3f4a5b6c7d8e9f00112233445566778899aabbccdde",
    "transactionId": "txn_20250809_0001",
    "depositOriginator": 1,
    "orgType": 0,
    "bnfType": 0,
    "orgName": "Carlos Hernández",
    "orgFirstName": "Carlos",
    "orgLastName": "Hernández",
    "country": "mx",
    "state": "CDMX",
    "region": "Centro",
    "city": "Ciudad de México",
    "pinCode": "06000",
    "address": "Av. Paseo de la Reforma 305, Juárez, Cuauhtémoc",
    "corpName": null,
    "corpCountry": null,
    "receiveFrom": 1,
    "vasp": "others",
    "vaspName": "Bitso",
    "declaration": true
}'

Responses

🟢200OK
application/json
Body

Example
{
    "status": 200,
    "code": null,
    "msg": null,
    "traceId": "Auto:bf288b9af2e04dff88e943f2dcaf2b03",
    "data": {
        "success": true
    }
}
Previous
Get Deposit Address
Next
Add Withdraw Whitelist
Built with