RamboPay

Developer integration

Create a privacy-aware payment order with one API call.

Core principle: the payment channel receives a standardized descriptor while full product names, SKUs, usage details, and purchase catalogs remain in the merchant system.

API capability overview

POST /api/v1/paymentsCreate payment and return checkout_url
GET /api/v1/payments/:idQuery status, amount, currency, and order ID
WebhookSigned callback after payment succeeds
payment_descriptorControl channel-facing product feedback

Authentication

After email verification and merchant approval, generate an API key from the dashboard.

Authorization: Bearer rp_test_xxx

How to avoid exposing full product information

Do not put full product names, SKUs, detailed usage, or purchase lists into `title`. Use `payment_descriptor` or `title` for a lawful, concise payment summary. Keep real order details in your own database and map them by `merchant_order_id`.

Avoid

{
  "title": "500pcs exact SKU-A991 custom buyer catalog..."
}

Recommended

{
  "merchant_order_id": "B2B-20260723-8819",
  "payment_descriptor": "Merchant Invoice Payment",
  "metadata": {
    "private_order_ref": "stored_by_merchant"
  }
}

Create payment

POST /api/v1/payments
Content-Type: application/json

{
  "amount": "99.00",
  "currency": "USD",
  "merchant_order_id": "ORDER10001",
  "payment_descriptor": "Cross-border Ecommerce Order",
  "return_url": "https://merchant.example/success",
  "notify_url": "https://merchant.example/webhook",
  "metadata": {
    "private_note": "Full SKU remains in merchant system"
  }
}

The response includes `checkout_url`; redirect the buyer there to complete payment.

{
  "id": "pay_xxx",
  "status": "pending",
  "checkout_url": "https://routermodels.com/checkout/pay_xxx"
}

Query payment

GET /api/v1/payments/pay_xxx
Authorization: Bearer rp_test_xxx

Webhook

After payment succeeds, the platform sends a signed callback to `notify_url`. Merchants must verify the signature before fulfillment.

X-RamboPay-Timestamp: 1784780000
X-RamboPay-Signature: hex_hmac_sha256(timestamp + "." + raw_body)

Launch checklist

  • Merchant email is verified and account approved.
  • Default descriptor is configured and does not include full product names or SKUs.
  • notify_url is reachable and webhook signature verification is implemented.
  • Merchant system can recover real order details using merchant_order_id.
  • Fulfillment is idempotent.