> This page is for Cash App Pay Partner API.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://developers.cash.app/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://developers.cash.app/_mcp/server.

# Event: grant.created

POST 

**When is this event triggered?**

This event is created whenever a grant is created. This is caused by a customer request being approved.

Reference: https://developers.cash.app/cash-app-pay-partner-api/api-reference/network-api/grant-created

## Request

### Payload

- `type` (string, required) — The type of event that occurred. `grant.created` for this event.
- `event_id` (string, required) — A unique identifier provided by Cash App for the event.
- `created_at` (datetime, required) — When this event occured in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339) format (UTC). The time that the event is delivered may be significantly later than this timestamp due to webhooks being retried for up to 72 hours.
- `data` (GrantCreatedPayloadData, required) — Data about the grant that was created.

## Types

### GrantCreatedPayloadData

Data about the grant that was created.

- `id` (string, required) — A unique identifier provided by Cash App for the grant.
- `object` (GrantCreatedPayloadDataObject, required) — A snapshot of the grant immediately after the grant was created.
- `type` (string, required) — The resource type contained in the `object` field. For this event, it is `grant`.

### GrantCreatedPayloadDataObject

A snapshot of the grant immediately after the grant was created.

- `grant` (Grant, required) — Describes a grant that can be used to perform actions specified in a customer request using the Network API.

### Grant

Describes a grant that can be used to perform actions specified in a customer request using the Network API.

- `id` (string, required) — Unique identifier for this grant issued by Cash App. Min length: `1` Max length: `256`
- `customer_id` (string, required) — ID of the customer that approved this grant. Min length: `1` Max length: `128`
- `request_id` (string, required) — A unique identifier issued by Cash App for the customer request that resulted in the creation of this grant. Min length: `1` Max length: `128`
- `action` (Action, required) — Represents what the client intends to do to a customer if given authorization.
- `status` (enum, required) — Describes whether or not this grant can be used to perform the action associated with it. If `ACTIVE`, it can be used to perform the action. If `EXPIRED`, it may no longer be used to perform the action due to the current time being past the "expires_at" time. If `CONSUMED`, it was already redeemed to perform the action and cannot be used again. If `REVOKED`, the customer or merchant explicitly unauthorized the grant, preventing it from being used to perform the action.
  - Allowed values: `ACTIVE`, `CONSUMED`, `REVOKED`, `EXPIRED`
- `type` (enum, required) — Describes whether this grant can be only be used once (`ONE_TIME`) or repeatedly (`EXTENDED`).
  - Allowed values: `ONE_TIME`, `EXTENDED`
- `channel` (enum, required) — How the customer is expected to interact with the request. - `IN_PERSON`: The customer presents or scans a QR code at a physical location to approve the request. - `ONLINE`: The customer scans a QR code or is redirected to Cash App from a browser context. - `IN_APP`: The customer scans a QR code or is redirected to Cash App from a native mobile application context.
  - Allowed values: `IN_PERSON`, `ONLINE`, `IN_APP`
- `created_at` (datetime, required) — When this grant was created, in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339) format (UTC).
- `updated_at` (datetime, required) — When this grant was last updated, in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339) format (UTC).
- `expires_at` (datetime, optional) — If present, indicates when the grant's status will become `EXPIRED`, preventing a client from using it to create payments or refunds. The timestamp is in the [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339) format (UTC).

### Action

Represents what the client intends to do to a customer if given authorization.

- `type`: `ONE_TIME_PAYMENT`
  - `scope_id` (string, required) — ID of the client, brand, or merchant that will charge the customer. If a client ID is passed, the grant from this action can be used to create a payment for any merchant owned by the client. If a brand ID is passed, the grant from this action can be used to create a payment for any merchant that has a matching brand ID. If a merchant ID is passed, the grant from this action can be used to create a payment for the merchant with a matching ID. Min length: `1` Max length: `128`
  - `amount` (integer, optional) — Amount to charge the customer, in the lowest unit of the associated currency. Min value: `1`
  - `currency` (enum, optional) — Indicates the country associated with an entity. Values are from the [ISO-4217 Alpha-3](https://www.iso.org/iso-4217-currency-codes.html) specification. Current values: - `USD`: United States Dollar
    - Allowed values: `USD`
- `type`: `ON_FILE_PAYMENT`
  - `scope_id` (string, required) — ID of the client or brand that will charge customers. If a client ID is passed, the grant from this action can be used to create a payment for any merchant owned by the client. If a brand ID is passed, the grant from this action can be used to create a payment for any merchant that has a matching brand ID. Merchant IDs may *not* be passed. Min length: `1` Max length: `128`
  - `account_reference_id` (string, optional) — Identifier of the account or customer associated to the on file action.
- `type`: `ON_FILE_DEPOSIT`
  - `account_reference_id` (string, required) — Identifier of the account or customer associated to the on file action.
  - `scope_id` (string, required) — ID of the client or brand that indicates the set of merchants that will deposit to customers. If a client ID is passed, the grant from this action can be used to create a deposit for any merchant owned by the client. If a brand ID is passed, the grant from this action can be used to create a deposit for any merchant that has a matching brand ID. Min length: `1` Max length: `128`
- `type`: `LINK_ACCOUNT`