---
title: "Execute Payments"
method: PUT
path: "/v2/payments"
tags: ["B2B Payments"]
---

# Execute Payments

`PUT /v2/payments`

Execute payments by signing the typed data and sending the signature along with the request.

## Headers

- `x-idempotency-key` string, required

## Request body

- object
  - `from` string, required — Identifier of a Rise team (a workspace below a company). 15-character nanoid prefixed with `te-`.
  - `to` object[], required
    - `to` string, required — Identifier of a Rise user. 15-character nanoid prefixed with `us-`.
    - `amount_cents` integer, required
    - `currency_symbol` 'USD'
    - `invoice_description` string
  - `pay_now` boolean, required
  - `network` 'arbitrum'
  - `signer` string, required — EVM address (0x + 40 hex chars) or null/empty for unknown.
  - `typed_data` union, required
    - object
      - `from` string, required — EVM address (0x + 40 hex chars) or null/empty for unknown.
      - `to` string, required — EVM address (0x + 40 hex chars) or null/empty for unknown.
      - `salt` string, required
      - `expires` string, required
      - `data` object, required
        - `groupID` string, required
        - `merkleRoot` string, required
        - `paymentsCount` string, required
        - `maxAmountPerPayment` string, required
        - `deadline` string, required
    - object
      - `from` string, required — EVM address (0x + 40 hex chars) or null/empty for unknown.
      - `to` string, required — EVM address (0x + 40 hex chars) or null/empty for unknown.
      - `salt` string, required
      - `expires` string, required
      - `data` object, required
        - `groupID` string, required
        - `token` string, required — EVM address (0x + 40 hex chars) or null/empty for unknown.
        - `payments` object[], required
          - `id` string, required
          - `recipient` string, required — EVM address (0x + 40 hex chars) or null/empty for unknown.
          - `amount` string, required
  - `signature` string, required — ECDSA signature over an EVM message (0x + 130 hex chars covering r, s, v).
  - `payment_data` object, required
    - `checksum` string, required

## Response `200`

Default Response

- object
  - `success` boolean, required
  - `data` object, required
    - `transaction` string, required — Identifier of a Rise transaction (the unit tracked end-to-end across the payment-handler pipeline). 15-character nanoid prefixed with `tx-`. Distinct from on-chain tx hashes.

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `500` — Internal Server Error

---

[API](https://skmtc.net/riseworks/apis/b2b-api-v1-legacy.md) · [All operations](https://skmtc.net/riseworks/apis/b2b-api-v1-legacy/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/riseworks/b2b-api-v1-legacy/revisions/6f6941749255/schema)
