# Create a channel

Creates a new payment channel between payer and beneficiary.

Endpoint: POST /v0/collections/channels
Version: 0.0.1
Security: Bearer

## Request fields (application/json):

  - `payer_id` (string, required)
    Unique identifier of the payer partner
    Example: "e471b938-98ad-45e4-b144-53a556ea047d"

  - `beneficiary_id` (string, required)
    Unique identifier of the beneficiary partner
    Example: "291ecf34-a01d-466a-b0fd-662a88b7a1bb"

  - `payment_currency` (object, required)
    Metadata for a crypto asset

  - `payment_currency.type` (string, required)
    Discriminator: indicates crypto asset metadata
    Enum: "CRYPTO"

  - `payment_currency.asset` (string, required)
    Ticker symbol of the crypto asset
    Example: "USDC"

  - `payment_currency.network` (string, required)
    Supported blockchain networks
    Enum: "ETHEREUM", "ETHEREUM_SEPOLIA_TESTNET", "SOLANA", "SOLANA_TESTNET", "XRPL", "XRPL_TESTNET"

  - `channel_currency` (object, required)
    Metadata for a fiat currency

  - `channel_currency.type` (string, required)
    Discriminator: indicates fiat currency metadata
    Enum: "FIAT"

  - `channel_currency.asset` (string, required)
    Fiat currency code (ISO 4217)
    Example: "USD"

