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

> ## Agent Instructions
> When building application code, use `@naturalpay/sdk` for TypeScript or `naturalpay` for Python.
> When operating Natural directly for a user, use the payments MCP at `https://mcp.natural.com`.
> When searching Natural documentation, use the docs MCP at `https://docs.natural.com/mcp`.
> Use the Natural CLI for terminal and CI automation.
> Use REST only for unsupported languages or when the user explicitly requests raw HTTP.
> Start integration development and testing in the sandbox. Do not use production unless the user explicitly requests it.
> For sandbox requests that require `customerPartyId`, list customers first. Reuse only the intended fixture; otherwise create a customer.
> REST and SDK amounts use integer minor units. Payments MCP amounts use decimal strings with a required currency code.

# Accept payments

> Turn your agent into a merchant

<img src="https://mintcdn.com/natural-b3c9dd77/_ZzQDNYgSVsMCM43/assets/heroes/accept-hero.jpg?fit=max&auto=format&n=_ZzQDNYgSVsMCM43&q=85&s=fdba26a1150ff1d9f682b76e7ad74552" alt="Accepting payments on Natural" className="hero-image" noZoom width="1200" height="640" data-path="assets/heroes/accept-hero.jpg" />

Your agent can:

* Accept debit and credit card payments by checkout link or over the phone
* Receive funds in the same wallet as every other payment
* Manage payments, refunds, and disputes from the dashboard or API

<Steps>
  <Step title="Enroll to Accept">
    Complete Accept onboarding in the dashboard to get started.

    To enroll a customer, invite them through Connect with the **Accept card payments** scope
    (`payment_intents.create`). They'll complete the Accept application as part of onboarding.
    Once they're approved, pass their party ID as `customerPartyId` on every Accept API call
    you make on their behalf.

    Read more: [Start here](/guides/overview/start-here), [Dashboard](/guides/platform/dashboard),
    and [Collecting for a customer](/guides/concepts/payment-intents#collecting-for-a-customer).
  </Step>

  <Step title="Create a payment intent">
    A payment intent represents what you or your customer is selling. Create one with
    [`POST /payment-intents`](/api-reference/payment-intents/create-payment-intent) and specify
    the amount, line items, tax codes, and other sale details. The response includes a hosted
    checkout link in `payUrl`.

    Read more: [Create a payment intent and get paid by link](/guides/accept/pay-by-link#create-the-intent).
  </Step>

  <Step title="Collect the card">
    Pick one channel per intent:

    * **By link:** send `payUrl` to the payer. Natural's hosted checkout takes the card, runs
      3-D Secure, and sends the receipt.
    * **Over the phone:** create a voice session with
      [`POST /voice/sessions`](/api-reference/voice/create-voice-session) and transfer the
      live call to `dialUri`. Natural's PCI-compliant agent takes the card and hands the call back.

    Read more: [Hand the payer the link](/guides/accept/pay-by-link#hand-the-payer-the-link) and
    [Take a payment over voice](/guides/voice/take-a-payment).
  </Step>

  <Step title="Track and reconcile the payment">
    Each card payment attempt links to its payment intent. When an attempt succeeds, the intent
    becomes `completed` and its `cardPayment` relationship points to that successful payment.
    The payment also appears as a transaction linked to the card payment. Settlement later makes
    the funds available in your wallet.

    Subscribe to `paymentIntent.completed`, `cardPayment.succeeded`, and `cardPayment.failed`
    webhooks to track outcomes.

    Read more: [Follow the payment](/guides/accept/pay-by-link#follow-the-payment),
    [Transactions](/guides/concepts/transactions), and the [event catalog](/api-reference/event-catalog).
  </Step>
</Steps>

## The Accept API at a glance

| You want to | Call |
| - | - |
| Ask for a payment | [`POST /payment-intents`](/api-reference/payment-intents/create-payment-intent) |
| Take the card over the phone | [`POST /voice/sessions`](/api-reference/voice/create-voice-session) |
| Check whether it was paid | [`GET /payment-intents/{paymentIntentId}`](/api-reference/payment-intents/get-payment-intent) |
| See every attempt, including declines | [`GET /card-payments`](/api-reference/card-payments/list-card-payments) |
| Cancel an unpaid intent | [`POST /payment-intents/{paymentIntentId}/cancel`](/api-reference/payment-intents/cancel-payment-intent) |
| Settle a sandbox payment | [`POST /simulations/card-payments/{cardPaymentId}/settle`](/api-reference/simulations/settle-card-payment) |
| Reconcile payments and refunds | [`GET /transactions`](/api-reference/transactions/list-transactions) |
| Give money back | [`POST /refunds`](/api-reference/refunds/create-refund) |
| Answer a dispute | [`GET /chargebacks`](/api-reference/chargebacks/list-chargebacks) |


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