---
title: "x402 से अपना पहला paid request भेजें"
description: "x402.erpc.global पर request भेजें, 402 response में कीमत पढ़ें, x402 client से भुगतान करें और settlement receipt के साथ RPC result पाएँ।"
canonical: "https://erpc.global/hi/doc/x402/quickstart/"
locale: "hi"
---

# x402 से अपना पहला paid request भेजें

यह guide एक Solana request को x402 के पूरे flow से ले जाती है: कीमत पढ़ना, उसका भुगतान करना, और settlement receipt के साथ जवाब पाना। बाकी 15 चेन भी अपने-अपने path पर इसी तरह काम करती हैं।

आपको एक wallet चाहिए जिसमें Solana पर USDC हो, या Base पर USDC या EURC हो, और एक x402 client चाहिए: वह software जो 402 response पढ़ता है, आपके wallet से payment पर sign करता है और उस payment के साथ request दोबारा भेजता है। x402 clients के लिए [x402.org](https://x402.org/) पर x402 documentation देखें।

## 1. Request भेजें

RPC request बिना payment के भेजें:

```bash
curl -i https://x402.erpc.global/v1/solana-mainnet \
  --header 'Content-Type: application/json' \
  --data '{"jsonrpc":"2.0","id":1,"method":"getSlot"}'
```

जवाब 402 Payment Required होता है। इसके headers में method और कीमत होती है:

```http
HTTP/2 402
x-payment-required: eyJ4NDAyVmVyc2lvbiI6Mi…
x-rpc-methods: getSlot
x-rpc-weight: 1000
x-rpc-price-usd: 0.001
```

Body में `accepts` के अंदर payment options होते हैं, हर उस stablecoin के लिए एक, जिससे request का भुगतान किया जा सकता है। `amount` stablecoin की सबसे छोटी unit में होता है, इसलिए 1000 का मतलब 0.001 USDC या 0.001 EURC है:

```json
{
  "error": { "code": "payment_required", "message": "Payment required", "request_id": "…" },
  "x402Version": 2,
  "accepts": [
    { "scheme": "exact", "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp", "amount": "1000", "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", … },
    { "scheme": "exact", "network": "eip155:8453", "amount": "1000", "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913", … },
    { "scheme": "exact", "network": "eip155:8453", "amount": "1000", "asset": "0x60a3E35Cc302bFA44Cb288Bc5a4F316Fdb1adb42", … }
  ],
  "pricing": { "methods": ["getSlot"], …, "weight": 1000, "rawWeight": 42, …, "price": "$0.001", … },
  …
}
```

## 2. x402 client से भुगतान करें

402 response अपने x402 client को दें। Client ऐसा option चुनता है जिसका भुगतान आपका wallet कर सके, उस amount के payment पर sign करता है और उसे X-Payment header के लिए encode करता है। इस payment में network fees के लिए SOL या ETH की ज़रूरत नहीं होती।

## 3. Payment के साथ request दोबारा भेजें

वही body दोबारा भेजें, और payment को X-Payment header में रखें:

```bash
curl -i https://x402.erpc.global/v1/solana-mainnet \
  --header 'Content-Type: application/json' \
  --header 'X-Payment: <PAYMENT_PAYLOAD>' \
  --data '{"jsonrpc":"2.0","id":1,"method":"getSlot"}'
```

Body में कोई बदलाव न करें। कीमत body से तय होती है, इसलिए अगर बदली हुई body की कीमत अलग हो, तो payment उससे अब मेल नहीं खाता और जवाब `price_mismatch` होता है।

Payment verify और settle होने के बाद RPC जवाब लौटता है, और settlement receipt X-Payment-Response header में होती है:

```http
HTTP/2 200
x-payment-response: <RECEIPT>
```

```json
{ "jsonrpc": "2.0", "id": 1, "result": … }
```

एक payment से केवल एक request का भुगतान होता है। अगर आप वही payment दोबारा भेजते हैं, तो उसे 402 `payment_invalid` या 409 `duplicate_payment` के साथ अस्वीकार किया जाता है, और request दोबारा आगे नहीं भेजा जाता।

## Response के status codes

जिस request पर x402.erpc.global भुगतान माँगने से पहले ही error लौटा देता है, उसका कोई शुल्क नहीं लगता।

| Status | `error.code` | क्या हुआ |
| --- | --- | --- |
| 402 | `payment_required` | कोई payment नहीं भेजा गया। Body में कीमत और payment options हैं। |
| 402 | `payment_invalid` | Payment verification में पास नहीं हुआ। नए payment पर sign करें और request दोबारा भेजें। |
| 402 | `price_mismatch` | Payment, इस request के 402 में दिए गए options में से किसी से मेल नहीं खाता, जैसे कीमत में। |
| 402 | `payment_amount_too_low` | Amount उस सबसे छोटे payment से कम है जिसे x402.erpc.global settle करता है। |
| 402 | `settlement_failed` | Settlement के विफल होने की सूचना मिली। Response में payment options फिर से दिए जाते हैं। |
| 409 | `duplicate_payment` | Payment पहले ही इस्तेमाल हो चुका है। |
| 400 | `method_not_supported`, `invalid_request` | यह path वह method नहीं बेचता, या वह body स्वीकार नहीं करता। कोई शुल्क नहीं लगता। |
| 413 | `batch_too_large` | Batch में 100 से ज़्यादा calls हैं। कोई शुल्क नहीं लगता। |
| 500 | `configuration_error` | यह path अभी requests नहीं संभाल सकता। कोई शुल्क नहीं लगता। |
| 503 | `payment_unavailable` | अभी कोई payment option नहीं दिया जा सकता। कोई शुल्क नहीं लगता। Retry-After में बताए गए seconds के बाद फिर कोशिश करें। |
| 503 | `service_busy` | एक साथ बहुत ज़्यादा requests हैं। कोई शुल्क नहीं लगता। Retry-After में बताए गए seconds के बाद फिर कोशिश करें। |
| 502 | `settlement_failed` | Settlement का नतीजा पता नहीं है: हो सकता है payment हो गया हो, और कोई receipt साथ नहीं है। नए payment पर sign करने से पहले Solana या Base पर जाँचें कि आपका signed payment हुआ या नहीं। |
| 502, 504 | `upstream_error`, `upstream_timeout` | Payment settle हो गया, लेकिन चेन ने जवाब नहीं दिया, या समय पर जवाब नहीं दिया। Receipt फिर भी साथ होती है। Request दोबारा भेजने पर नया payment लगेगा। |

Solana पर, जो call बहुत ज़्यादा data पढ़ेगी, जैसे किसी बड़े program पर बिना filter का `getProgramAccounts`, उसे भुगतान माँगे जाने से पहले ही HTTP 200 और JSON-RPC error के साथ जवाब दिया जाता है, इसलिए उसका कोई शुल्क नहीं लगता।

## अगले कदम

- [x402 किसी request की कीमत कैसे तय करता है](https://erpc.global/hi/doc/x402/pricing/): एक call की कीमत, \$0.001 का minimum और batches।
- [x402 का अवलोकन](https://erpc.global/hi/doc/x402/overview/): हर चेन का path और payment options।
- [OpenAPI document](https://x402.erpc.global/doc): हर path के request और response का format।
