oceafin
    • Oceafin Partner API V1
    • Getting Started
    • Authentication
    • Customers And Onboarding
    • Product Workflows
    • Webhooks
    • Errors
    • Partner Customers
      • Create partner customer
        POST
      • Upload or link a file to a partner customer
        POST
      • Submit partner-attested KYC or KYB evidence
        POST
      • List partner customer balances
        GET
      • List partner customer transactions
        GET
      • Get partner transaction
        GET
    • Partner Conversion
      • List partner conversion quotes
        GET
      • Create partner conversion quote
        POST
      • Get partner conversion quote
        GET
      • List partner conversions
        GET
      • Create partner conversion approval draft
        POST
      • Get partner conversion
        GET
    • Partner Fiat
      • Get partner fiat account capabilities
        GET
      • Create partner fiat account application
        POST
      • Submit additional information for a partner fiat account application
        POST
      • List partner fiat accounts
        GET
      • Get partner fiat deposit instructions
        GET
      • List partner fiat deposits
        GET
      • Get partner fiat deposit
        GET
      • List partner bank accounts
        GET
      • Create partner bank account
        POST
      • Get partner fiat withdrawal capabilities
        GET
      • Activate partner fiat withdrawal capability
        POST
      • Submit fiat withdrawal capability activation additional information
        POST
      • Create partner fiat withdrawal quote
        POST
      • Create partner fiat withdrawal approval draft
        POST
      • List partner fiat withdrawals
        GET
      • Submit an approved partner fiat withdrawal for processing
        POST
      • Submit additional information for a partner fiat withdrawal
        POST
      • Get partner fiat withdrawal
        GET
    • Partner Crypto
      • List partner crypto deposit wallets
      • List partner crypto deposits
      • Get partner crypto deposit
      • Submit partner crypto deposit Travel Rule information
      • Create partner crypto withdrawal quote
      • List partner crypto wallet beneficiaries
      • Create partner crypto wallet beneficiary
      • Get partner crypto wallet beneficiary
      • Remove partner crypto wallet beneficiary
      • Sync partner crypto wallet beneficiary
      • Create partner crypto withdrawal approval draft
      • List partner crypto withdrawals
      • Submit an approved partner crypto withdrawal for processing
      • Get partner crypto withdrawal
      • List partner crypto refunds
      • Create partner crypto refund approval draft
      • Get partner crypto refund
      • Submit an approved partner crypto refund for processing
      • Confirm partner crypto refund
      • List partner crypto checkouts
      • Create partner crypto checkout
      • Get partner crypto checkout
      • Create partner checkout link
      • Create partner checkout POS payment request
      • Close partner crypto checkout
      • List partner collection buyers
      • Create partner collection buyer
      • Get partner collection buyer
      • Update partner collection buyer
      • List partner collection wallets
      • Create partner collection wallet
      • Get partner collection wallet
      • Update partner collection wallet expiry
      • Deactivate partner collection wallet
      • List partner collection payments
      • Get partner collection payment
    • Schemas
      • CreatePartnerCustomerRequest
      • PartnerCustomerType
      • PartnerCustomerStatus
      • PartnerCustomer
      • LinkPartnerCustomerFileRequest
      • UploadPartnerCustomerFileRequest
      • PartnerCustomerFile
      • PartnerOnboardingSubmissionRequest
      • PartnerOnboardingEvidenceSubmission
      • PartnerIndividualKycSubmission
      • PartnerKycPersonalDetails
      • PartnerKycAdditionalPersonalDetails
      • PartnerCorporateKybSubmission
      • PartnerKybCorporationDetails
      • PartnerKybAdditionalCorporationDetails
      • PartnerOnboardingSupportingDocument
      • PartnerOnboardingAddress
      • PartnerOnboardingContactNumber
      • PartnerOnboardingContactPerson
      • PartnerOnboardingKeyPerson
      • PartnerOnboardingSubmission
      • PartnerBalancePage
      • PartnerBalance
      • PartnerTransactionPage
      • PartnerTransaction
      • CreatePartnerFiatAccountApplicationRequest
      • SubmitPartnerFiatAccountAdditionalInfoRequest
      • PartnerFiatCapabilities
      • PartnerFiatCapabilitiesData
      • PartnerFiatCapabilityRoute
      • PartnerFiatAccountApplication
      • PartnerFiatAccountPage
      • PartnerFiatAccount
      • PartnerFiatAccountBankDetails
      • PartnerFiatDepositInstructions
      • PartnerFiatDepositInstruction
      • PartnerFiatDepositPage
      • PartnerFiatDeposit
      • PartnerCryptoDepositWalletPage
      • PartnerCryptoDepositWallet
      • PartnerCryptoDepositPage
      • PartnerCryptoDeposit
      • SubmitPartnerCryptoTravelRuleInfoRequest
      • PartnerCryptoTravelRuleInfo
      • CreatePartnerCryptoWithdrawalQuoteRequest
      • PartnerCryptoWithdrawalQuote
      • CreatePartnerWalletBeneficiaryRequest
      • PartnerWalletBeneficiarySupportFile
      • PartnerCryptoWalletBeneficiaryActionRequest
      • PartnerWalletBeneficiaryPage
      • PartnerWalletBeneficiary
      • CreatePartnerCryptoWithdrawalRequest
      • SubmitPartnerCryptoWithdrawalRequest
      • PartnerCryptoWithdrawalPage
      • PartnerCryptoWithdrawal
      • CreatePartnerCryptoRefundRequest
      • SubmitPartnerCryptoRefundRequest
      • PartnerCryptoRefundPage
      • PartnerCryptoRefund
      • CreatePartnerConversionQuoteRequest
      • CreatePartnerConversionRequest
      • PartnerConversionQuotePage
      • PartnerConversionQuote
      • PartnerConversionPage
      • PartnerConversion
      • CreatePartnerCheckoutRequest
      • PartnerCheckoutPage
      • PartnerCheckout
      • CreatePartnerCheckoutLinkRequest
      • PartnerCheckoutLink
      • CreatePartnerCheckoutPosPaymentRequest
      • PartnerCheckoutPosPaymentRequest
      • PartnerCheckoutActionRequest
      • CreatePartnerBuyerRequest
      • UpdatePartnerBuyerRequest
      • PartnerBuyerDocument
      • PartnerBuyerPage
      • PartnerBuyer
      • CreatePartnerCollectionWalletRequest
      • UpdatePartnerCollectionWalletExpiryRequest
      • PartnerCollectionWalletActionRequest
      • PartnerCollectionWalletPage
      • PartnerCollectionWallet
      • PartnerCollectionWalletAddress
      • PartnerCollectionPaymentPage
      • PartnerCollectionPayment
      • CreatePartnerBankAccountRequest
      • PartnerBankAccountThirdPartyBeneficiary
      • PartnerBankAccountThirdPartyAddress
      • PartnerBankAccountPage
      • PartnerBankAccount
      • PartnerFiatWithdrawalCapabilities
      • PartnerFiatWithdrawalCapabilitiesData
      • PartnerFiatWithdrawalCapabilityRoute
      • ActivatePartnerFiatWithdrawalCapabilityRequest
      • SubmitPartnerFiatWithdrawalCapabilityAdditionalInfoRequest
      • PartnerFiatWithdrawalCapabilityActivation
      • CreatePartnerFiatWithdrawalQuoteRequest
      • PartnerFiatWithdrawalQuote
      • PartnerBalanceAvailability
      • CreatePartnerFiatWithdrawalRequest
      • SubmitPartnerFiatWithdrawalRequest
      • SubmitPartnerFiatWithdrawalAdditionalInfoRequest
      • PartnerFiatWithdrawalAdditionalInfo
      • PartnerFiatWithdrawalPage
      • PartnerFiatWithdrawal
      • PartnerOperationAuthorizationEvidence
      • PageInfo
      • PartnerProblem
      • PartnerProblemCode

    Authentication

    The Partner API uses HMAC-SHA256 request signing. Each request is authenticated
    by the API client id, timestamp, nonce, and signature.

    Required Headers#

    HeaderRequiredNotes
    X-Partner-Client-IdYesPartner API client id issued by Oceafin.
    X-Partner-TimestampYesOffset date-time, for example 2026-06-28T00:00:00Z.
    X-Partner-NonceYesUnique random value, at least 16 characters.
    X-Partner-SignatureYesLowercase hex HMAC-SHA256 signature.
    X-Request-IdYesPartner-generated request id for support correlation.
    Idempotency-KeyMutations onlyRequired for non-GET requests.
    The timestamp must be within the server freshness window. A nonce cannot be
    reused for the same client.

    Signature Base String#

    Compute the request body SHA-256 hash as lowercase hex. Use an empty string for
    the body when the request has no body.
    The signature base string is exactly:
    METHOD
    /partner/v1/path?raw=query
    bodySha256Hex
    X-Partner-Timestamp
    X-Partner-Nonce
    Idempotency-Key-or-empty-string
    Rules:
    METHOD is uppercase.
    Use the raw path and raw query string exactly as sent on the wire.
    Include the leading /partner/v1.
    Do not include scheme, host, or fragment.
    For GET, the final line is empty.
    For mutations, the final line is the exact Idempotency-Key header value.
    The final X-Partner-Signature value is:
    lowercase_hex(hmac_sha256(clientSecret, signatureBaseString))

    Node.js Signing Example#

    Idempotency#

    All mutations require Idempotency-Key.
    Use a stable key for one partner action, not a new key for every retry. Good
    examples:
    cust-100001:kyc-submit:kyc-20260628-001
    cust-100001:fiat-withdrawal:create:wd-9001
    cust-100001:conversion:create:conv-7001
    Behavior:
    Same key and same request body returns the stored response.
    Same key and different request body returns PARTNER_IDEMPOTENCY_CONFLICT.
    A network retry should reuse the same key and the same request body.
    Modified at 2026-06-28 00:49:25
    Previous
    Getting Started
    Next
    Customers And Onboarding
    Built with