Skip to main content
POST
cURL

Authorizations

Authorization
string
header
required

API Key for authentication

Headers

X-Grid-Environment
string
required

The environment you’re using. Can be sandbox or production.

Path Parameters

smart_account_address
string
required

The address of the smart account to create payment intent for

Query Parameters

use-mpc-provider
boolean

Whether to use MPC provider for signing

Body

application/json
amount
string
required

Amount in the smallest currency unit (e.g., cents for USD)

destination
object
required

Destination account details for the payment

grid_user_id
string<uuid>
required

Grid user ID associated with the payment intent

source
object
required

Source account details for the payment

webhook_url
string | null

Optional webhook URL for payment status updates

Response

Successfully created payment intent

amount
string
required

Amount in the smallest currency unit

created_at
string<date-time>
required

UTC timestamp when the payment intent was created

currency
enum<string>
required

Currency for the transfer

Available options:
usd,
eur,
mxn,
usdc,
usdt,
usdb,
dai,
pyusd,
eurc
destination
object
required

Destination account details

id
string
required

Unique identifier for the payment intent

payment_rail
enum<string>
required

Payment rail used for the transfer

Available options:
ach,
ach_push,
ach_same_day,
sepa,
swift,
wire,
arbitrum,
avalanche_c_chain,
base,
bridge_wallet,
ethereum,
optimism,
polygon,
solana,
stellar,
tron
source
object
required

Source account details

status
enum<string>
required

Current status of the payment intent

Available options:
awaiting_funds,
in_review,
funds_received,
payment_submitted,
payment_processed,
canceled,
error,
undeliverable,
returned,
refunded
updated_at
string<date-time>
required

UTC timestamp when the payment intent was last updated

authorities
string[] | null

Optional list of authorities that can sign the transaction

completed_at
string<date-time> | null

UTC timestamp when the payment intent was completed

error_message
string | null

Optional error message if the payment intent failed

fee
null | object

Optional fee information

intent_payload
string | null

Optional transaction payload for on-chain transfers

memo
string | null

Optional memo for the transfer

mpc_payload
string | null

Optional MPC provider payload for signing

source_deposit_instructions
null | object

Optional deposit instructions for the source account

threshold
integer<int32> | null

Optional threshold of required signatures

valid_until
string<date-time> | null

Optional expiration timestamp for the payment intent