Payouts
Early Access
Payouts is an early access feature. We’re actively improving this API based on your feedback.
Early access features come with some caveats:
- May evolve rapidly, requiring integration updates
- Not subject to our 10 year version support policy
- Not subject to SLAs (unless specified in a contract)
Applies to: Payouts API
Cash App Payouts (CAP) allow merchants to send funds directly to customers’ Cash App accounts.
How it Works
Payouts are always immediately captured and processed asynchronously.
Two actions are required to process a payout:
- Customer request and grant
- Payout creation (authorization and capture)
In this Payout Flow Operations, M/PSP refers to a merchant or PSP acting on behalf of a merchant.
Fees
Payout fees (if applicable) are added to the amount deducted from the merchant’s settlement balance. The fee structure is configured per merchant and may include both fixed and variable components:
- Variable Fee: A percentage of the payout amount (basis points)
- Fixed Fee: A flat fee per payout
The total cost to the merchant is: payout_amount + fee_variable + fee_fixed
Customer Notifications
When a payout is successfully captured, the customer receives notifications through multiple channels:
- Push notification
- Activity feed entry in the Cash App
- Email (if configured)
These notifications include information about the payout amount, merchant name, and purpose.
Payout Funding
Merchants fund payouts by pushing funds directly to Block.
Funding Process
-
Account Details Provisioning: Block’s Technical Account Manager (TAM) will share the account details where merchants should send funds.
-
Pre-Integration Verification: Before enabling the integration, merchants must send a $0.01 test deposit to verify that the funding account details are correct and the transfer mechanism is properly configured.
-
Daily Funding: Merchants are expected to send payment the day after the Payout Summary Report is generated. This report details the total amount of payouts sent for that day.
-
Payment Rails Consistency: Merchants must use the same payment rails and source accounts that were configured and verified during the pre-integration verification. Payments from unconfigured accounts will not be accepted.
Funding Timeline
The funding timeline follows this sequence:
- Day 1: Payouts are processed and captured.
- Day 1 EOD: Payout Summary Report is generated showing the total amount due.
- Day 2: Merchant pushes funds to Block based on the report amount.
Payout Operations
Use the Payouts API to perform the following operations:
- GET: List payouts
Returns a list of payouts matching the given query parameters. Rate limited to 100 QPS. - POST: Create payout
Creates a payout to a customer. A payout allows a merchant to send money to a customer’s Cash App account. - GET: Retrieve payout
Retrieves a payout by its ID.
Payout States
Payouts support the following states:
Payouts are always auto-captured. The AUTHORIZED state is transient and occurs between authorization and capture.
Step 1: Customer Request and Grant
To get permission to send a payout to a customer, a M/PSP must obtain a grant after receiving a customer request. A grant represents a customer’s approval for a merchant to send funds to their Cash App account.
After a grant is obtained, a M/PSP can create payouts on behalf of the customer.
In your sandbox environment, use the GRG_sandbox:active magic value for grant_id in place of a customer request.
Action Type
Payouts require an ON_FILE_PAYOUT grant action type:
cURL Example
Grant Validation Failure Scenarios and Codes
Step 2: Payout Creation
Payouts are always immediately captured (auth and capture happen together). Unlike payments, payouts do not support a separate authorization and capture flow.
Payout Process
When a payout is created:
- The request is validated (amount, currency, merchant, and grant).
- The customer’s Cash App account is verified and the payout is authorized.
- The payout is automatically captured and funds are credited to the customer’s account.
- Settlement reconciliation records are created for merchant reporting.
- The customer receives a notification about the payout.
Request Validation
Before authorization, the following validations are performed:
- Amount Validation: Payout amount must be positive (greater than $0.00).
- Capture Mode: Only immediate capture is currently supported (
capture: true). - Idempotency: Each request must include a unique idempotency key. If a request is retried with the same key and identical parameters, the original payout result is returned.
- Grant Validation: The grant must be valid, not expired, not revoked, and have the correct action type (
ON_FILE_PAYOUT). - Merchant Validation: The merchant must exist, be active, and have completed onboarding.