Me to Me Payouts
Me to Me Payouts
Me to Me payouts allow you to move funds between a customer's own payment instruments — pulling from a card or bank account and pushing to a bank account, debit card or credit card.
The flow consists of two Transfer operations:
- A pull Transfer that pulls funds from the customer's source card (
PULL_FROM_CARD) or bank account (PULL_FROM_ACH, orPULL_FROM_SAME_DAY_ACH). - A payout transfer that pushes funds to the customer's destination card (
PUSH_TO_CARD) or bank account (PUSH_TO_ACH,PUSH_TO_SAME_DAY_ACH), linked to the completed pull transfer viapull_transfer_id.
Both transfers must use funds_flow_type: ME_TO_ME and be associated with the same Identity. The pull and payout transfer must be for the same amount.
If you have any questions about Me to Me payouts, reach out to your Finix Point of Contact or Finix Support.
Step 1: Create an Identity
The first step is creating an Identity with Sender & Recipient roles to represent the customer. The Identity resource helps manage payment instruments, payout history, and customer details. You can create either PERSONAL or BUSINESS Identities.
Required Data
| Required | Optional | Invalid |
|---|---|---|
| Field | type: PERSONAL |
type: BUSINESS |
|---|---|---|
Identity Roles identity_roles |
||
Type type |
||
First Name first_name |
||
Last Name last_name |
||
Personal Address personal_address |
||
Business Name business_name |
||
Doing Business As doing_business_as |
||
Business Address business_address |
||
Business Phone business_phone |
||
Personal Email email |
||
Personal Phone phone |
API Request
Personal
Business
Request Structure
post /identities
curl -i -X POST \
-u USfdccsr1Z5iVbXDyYt7hjZZ:313636f3-fac2-45a7-bff7-a334b93e7bda \
https://finix.sandbox-payments-api.com/identities \
-H 'Content-Type: application/json' \
-H 'Finix-Version: 2022-02-01' \
-d '{
"entity": {
"first_name": "Michael",
"last_name": "Johnson",
"personal_address": {
"city": "Springfield",
"country": "USA",
"line1": "789 Oak Drive",
"line2": null,
"postal_code": "62704",
"region": "IL"
}
},
"identity_roles": [\
"RECIPIENT",\
"SENDER"\
],
"type": "PERSONAL"
}'
Example Response (Sender & Recipient)
{
"id": "IDdRDX7H6hNcm4HexJBeZVUV",
"created_at": "2024-08-08T09:36:10.26Z",
"updated_at": "2024-08-08T09:36:10.26Z",
"entity": {
"ach_max_transaction_amount": 0,
"amex_mid": null,
"annual_card_volume": 0,
"business_address": null,
"business_name": null,
"business_phone": null,
"business_tax_id_provided": false,
"business_type": null,
"default_statement_descriptor": null,
"discover_mid": null,
"dob": null,
"doing_business_as": null,
"email": null,
"first_name": "Michael",
"has_accepted_credit_cards_previously": false,
"incorporation_date": null,
"last_name": "Johnson",
"max_transaction_amount": 0,
"mcc": null,
"ownership_type": null,
"personal_address": {
"line1": "789 Oak Drive",
"line2": null,
"city": "Springfield",
"region": "IL",
"postal_code": "62704",
"country": "USA"
},
"phone": null,
"principal_percentage_ownership": null,
"short_business_name": null,
"tax_authority": null,
"tax_id_provided": false,
"title": null,
"url": null
},
"identity_roles": [\
"RECIPIENT",\
"SENDER"\
],
"tags": {},
"type": "PERSONAL",
"_links": {
"self": {
"href": "https://finix.sandbox-payments-api.com/identities/IDdRDX7H6hNcm4HexJBeZVUV"
},
"verifications": {
"href": "https://finix.sandbox-payments-api.com/identities/IDdRDX7H6hNcm4HexJBeZVUV/verifications"
},
"merchants": {
"href": "https://finix.sandbox-payments-api.com/identities/IDdRDX7H6hNcm4HexJBeZVUV/merchants"
},
"settlements": {
"href": "https://finix.sandbox-payments-api.com/identities/IDdRDX7H6hNcm4HexJBeZVUV/settlements"
},
"authorizations": {
"href": "https://finix.sandbox-payments-api.com/identities/IDdRDX7H6hNcm4HexJBeZVUV/authorizations"
},
"transfers": {
"href": "https://finix.sandbox-payments-api.com/identities/IDdRDX7H6hNcm4HexJBeZVUV/transfers"
},
"payment_instruments": {
"href": "https://finix.sandbox-payments-api.com/identities/IDdRDX7H6hNcm4HexJBeZVUV/payment_instruments"
},
"associated_identities": {
"href": "https://finix.sandbox-payments-api.com/identities/IDdRDX7H6hNcm4HexJBeZVUV/associated_identities"
},
"disputes": {
"href": "https://finix.sandbox-payments-api.com/identities/IDdRDX7H6hNcm4HexJBeZVUV/disputes"
},
"application": {
"href": "https://finix.sandbox-payments-api.com/applications/APgPDQrLD52TYvqazjHJJchM"
}
}
}
Step 2: Add a Source Payment Instrument
Creating Payment Instruments and passing payment details (account number, card number, etc.) directly via the API should only be done for testing purposes and by PCI Level 1 compliant entities. If you aren't a Level 1 PCI-compliant entity, you must use our Tokenization Forms or Mobile Tokenization to accept payment details and comply with PCI regulations. If you have any questions, please don't hesitate to reach out to your Finix point of contact or email the Finix Support team.
Add a Payment Instrument for the source instrument that funds will be pulled from. This can be a card or a bank account.
API Request Structure
post /payment_instruments
curl -i -X POST \
-u USfdccsr1Z5iVbXDyYt7hjZZ:313636f3-fac2-45a7-bff7-a334b93e7bda \
https://finix.sandbox-payments-api.com/payment_instruments \
-H 'Content-Type: application/json' \
-H 'Finix-Version: 2022-02-01' \
-d '{
"address": {
"city": "San Francisco",
"country": "USA",
"line1": "900 Metro Center Blv",
"postal_code": "94404",
"region": "CA"
},
"expiration_month": 12,
"expiration_year": 2029,
"identity": "IDmj1yA97RS4rMjiQgvK3Vio",
"name": "John Jeremy",
"number": "5200828282828210",
"security_code": "022",
"type": "PAYMENT_CARD"
}'
Example Response
{
"id": "PI6F5kkcCB3dtGhFy1t8Aua5",
"created_at": "2024-11-15T09:42:33.42Z",
"updated_at": "2024-11-15T09:42:33.42Z",
"account_updater_enabled": false,
"application": "APgPDQrLD52TYvqazjHJJchM",
"created_via": "API",
"currency": "USD",
"disabled_code": null,
"disabled_message": null,
"enabled": true,
"fingerprint": "FPRiCenDk2SoRng7WjQTr7RJY",
"identity": "IDgWxBhfGYLLdkhxx2ddYf9K",
"instrument_type": "PAYMENT_CARD",
"address": {
"line1": "900 Metro Center Blv",
"line2": null,
"city": "San Francisco",
"region": "CA",
"postal_code": "94404",
"country": "USA"
},
"address_verification": "UNKNOWN",
"bin": "520082",
"brand": "MASTERCARD",
"card_type": "DEBIT",
"expiration_month": 12,
"expiration_year": 2029,
"issuer_country": "NON_USA",
"last_four": "8210",
"name": "John Jeremy",
"network_token_enabled": false,
"network_token_state": "NOT_ENABLED",
"security_code_verification": "UNKNOWN",
"tags": {},
"third_party": null,
"third_party_token": null,
"type": "PAYMENT_CARD",
"_links": {
"self": {
"href": "https://finix.sandbox-payments-api.com/payment_instruments/PI6F5kkcCB3dtGhFy1t8Aua5"
},
"authorizations": {
"href": "https://finix.sandbox-payments-api.com/payment_instruments/PI6F5kkcCB3dtGhFy1t8Aua5/authorizations"
},
"transfers": {
"href": "https://finix.sandbox-payments-api.com/payment_instruments/PI6F5kkcCB3dtGhFy1t8Aua5/transfers"
},
"verifications": {
"href": "https://finix.sandbox-payments-api.com/payment_instruments/PI6F5kkcCB3dtGhFy1t8Aua5/verifications"
},
"application": {
"href": "https://finix.sandbox-payments-api.com/applications/APgPDQrLD52TYvqazjHJJchM"
},
"identity": {
"href": "https://finix.sandbox-payments-api.com/identities/IDgWxBhfGYLLdkhxx2ddYf9K"
},
"updates": {
"href": "https://finix.sandbox-payments-api.com/payment_instruments/PI6F5kkcCB3dtGhFy1t8Aua5/updates"
}
}
}
Step 3: (Optional) Verify the Source Payment Instrument
If the source is a card, verify its eligibility for pull-from-card before proceeding. The resulting Verification resource provides card details including card type and issuer information.
API Request Structure
post /payment_instruments/{payment_instrument_id_verify}/verifications
curl -i -X POST \
-u USfdccsr1Z5iVbXDyYt7hjZZ:313636f3-fac2-45a7-bff7-a334b93e7bda \
https://finix.sandbox-payments-api.com/payment_instruments/PIn8as75qLQFqQ7G4NdBUk58/verifications \
-H 'Content-Type: application/json' \
-d '{
"processor": "DUMMY_V1"
}'
Example Response
{
"id": "VI9cSUm3SDaLKtuL92Z34rK9",
"created_at": "2025-11-07T20:36:16.90Z",
"updated_at": "2025-11-07T20:36:16.92Z",
"application": "APc9vhYcPsRuTSpKD9KpMtPe",
"identity": null,
"merchant": null,
"merchant_identity": null,
"messages": [],
"outcome_summary": null,
"outcomes": null,
"payment_instrument": "PIn8as75qLQFqQ7G4NdBUk58",
"payment_instrument_verification_details": {
"push_to_card_domestic": null,
"push_to_card_cross_border": null,
"card_type": null,
"billing_currency": null,
"issuer_country": "UNKNOWN",
"name_verification_results": {
"first_name_verification": "UNKNOWN",
"last_name_verification": "UNKNOWN",
"middle_name_verification": "UNKNOWN",
"name_verification": "UNKNOWN"
}
},
"processor": "DUMMY_V1",
"raw": null,
"state": "PENDING",
"tags": {
"card_name": "Business_Card"
},
"trace_id": "63eefc66-81a3-4f24-a09d-bb7650e23943",
"type": "PAYMENT_INSTRUMENT",
"_links": {
"self": {
"href": "https://finix.sandbox-payments-api.com/verifications/VI9cSUm3SDaLKtuL92Z34rK9"
},
"application": {
"href": "https://finix.sandbox-payments-api.com/applications/APc9vhYcPsRuTSpKD9KpMtPe"
},
"payment_instrument": {
"href": "https://finix.sandbox-payments-api.com/payment_instruments/PIn8as75qLQFqQ7G4NdBUk58"
}
}
}
Step 4: Add a Destination Payment Instrument
Add a Payment Instrument for the destination instrument that will receive the funds. Me to Me payouts are only available for bank accounts or Visa and Mastercard cards.
API Request Structure
post /payment_instruments
Example Response
Step 5: (Optional) Verify the Destination Payment Instrument
If pushing to a card you can verify the destination card's eligibility for push-to-card before sending funds.
API Request Structure
post /payment_instruments/{payment_instrument_id_verify}/verifications
Example Response
Step 6: Verify and Onboard the Account
Provision a recipient account by making a POST request to create a Merchant resource. This is the last step before you can begin sending Me to Me payouts. Once the merchant is Approved you can create a transfer to pull funds. For more information, see Recipient Verifications
API Request Structure
post /identities/{identity_id}/merchants
curl -i -X POST \
-u USfdccsr1Z5iVbXDyYt7hjZZ:313636f3-fac2-45a7-bff7-a334b93e7bda \
https://finix.sandbox-payments-api.com/identities/IDhC29dXMAkbmr1aBpS91Hpx/merchants \
-H 'Content-Type: application/json' \
-H 'Finix-Version: 2022-02-01' \
-d '{
"processor": "DUMMY_V1",
"tags": {
"key_2": "value_2"
}
}'
Example Response
{
"id": "MUeTBamsYxqr1KSnT4U2x9SP",
"created_at": "2024-08-16T13:11:36.72Z",
"updated_at": "2024-08-16T13:11:36.72Z",
"application": "APgPDQrLD52TYvqazjHJJchM",
"card_cvv_required": false,
"card_expiration_date_required": true,
"card_network_details": null,
"convenience_charges_enabled": false,
"country": "USA",
"creating_transfer_from_report_enabled": true,
"currencies": [\
"USD"\
],
"default_partial_authorization_enabled": false,
"disbursements_ach_pull_enabled": false,
"disbursements_ach_push_enabled": false,
"disbursements_card_pull_enabled": false,
"disbursements_card_push_enabled": false,
"disbursements_same_day_ach_pull_enabled": false,
"disbursements_same_day_ach_push_enabled": false,
"fee_ready_to_settle_upon": "RECONCILIATION",
"gateway": null,
"gross_settlement_enabled": false,
"identity": "ID6ZC4KedcaCwECQcWr7SM4m",
"instant_payouts_card_push_enabled": false,
"level_two_level_three_data_enabled": false,
"loan_repayment": null,
"mcc": "4900",
"merchant_name": "Blue Horizon Technologies",
"merchant_profile": "MP8aC84QAtA69Qhv6BJSyvHr",
"mid": null,
"onboarding_state": "PROVISIONING",
"processing_enabled": false,
"processor": "DUMMY_V1",
"processor_details": {},
"ready_to_settle_upon": "RECONCILIATION",
"ready_to_settle_upon_delay_alignment": "NONE",
"rent_surcharges_enabled": false,
"settlement_enabled": false,
"settlement_funding_identifier": "UNSET",
"surcharges_enabled": false,
"tags": {
"key_2": "value_2"
},
"unreferenced_refund_manual_entry_enabled": false,
"verification": "VI7jopNSiaVMXWKkhxt6dJm7",
"_links": {
"self": {
"href": "https://finix.sandbox-payments-api.com/merchants/MUeTBamsYxqr1KSnT4U2x9SP"
},
"identity": {
"href": "https://finix.sandbox-payments-api.com/identities/ID6ZC4KedcaCwECQcWr7SM4m"
},
"verifications": {
"href": "https://finix.sandbox-payments-api.com/merchants/MUeTBamsYxqr1KSnT4U2x9SP/verifications"
},
"merchant_profile": {
"href": "https://finix.sandbox-payments-api.com/merchant_profiles/MP8aC84QAtA69Qhv6BJSyvHr"
},
"application": {
"href": "https://finix.sandbox-payments-api.com/applications/APgPDQrLD52TYvqazjHJJchM"
},
"verification": {
"href": "https://finix.sandbox-payments-api.com/verifications/VI7jopNSiaVMXWKkhxt6dJm7"
}
}
}
Step 7: Create a Transfer to Pull Funds
Create a Transfer to pull funds from the customer's source payment instrument. Set funds_flow_type to ME_TO_ME and include the Payment Instrument ID as source.
The pull transfer must reach a state of SUCCEEDED before you can create the payout transfer. It is recommended to include an idempotency_id field in the payload. For more information, see Idempotent Requests.
API Request Structure
post /transfers
curl -i -X POST \
-u USfdccsr1Z5iVbXDyYt7hjZZ:313636f3-fac2-45a7-bff7-a334b93e7bda \
https://finix.sandbox-payments-api.com/transfers \
-H 'Content-Type: application/json' \
-H 'Finix-Version: 2022-02-01' \
-d '{
"amount": 15000,
"currency": "USD",
"funds_flow_type": "ME_TO_ME",
"operation_key": "PULL_FROM_CARD",
"source": "PIveyqg2bVkKo6SHsstxBSDc"
}'
Example Response
{
"id": "TR3vKfwCuXmLqPsDYbGYn4NUm",
"created_at": "2025-08-14T21:45:12.98Z",
"updated_at": "2025-08-14T21:45:12.98Z",
"additional_buyer_charges": null,
"additional_healthcare_data": null,
"additional_purchase_data": null,
"address_verification": null,
"amount": 15000,
"amount_requested": 15000,
"application": "APc9vhYcPsRuTSpKD9KpMtPe",
"currency": "USD",
"destination": null,
"externally_funded": "UNKNOWN",
"failure_code": null,
"failure_message": null,
"fee": 0,
"fee_profile": "FPmtT4MYmiAs1qjLjneQmk4d",
"funds_flow_type": "ME_TO_ME",
"idempotency_id": null,
"merchant": "MUuNdhs7uVYcjocWugeBbpRo",
"merchant_identity": "IDbPrApp2adDVqG4QQzoo58E",
"messages": [],
"network_details": {},
"operation_key": "PULL_FROM_CARD",
"parent_transfer": null,
"parent_transfer_trace_id": null,
"raw": null,
"ready_to_settle_at": null,
"receipt_last_printed_at": null,
"security_code_verification": null,
"source": "PIveyqg2bVkKo6SHsstxBSDc",
"split_transfers": [],
"state": "SUCCEEDED",
"statement_descriptor": null,
"subtype": "API",
"supplemental_fee": null,
"tags": {},
"tip_amount": null,
"trace_id": "84749ef6-2018-5105-b4gg-g684e8g4f458",
"type": "DEBIT",
"_links": {
"application": {
"href": "https://finix.sandbox-payments-api.com/applications/APc9vhYcPsRuTSpKD9KpMtPe"
},
"self": {
"href": "https://finix.sandbox-payments-api.com/transfers/TR3vKfwCuXmLqPsDYbGYn4NUm"
},
"merchant_identity": {
"href": "https://finix.sandbox-payments-api.com/identities/IDbPrApp2adDVqG4QQzoo58E"
},
"payment_instruments": {
"href": "https://finix.sandbox-payments-api.com/transfers/TR3vKfwCuXmLqPsDYbGYn4NUm/payment_instruments"
},
"reversals": {
"href": "https://finix.sandbox-payments-api.com/transfers/TR3vKfwCuXmLqPsDYbGYn4NUm/reversals"
},
"fees": {
"href": "https://finix.sandbox-payments-api.com/transfers/TR3vKfwCuXmLqPsDYbGYn4NUm/fees"
},
"disputes": {
"href": "https://finix.sandbox-payments-api.com/transfers/TR3vKfwCuXmLqPsDYbGYn4NUm/disputes"
},
"source": {
"href": "https://finix.sandbox-payments-api.com/payment_instruments/PIveyqg2bVkKo6SHsstxBSDc"
},
"fee_profile": {
"href": "https://finix.sandbox-payments-api.com/fee_profiles/FPmtT4MYmiAs1qjLjneQmk4d"
}
}
}
Step 8: Create a Payout Transfer
Once the pull transfer has SUCCEEDED, create the payout Transfer to push funds to the customer's destination instrument.
API Request Structure
post /transfers
curl -i -X POST \
-u USfdccsr1Z5iVbXDyYt7hjZZ:313636f3-fac2-45a7-bff7-a334b93e7bda \
https://finix.sandbox-payments-api.com/transfers \
-H 'Content-Type: application/json' \
-H 'Finix-Version: 2022-02-01' \
-d '{
"amount": 15000,
"currency": "USD",
"destination": "PIveyqg2bVkKo6SHsstxBSDc",
"funds_flow_type": "ME_TO_ME",
"operation_key": "PUSH_TO_CARD",
"pull_transfer_id": "TR3vKfwCuXmLqPsDYbGYn4NUm"
}'
Example Response
{
"id": "TRhJdBnKpQsRmXvWyLzGcFUm",
"created_at": "2025-08-14T21:45:12.98Z",
"updated_at": "2025-08-14T21:45:12.98Z",
"additional_buyer_charges": null,
"additional_healthcare_data": null,
"additional_purchase_data": null,
"address_verification": null,
"amount": 15000,
"amount_requested": 15000,
"application": "APc9vhYcPsRuTSpKD9KpMtPe",
"currency": "USD",
"destination": "PIveyqg2bVkKo6SHsstxBSDc",
"externally_funded": "UNKNOWN",
"failure_code": null,
"failure_message": null,
"fee": 0,
"fee_profile": "FPmtT4MYmiAs1qjLjneQmk4d",
"funds_flow_type": "ME_TO_ME",
"idempotency_id": null,
"merchant": "MUuNdhs7uVYcjocWugeBbpRo",
"merchant_identity": "IDbPrApp2adDVqG4QQzoo58E",
"messages": [],
"network_details": {},
"operation_key": "PUSH_TO_CARD",
"parent_transfer": null,
"parent_transfer_trace_id": null,
"pull_transfer_id": "TR3vKfwCuXmLqPsDYbGYn4NUm",
"raw": null,
"ready_to_settle_at": null,
"receipt_last_printed_at": null,
"security_code_verification": null,
"source": null,
"split_transfers": [],
"state": "SUCCEEDED",
"statement_descriptor": null,
"subtype": "API",
"supplemental_fee": null,
"tags": {},
"tip_amount": null,
"trace_id": "91850fg7-3129-6216-c5hh-h795f9h5g569",
"type": "CREDIT",
"_links": {
"application": {
"href": "https://finix.sandbox-payments-api.com/applications/APc9vhYcPsRuTSpKD9KpMtPe"
},
"self": {
"href": "https://finix.sandbox-payments-api.com/transfers/TRhJdBnKpQsRmXvWyLzGcFUm"
},
"merchant_identity": {
"href": "https://finix.sandbox-payments-api.com/identities/IDbPrApp2adDVqG4QQzoo58E"
},
"payment_instruments": {
"href": "https://finix.sandbox-payments-api.com/transfers/TRhJdBnKpQsRmXvWyLzGcFUm/payment_instruments"
},
"reversals": {
"href": "https://finix.sandbox-payments-api.com/transfers/TRhJdBnKpQsRmXvWyLzGcFUm/reversals"
},
"fees": {
"href": "https://finix.sandbox-payments-api.com/fees?linked_to=TRhJdBnKpQsRmXvWyLzGcFUm"
},
"disputes": {
"href": "https://finix.sandbox-payments-api.com/transfers/TRhJdBnKpQsRmXvWyLzGcFUm/disputes"
},
"destination": {
"href": "https://finix.sandbox-payments-api.com/payment_instruments/PIveyqg2bVkKo6SHsstxBSDc"
},
"fee_profile": {
"href": "https://finix.sandbox-payments-api.com/fee_profiles/FPmtT4MYmiAs1qjLjneQmk4d"
}
}
}