## Response 201 fields (application/json):

  - `id` (string, required)
    Unique identifier for the channel
    Example: "3fa85f64-5717-4562-b3fc-2c963f66afa6"

  - `payer` (object, required)
    Payer partner details

  - `payer.id` (string, required)
    Unique identifier for the payer partner
    Example: "e471b938-98ad-45e4-b144-53a556ea047d"

  - `payer.name` (string, required)
    Full name of the payer partner
    Example: "Nigerian Imports Ltd."

  - `payer.email` (string, required)
    Email address of the payer partner
    Example: "nigerian@imports.com"

  - `beneficiary` (object, required)
    Beneficiary partner details

  - `beneficiary.id` (string, required)
    Unique identifier for the beneficiary partner
    Example: "291ecf34-a01d-466a-b0fd-662a88b7a1bb"

  - `beneficiary.name` (string, required)
    Full name of the beneficiary partner
    Example: "Hong Kong Exports Ltd."

  - `beneficiary.email` (string, required)
    Email address of the beneficiary partner
    Example: "hongkong@exports.com"

  - `payment_currency` (object, required)
    Metadata for a crypto asset

  - `channel_currency` (object, required)
    Metadata for a fiat currency

  - `wallet` (object, required)
    Wallet details for the channel

  - `wallet.address` (string, required)
    Wallet address for the channel
    Example: "0xBb592aaaF9AcE2fbE3F735645819FA94c95a9cb5"

  - `wallet.currency` (string, required)
    Currency held in the wallet
    Example: "USDC"

  - `wallet.network` (string, required)
    Supported blockchain networks
    Enum: "ETHEREUM", "ETHEREUM_SEPOLIA_TESTNET", "SOLANA", "SOLANA_TESTNET", "XRPL", "XRPL_TESTNET"

  - `payment_link` (string)
    URL for payer UI to access this channel
    Example: "https://collections.ripplenet.com/pay/channel/3fa85f64-5717-4562-b3fc-2c963f66afa6"

  - `transactions` (array, required)
    List of blockchain transactions associated with this channel

  - `transactions.id` (string, required)
    Unique identifier for the transaction
    Example: "487ba009-56cf-4ad9-8b5c-045e27893e00"

  - `transactions.parent_id` (string, required)
    Identifier of the parent entity (collection link or channel) for this transaction
    Example: "e8d43598-107d-4694-9fb2-934e7484c3d4"

  - `transactions.settlement_id` (string,null)
    Identifier of the settlement associated with this transaction. Null if the transaction has not been included in a settlement yet.
    Example: "9f3e4d2c-1a5b-4c8e-9d7f-2e1a3b4c5d6e"

  - `transactions.payer` (object, required)
    Payer partner details

  - `transactions.payer.id` (string, required)
    Unique identifier for the payer partner
    Example: "0c5479ff-3772-4123-b2b7-e679e71eb570"

  - `transactions.payer.name` (string, required)
    Full name of the payer partner
    Example: "Nigerian Imports Ltd."

  - `transactions.payer.email` (string, required)
    Email address of the payer partner
    Example: "nigerian@imports.com"

  - `transactions.beneficiary` (object, required)
    Beneficiary partner details

  - `transactions.beneficiary.id` (string, required)
    Unique identifier of the beneficiary partner
    Example: "01467076-8bb0-41c1-ad54-5751dd4a9e80"

  - `transactions.beneficiary.name` (string, required)
    Full name of the beneficiary partner
    Example: "Hong Kong Exports Ltd."

  - `transactions.beneficiary.email` (string, required)
    Email address of the beneficiary partner
    Example: "hongkong@exports.com"

  - `transactions.payment_amount` (object, required)
    Crypto payment amount and asset

  - `transactions.payment_amount.value` (string, required)
    Payment amount as a string to preserve precision
    Example: "50.00000000"

  - `transactions.payment_amount.asset` (string, required)
    Crypto asset symbol of the payment
    Example: "USDT"

  - `transactions.fiat_equivalent` (object, required)
    Fiat equivalent amounts for payment, fee, and net

  - `transactions.fiat_equivalent.gross_amount` (object, required)

  - `transactions.fiat_equivalent.gross_amount.value` (string, required)
    Gross amount in fiat
    Example: "50.00"

  - `transactions.fiat_equivalent.gross_amount.currency` (string, required)
    Fiat currency code
    Example: "USD"

  - `transactions.fiat_equivalent.fee_amount` (object, required)

  - `transactions.fiat_equivalent.fee_amount.value` (string, required)
    Fee amount in fiat
    Example: "0.50"

  - `transactions.fiat_equivalent.fee_amount.currency` (string, required)
    Fiat currency code
    Example: "USD"

  - `transactions.fiat_equivalent.net_amount` (object, required)

  - `transactions.fiat_equivalent.net_amount.value` (string, required)
    Net amount in fiat
    Example: "49.50"

  - `transactions.fiat_equivalent.net_amount.currency` (string, required)
    Fiat currency code
    Example: "USD"

  - `transactions.market_rate` (object, required)
    Market rate reference for the transaction

  - `transactions.market_rate.base` (string)
    Base currency for the exchange rate
    Example: "USDT"

  - `transactions.market_rate.counter` (string)
    Counter currency for the exchange rate
    Example: "USD"

  - `transactions.market_rate.rate` (string)
    Exchange rate from base to counter currency
    Example: "1.00"

  - `transactions.exchange_rate` (object, required)
    Exchange rate applied on the transaction

  - `transactions.exchange_rate.base` (string)
    Base currency for the exchange rate
    Example: "USDT"

  - `transactions.exchange_rate.counter` (string)
    Counter currency for the exchange rate
    Example: "USD"

  - `transactions.exchange_rate.rate` (string)
    Exchange rate from base to counter currency
    Example: "0.99"

  - `transactions.source_transaction_details` (object, required)
    On-chain transaction details

  - `transactions.source_transaction_details.network` (string, required)
    Supported blockchain networks
    Enum: "ETHEREUM", "ETHEREUM_SEPOLIA_TESTNET", "SOLANA", "SOLANA_TESTNET", "XRPL", "XRPL_TESTNET"

  - `transactions.source_transaction_details.transaction_hash` (string, required)
    Blockchain transaction hash
    Example: "0x94365ftfr76iy45t6ghu876567ytr54ertyui987uyt698uyh87u"

  - `transactions.source_transaction_details.block_id` (string, required)
    Blockchain block identifier containing this transaction
    Example: "0xh7865gugi87yea94e8267987a9e91eddcd0da916b22f3cfa0c8bd91dbad85"

  - `transactions.source_transaction_details.source_address` (string, required)
    Blockchain address from which funds were sent
    Example: "0x880f622a1933ACf82bFC5e630c9ab7f18eF47809"

  - `transactions.source_transaction_details.destination_address` (string, required)
    Blockchain address to which funds were sent
    Example: "0x02937b288b588058533C48b18EdFDdd76A324D6"

  - `transactions.source_transaction_details.gas_fee` (object, required)
    Blockchain gas fee details

  - `transactions.source_transaction_details.gas_fee.value` (string)
    Gas fee value
    Example: "0.0045"

  - `transactions.source_transaction_details.gas_fee.asset` (string)
    Asset used to pay gas fee
    Example: "ETH"

  - `transactions.status` (string, required)
    Transaction status
    Enum: "COMPLETED", "FAILED_KYT", "FAILED", "HOLD_KYT", "REFUNDED_KYT", "PROCESSING"

  - `transactions.reason` (string,null)
    Reason for current status (if applicable)

  - `transactions.transaction_processed_date` (string, required)
    ISO 8601 timestamp of the transaction
    Example: "2025-06-17T12:20:00Z"

  - `transactions.date_created` (integer, required)
    Unix timestamp (milliseconds) when transaction was created
    Example: 1566203005000

  - `transactions.date_confirmed` (integer, required)
    Unix timestamp (milliseconds) when transaction was confirmed on blockchain
    Example: 1566203005000

  - `status` (string, required)
    Status of the channel
    Enum: "ACTIVE", "INACTIVE", "CLOSED"

  - `reason` (string,null)
    Reason for current status (if applicable)

  - `created_at` (string, required)
    ISO 8601 timestamp when the channel was created
    Example: "2025-09-18T22:54:00.542Z"

  - `updated_at` (string, required)
    ISO 8601 timestamp when the channel was last updated
    Example: "2025-09-18T22:54:00.542Z"

## Response 400 fields (application/json):

  - `code` (string, required)
    Error code identifying the type of error

  - `reason` (string, required)
    Human-readable error message


