Coins.ph Ramp Callback API

Webhook callbacks sent to the merchant's configured callback URL when order status changes

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/coinsph-ramp-callback-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

coinsph-ramp-callback-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: TRADING Account Ramp Callback API
  version: 1.0.0
  description: API reference for Account management — Coins.ph
servers:
- url: https://api.pro.coins.ph
  description: Production
- url: https://api.9001.pl-qa.coinsxyz.me
  description: Sandbox
tags:
- name: Ramp Callback
  description: Webhook callbacks sent to the merchant's configured callback URL when order status changes
paths:
  /openapi/ramp/callback:
    post:
      tags:
      - Ramp Callback
      summary: Ramp Callback API
      description: 'A POST request will be sent to the callback URL configured by the merchant whenever the order status changes. This is NOT an endpoint you call — it documents the payload Coins.ph sends TO your server.


        ## Order Status Values

        - `CREATE` - Order created

        - `RISK_REVIEW` - Risk review in progress

        - `FUND_TRANSFER_PROCESSING` - Fund transfer in progress

        - `QUOTE_ACCEPT_PROCESSING` - Quote acceptance in progress

        - `REFUNDED_TRANSFER_PROCESSING` - Refund transfer in progress

        - `QUOTE_ACCEPTED` - Quote accepted

        - `WAITING_TX_ID` - Waiting for transaction ID from merchant

        - `CRYPTO_DISBURSE_PENDING` - Crypto disbursement pending

        - `CRYPTO_PENDING` - Waiting for crypto deposit

        - `CRYPTO_SENT` - Crypto sent

        - `CRYPTO_CONFIRMING` - Crypto confirming on chain

        - `CRYPTO_CONFIRMED` - Crypto confirmed

        - `CRYPTO_REFUND_PENDING` - Crypto refund pending

        - `CRYPTO_REFUND` - Crypto refunded

        - `PAYOUT_PROCESSING` - Payout processing

        - `PAYOUT_FAILED` - Payout failed

        - `REFUND_FAILED` - Refund failed

        - `PAYOUT_CONFIRMED` - Payout confirmed

        - `MANUAL_REVIEW` - Manual review required

        - `FUND_TRANSFER_BACK` - Fund transferred back

        - `EXPIRED` - Order expired

        - `PROCESSING` - Processing

        - `SUCCEEDED` - Succeeded (terminal)

        - `FAILED` - Failed (terminal)

        - `CANCELLED` - Cancelled (terminal)

        - `REFUNDED` - Refunded (terminal)'
      operationId: rampOrderStatusCallback
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RampCallbackRequest'
            example:
              id: '2199397325237953280'
              rampType: OFF_RAMP
              orderId: '2199397325237953280'
              orderStatus: QUOTE_ACCEPT_PROCESSING
              txId: ''
              errorCode: ''
              errorMessage: ''
              moreInfo:
                createdAt: '2026-04-23T06:09:53Z'
                quoteId: d20eaa5ecde942eeb48b5f40fe981a76
                status: QUOTE_ACCEPT_PROCESSING
                sourceAmount:
                  amount: 1.2
                  currency: USDT
                  zero: false
                  positive: true
                targetAmount:
                  amount: 1.196
                  currency: USDC
                  zero: false
                  positive: true
                sourceCurrency: USDT
                targetCurrency: USDC
                targetWalletAddress: rKrDJLGiSrKsRRtEQVgnWJnKALp5NJeDkC
                targetUserId: '2142216666787644416'
                targetWalletAddressTag: ''
                errorCode: ''
                errorMessage: ''
                txId: ''
                withdrawId: ''
                orderId: '2199397325237953280'
                rampTypeCode: OFF_RAMP
              callbackKey: null
              merchantId: null
              timestamp: 1776924592732
      responses:
        '200':
          description: Merchant acknowledges receipt of the callback
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RampCallbackResponse'
              example:
                code: '0'
                message: success
                data: {}
