Skip to main content
POST
/
v1
/
transit
/
payment
curl --request POST \ --url https://sandbox.api.fin.com/v1/transit/payment \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data ' { "integration_type": "BYBIT", "order_info": { "merchant_name": "PayPal", "client_id": "client_001", "payment_type": "E_COMMERCE", "merchant_trade_no": "841e4ba2-1234-5678-9abc-a2a45de7bd00", "order_amount": "100.00", "currency": "USDT", "currency_type": "crypto", "success_url": "https://example.com/success", "failed_url": "https://example.com/failed", "order_expire_time": 3600, "goods": [ { "shopping_name": "test good1", "mcc_code": "1520", "goods_name": "test1", "goods_detail": "First product" } ], "env": { "terminal_type": "APP", "device": "iPhone 15", "browser_version": "iOS 17.0 Safari", "ip": "192.168.0.1" } }, "fin": { "settlement_config": { "settlement_via": "MARKET_ORDER", "destination_details": { "wallet_address": "SOLANA_WALLET_ADDRESS", "currency": "USDC", "rail": "SOLANA" } } } } '
{
  "data": {
    "payment_id": "FIN_PROVIDED_UUID",
    "integration_type": "BYBIT",
    "provider_response": {
      "pay_id": "01JN6AZVEMAC8H9SED6JES3QH8",
      "terminal_type": "APP",
      "expire_time": 1740751953,
      "create_time": 1740748353,
      "checkout_link": "",
      "qr_content": "data:image/png;base64,/9j/2...f/Z"
    }
  }
}
Creates a payment order through the ByBit integration for USDT to PYUSD conversion. The payment flow supports QR code and e-commerce payment types with automatic settlement to a specified wallet address. Conditional Field Rules:
  • Either order_info.order_amount or order_info.quote_id must be provided, but not both.
  • When order_info.quote_id is not provided, order_info.order_amount and the fin object are required.
  • When order_info.quote_id is provided, order_info.order_amount and the fin object must not be included.
  • Providing both results in a 422 error.
Provider Error Codes: The 428 response code is a placeholder. When errors occur from the payment provider (ByBit), the original status code will be forwarded.

Authorizations

Authorization
string
header
required

Bearer token authentication. Obtain token from /v1/oauth/token endpoint

Body

application/json
integration_type
enum<string>
required

Integration provider type.

Available options:
BYBIT,
PASS_THROUGH
Example:

"BYBIT"

order_info
object
required
fin
object

Required when quote_id is not provided.

Response

Payment created successfully

data
object