> ## Documentation Index
> Fetch the complete documentation index at: https://docs.zapyd.com/llms.txt
> Use this file to discover all available pages before exploring further.

# SDKs

> Official Node.js and Python SDKs are coming soon. Until then, call the REST API directly.

<link rel="stylesheet" href="static/hero.css" />

<div className="zp-page zp-sdk">
  <section className="zp-hero">
    <div className="zp-hero-grid">
      <div className="zp-hero-copy zp-sdk-enter">
        <span className="zp-pill"><span className="zp-pill-dot" aria-hidden="true" />SDKs · Coming soon</span>

        <h1 className="zp-hero-title">
          Move money in <span className="zp-accent">a few lines of code.</span>
        </h1>

        <p className="zp-lead">
          Official Node.js and Python SDKs are on the way. They sign every request, type every endpoint and verify every webhook, so you write the product and not the plumbing.
        </p>

        <div className="zp-hero-row">
          <a className="zp-btn zp-btn--primary" href="mailto:support@zapyd.com?subject=SDK%20early%20access">Get early access</a>
          <a className="zp-btn zp-btn--secondary" href="/guides/getting-started/quickstart">Use the REST API today</a>
        </div>
      </div>

      <div className="zp-demo-wrap">
        <img className="zp-demo" noZoom src="https://mintcdn.com/dollarpe/LOqUvzbUM8uPd_RC/static/sdk-demo.svg?fit=max&auto=format&n=LOqUvzbUM8uPd_RC&q=85&s=8e4db8bf6b7aacbb57ad970a25003705" width="636" height="396" alt="Terminal that opens on a ZAPYD banner, installs @zapyd/node, shows quote.ts creating a Zapyd client and calling zapyd.payout.quotation for 100 USDC to INR, then runs it: 201 Created with rate 92.10 and receiving_amount 9210.00." data-path="static/sdk-demo.svg" />
      </div>
    </div>
  </section>

  <section className="zp-section zp-sdk-preview">
    <div className="zp-sdk-preview-copy">
      <span className="zp-eyebrow">Preview</span>
      <h2 className="zp-sdk-h2">One client. Every endpoint.</h2>
      <p className="zp-sdk-sub">Pass your API key and secret once. The SDK builds the canonical JSON, signs it and attaches the signature headers to every call.</p>

      <div className="zp-sdk-install">
        <div className="zp-sdk-install-row"><code>npm install @zapyd/node</code><span>Node.js</span></div>
        <div className="zp-sdk-install-row"><code>pip install zapyd</code><span>Python</span></div>
        <p className="zp-sdk-note">Not published yet. Package names and method signatures may change before release.</p>
      </div>
    </div>

    <div className="zp-sdk-code">
      <CodeGroup>
        ```ts payout.ts theme={"theme":{"light":"css-variables","dark":"css-variables"}}
        import Zapyd from '@zapyd/node';

        const zapyd = new Zapyd({
          apiKey: process.env.ZAPYD_API_KEY,
          secret: process.env.ZAPYD_SECRET,
          environment: 'sandbox',
        });

        // Signed with HMAC-SHA256 for you
        const quote = await zapyd.payout.quotation({
          asset: 'USDC',
          fiat: 'INR',
          sending_amount: '100',
          customer_id: customerId,
          bank_id: bankId,
        });

        console.log(quote.receiving_amount); // 9210.00
        ```

        ```python payout.py theme={"theme":{"light":"css-variables","dark":"css-variables"}}
        import os
        from zapyd import Zapyd

        zapyd = Zapyd(
            api_key=os.environ["ZAPYD_API_KEY"],
            secret=os.environ["ZAPYD_SECRET"],
            environment="sandbox",
        )

        # Signed with HMAC-SHA256 for you
        quote = zapyd.payout.quotation(
            asset="USDC",
            fiat="INR",
            sending_amount="100",
            customer_id=customer_id,
            bank_id=bank_id,
        )

        print(quote.receiving_amount)  # 9210.00
        ```
      </CodeGroup>
    </div>
  </section>

  <section className="zp-section">
    <div className="zp-section-head">
      <div>
        <span className="zp-eyebrow">What the SDK handles</span>
        <h2>The parts every integration rewrites.</h2>
      </div>
    </div>

    <div className="zp-sdk-features">
      <div className="zp-sdk-feature">
        <div className="zp-sdk-glyph" data-zp-dither="signing" aria-hidden="true" />

        <b>Request signing</b>
        <p>Timestamps, canonical JSON and the HMAC-SHA256 signature, built for every request. GET requests sign <code>{"{}"}</code> as the API expects.</p>
      </div>

      <div className="zp-sdk-feature">
        <div className="zp-sdk-glyph" data-zp-dither="endpoints" aria-hidden="true" />

        <b>Typed endpoints</b>
        <p>Customers, KYC, bank accounts, payins and payouts as typed methods, with request fields and errors that match the API Reference.</p>
      </div>

      <div className="zp-sdk-feature">
        <div className="zp-sdk-glyph" data-zp-dither="webhooks" aria-hidden="true" />

        <b>Webhook verification</b>
        <p>Verify each event's signature and parse it into a typed object before it reaches your handler.</p>
      </div>
    </div>
  </section>

  <section className="zp-section zp-section--last">
    <div className="zp-sdk-cta">
      <div>
        <span className="zp-eyebrow">Until then</span>
        <h2 className="zp-sdk-h2">Every rail already works over REST.</h2>
        <p className="zp-sdk-sub">The SDKs wrap the same endpoints you can call today, so nothing you build now needs rewriting. Want early access? Email <a href="mailto:support@zapyd.com">[support@zapyd.com](mailto:support@zapyd.com)</a>.</p>
      </div>

      <div className="zp-sdk-links">
        <a href="/guides/getting-started/quickstart"><span><b>Quickstart</b>Make your first signed request and a sandbox order.</span></a>
        <a href="/guides/development-and-testing/authentication"><span><b>Authentication</b>Signing helpers in three languages, with a test vector.</span></a>
        <a href="/guides/development-and-testing/webhooks"><span><b>Webhooks</b>Event payloads and a signature verifier.</span></a>
      </div>
    </div>
  </section>
</div>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.