Official Banxa Enterprise API Specs
Request payload for transaction eligibility.
Identification rules:
- Provide
identityReference, OR provide all ofemail,countryOfResidence. - Responses containg 422 status codes can vary based on the restrcitions found for the profile for example:
- limit breach (daily, weekly, monthly, annual)
- age restrictions
- unsupported asset or fiat currency
- Locality restrictions
Amount rules:
- Provide exactly one of
fiatAmountorcryptoAmount.
Conditional:
stateis required whencountryOfResidenceisUS.
Transaction method (partner-defined).
Transaction type. Must be a valid value of TransactionTypeEnum. (Populate the allowed values here if you want strict client validation.)
Fiat currency code allowed for the partner (e.g., ISO 4217). Enforced server-side validation for availbility
Crypto asset code. Enforced server-side validation for availbility
Fiat amount as a decimal string. Mutually exclusive with cryptoAmount.
Crypto amount as a decimal string. Mutually exclusive with fiatAmount.
Required when identityReference is not provided. ISO 3166-1 alpha-2 country code.
Optional when identityReference is not provided. (Format YYYY-MM-DD)"
- Mock serverhttps://banxa-enterprise.redocly.app/_mock/enterprise-api/v0-beta/openapi/eapi/identities/transactions/eligibility
- Production environment serverhttps://api.banxa.com/eapi/identities/transactions/eligibility
- Sandbox environment serverhttps://api.banxa-sandbox.com/eapi/identities/transactions/eligibility
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://banxa-enterprise.redocly.app/_mock/enterprise-api/v0-beta/openapi/eapi/identities/transactions/eligibility \
-H 'Authorization: YOUR_API_KEY_HERE' \
-H 'Content-Type: application/json' \
-d '{
"identityReference": "user-123",
"method": "payid-bank-transfer",
"transactionType": "ONRAMP",
"fiat": "AUD",
"crypto": "BTC",
"fiatAmount": "250.00",
"cryptoAmount": "0.125",
"blockchain": "BITCOIN",
"email": "user@example.com",
"countryOfResidence": "AU",
"dateOfBirth": "1990-01-30",
"state": "CA"
}'The identity sharing request has been accepted for processing
Whether the identity is eligible and can proceed with payment/transaction. When true, there are no KYC requirements.
List of outstanding requirements that must be satisfied before payment can proceed. If paymentReady is true, this will typically be an empty array.
{ "paymentReady": false, "requirements": [ "PERSONAL_DETAILS", "DOCUMENT", "SELFIE" ] }