Skip to main content
Authorizing a card payment is not a separate endpoint. It’s Create Payment with payment_method.detail.card.capture set to false. Funds are held on the cardholder’s account and released to you only when you Capture the transaction. If you don’t capture before the authorization expires, or you call Cancel, the hold is released back to the cardholder.

When to use authorize-only

  • You need to verify funds and customer eligibility before shipping, fulfilling, or producing a digital good.
  • Final amount is not known at checkout (hotels, car rentals, marketplaces, delivery with tip).
  • You want to split capture across multiple shipments from a single authorization.

The request

Send a normal Create Payment request with payment_method.detail.card.capture: false:
curl --request POST \
  --url https://api-sandbox.y.uno/v1/payments \
  --header 'Content-Type: application/json' \
  --header 'Accept: application/json' \
  --header 'public-api-key: YOUR_PUBLIC_API_KEY' \
  --header 'private-secret-key: YOUR_PRIVATE_SECRET_KEY' \
  --data '{
  "account_id": "<account_id>",
  "merchant_order_id": "auth-20260419-001",
  "merchant_reference": "auth-ref-001",
  "description": "Pre-authorization for order #12345",
  "country": "US",
  "amount": { "currency": "USD", "value": 100.00 },
  "workflow": "DIRECT",
  "customer_payer": {
    "first_name": "Dee",
    "last_name": "Hock",
    "email": "john.doe@example.com"
  },
  "payment_method": {
    "type": "CARD",
    "vaulted_token": "<vaulted_token>",
    "detail": {
      "card": {
        "capture": false,
        "installments": 1
      }
    }
  }
}'

The response

On success, Yuno returns the full Payment object with status: PENDING and sub_status: AUTHORIZED, and a transaction of type: AUTHORIZE. The card is not charged at this point. Funds are held.
{
  "code": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
  "status": "PENDING",
  "sub_status": "AUTHORIZED",
  "amount": { "currency": "USD", "value": "100.00", "captured": "0", "refunded": "0" },
  "transactions": {
    "type": "AUTHORIZE",
    "status": "SUCCEEDED",
    "response_code": "SUCCEEDED"
  }
}

Next steps

Capture

Settle the authorization. Supports partial capture up to the authorized amount.

Cancel

Release the hold before capture.
Authorization windows are issuer- and scheme-dependent, typically 7 days for most card brands. Uncaptured authorizations expire automatically. Plan capture/cancel calls well inside that window.
Only card-family methods (CARD, APPLE_PAY, GOOGLE_PAY) support authorize-only. Bank transfers, vouchers, BNPL, and wallets settle immediately. capture: false is ignored for those methods.