components:
  schemas:
    RampCallbackRequest:
      type: object
      description: Callback payload sent to the merchant's configured callback URL when order status changes.
      required:
      - rampType
      - orderId
      - orderStatus
      properties:
        id:
          type: string
          description: Unique callback event identifier.
          example: '2199397325237953280'
        rampType:
          type: string
          enum:
          - ON_RAMP
          - OFF_RAMP
          description: Type of ramp operation.
          example: OFF_RAMP
        orderId:
          type: string
          description: The order ID.
          example: '2199397325237953280'
        orderStatus:
          type: string
          enum:
          - CREATE
          - RISK_REVIEW
          - FUND_TRANSFER_PROCESSING
          - QUOTE_ACCEPT_PROCESSING
          - REFUNDED_TRANSFER_PROCESSING
          - QUOTE_ACCEPTED
          - WAITING_TX_ID
          - CRYPTO_DISBURSE_PENDING
          - CRYPTO_PENDING
          - CRYPTO_SENT
          - CRYPTO_CONFIRMING
          - CRYPTO_CONFIRMED
          - CRYPTO_REFUND_PENDING
          - CRYPTO_REFUND
          - PAYOUT_PROCESSING
          - PAYOUT_FAILED
          - REFUND_FAILED
          - PAYOUT_CONFIRMED
          - MANUAL_REVIEW
          - FUND_TRANSFER_BACK
          - EXPIRED
          - PROCESSING
          - SUCCEEDED
          - FAILED
          - CANCELLED
          - REFUNDED
          description: 'Current order status. Terminal statuses: SUCCEEDED, FAILED, CANCELLED, REFUNDED.'
          example: QUOTE_ACCEPT_PROCESSING
        txId:
          type: string
          description: On-chain transaction ID (if applicable).
          example: ''
        errorCode:
          type: string
          description: Error code (if any).
          example: ''
        errorMessage:
          type: string
          description: Error message (if any).
          example: ''
        moreInfo:
          type: object
          description: Additional order information.
          properties:
            createdAt:
              type: string
              format: date-time
              description: Order creation time in ISO 8601 format.
              example: '2026-04-23T06:09:53Z'
            quoteId:
              type: string
              description: Quote identifier.
              example: d20eaa5ecde942eeb48b5f40fe981a76
            status:
              type: string
              description: Status within moreInfo context.
              example: QUOTE_ACCEPT_PROCESSING
            sourceAmount:
              type: object
              properties:
                amount:
                  type: number
                  example: 1.2
                currency:
                  type: string
                  example: USDT
                zero:
                  type: boolean
                  example: false
                positive:
                  type: boolean
                  example: true
            targetAmount:
              type: object
              properties:
                amount:
                  type: number
                  example: 1.196
                currency:
                  type: string
                  example: USDC
                zero:
                  type: boolean
                  example: false
                positive:
                  type: boolean
                  example: true
            sourceCurrency:
              type: string
              example: USDT
            targetCurrency:
              type: string
              example: USDC
            targetWalletAddress:
              type: string
              description: Target wallet address for the transaction.
              example: rKrDJLGiSrKsRRtEQVgnWJnKALp5NJeDkC
            targetUserId:
              type: string
              description: Target user identifier.
              example: '2142216666787644416'
            targetWalletAddressTag:
              type: string
              description: Wallet address tag (if applicable).
              example: ''
            errorCode:
              type: string
              example: ''
            errorMessage:
              type: string
              example: ''
            txId:
              type: string
              description: On-chain transaction ID.
              example: ''
            withdrawId:
              type: string
              description: Withdrawal ID.
              example: ''
            orderId:
              type: string
              example: '2199397325237953280'
            rampTypeCode:
              type: string
              enum:
              - ON_RAMP
              - OFF_RAMP
              example: OFF_RAMP
        callbackKey:
          type: string
          nullable: true
          description: Callback key (if configured).
        merchantId:
          type: string
          nullable: true
          description: Merchant ID (if configured).
        timestamp:
          type: integer
          format: int64
          description: Callback timestamp (epoch millis).
          example: 1776924592732
    RampCallbackResponse:
      type: object
      description: Expected response from merchant after receiving the callback.
      properties:
        code:
          type: string
          description: Response code. '0' indicates success.
          example: '0'
        message:
          type: string
          description: Response message.
          example: success
        data:
          type: object
          description: Response data (can be empty).
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-COINS-APIKEY
x-readme:
  proxy-enabled: false