ACH Direct Debits
Learn how to accept payments from US-based bank accounts.
Sellers can accept payments from buyers' US-based bank accounts. Often, these payments are referred to as "ACH payments" or "ACH Direct Debits".
ACH Direct Debits are an alternative to credit and debit card payments. ACH Direct Debits are processed through the Automated Clearing House (ACH) payments system, operated by the National Automated Clearinghouse Association (Nacha).
Overview
ACH returns can lead to losses. We recommend taking ACH payments from buyers whom you have a known or prior established relationship with.
Unlike card payments, ACH Direct Debits are not real-time. It can take between 4 and 10 business days to fully authorize the transaction with the buyer's bank and learn whether it failed or succeeded. Buyers can dispute the transaction up to 60 days after the initial payment date.
Often, businesses mitigate risk or losses from ACH Return risk by:
- Ensuring they are dealing with buyers whom they have a prior established relationship.
- Implementing a hold time before shipping or providing a good or service.
Finix requires the following details from buyers to process ACH Direct Debits:
Detail | Description |
---|---|
Bank Code | The routing number of the buyer's bank account |
Account Number | The account number of the buyer's bank account |
Buyer Name | The buyer's name |
You can collect this bank account information using Tokenization Forms or SDKs, as well as our Plaid integration.
ACH Direct Debit Flow
ACH Direct Debits start as PENDING
, and move to either SUCCEEDED
or FAILED
as the payment processes.
Transfer State | Description |
---|---|
PENDING | Finix is processing the ACH Direct Debit. |
SUCCEEDED | Finix has accepted the ACH Direct Debit. The buyer's bank may or may not have accepted the payment yet. |
FAILED | Finix did not accept the ACH Direct Debit. |
SUCCEEDED
means Finix that Finix submitted the ACH direct debit details to the ACH networks. It can take 4-10 business days for the buyer's bank to process and confirm the debit was successful.
ACH Direct Debit Timing
ACH Direct Debits take longer than credit card payments to move and settle funds. To account for this, Finix creates an "ACH Settlement Delay" to accommodate any ACH Returns that may occur.
By default, the ACH Settlement Delay holds ACH Direct Debits for 5 days before Finix batches them into payout Settlements.
Sellers may want ACH Direct Debits to appear in settlements faster or slower, depending on their business needs. For example, the ACH Settlement Delay can be:
- Decreased, so ACH Direct Debits appear in
Settlements
faster. This can result in ACH Returns appearing after paying out an ACH Direct Debit. - Increased, so sellers have more certainty before paying out ACH Direct Debits. This helps make sure payouts to sellers always include ACH Returns.
To customize this delay, reach out to your Finix point of contact or email the Finix Support team.
Bank Account Validation
In compliance with Nacha's bank account validation rule, Finix validates bank accounts before processing ACH payments. Finix validates the bank account the first time it's used, as well as after any changes are made.
The Transfer's bank_account_validation_check
field explains the results of this check.
Bank Account Validation Check | Description |
---|---|
NOT_ATTEMPTED | Default value for new bank accounts that haven't been validated yet. |
VALID | Bank account was found and confirmed to accept ACH Direct Debits. |
INVALID | Bank account couldn't be found or validated. A Transfer created with a bank account marked INVALID will fail. Please contact the account holder to confirm details or request a different payment method. |
INCONCLUSIVE | Bank account couldn't be found and validation was INCONCLUSIVE . Bank accounts marked as inconclusive can still be used to create an ACH Transfer . |
Payment Authorization Language
Before processing any ACH Direct Debit payments, the buyer must agree to the following statement:
By clicking submit, you authorize us to initiate an automated clearing house (ACH) one-time debit in your name to your bank account indicated above. The amount of this transaction as noted above will be presented to your financial institution by the next business day. You further agree that once you click submit you may not revoke this authorization or cancel this payment.
We recommend presenting this language in your checkout flow right before the buyer clicks the Submit button and triggers the creation of the payment.
Payment Confirmation Language
After the payment is submitted, present a confirmation screen and/or email a confirmation to the buyer with the following language:
Thank you for your payment in the amount of $xx.xx. Please print this authorization for your records.
You have authorized us to initiate an automated clearing house (ACH) one-time debit in your name to your bank account. This transaction will be presented to your financial institution by the next business day. You further agree that you may not revoke this authorization or cancel this payment.
Creating ACH Direct Debits
To create an ACH Direct Debit, simply create an Identity, Payment Instrument, and Transfer.
Step 1: Create a Buyer
First, create an Identity to represent your buyer. The Identity resource represents both buyers and sellers. If you're a platform managing multiple sellers, see our Platform Payments guide to learn how to onboard sellers.
Your buyer's Identity stores their personal data (such as name and email), and helps manage their payments, payment methods, identity verification, and more.
All buyer Identity fields are optional. However, Finix recommends including basic information (name, email, address, and phone) to make payment operations easier.
curl https://finix.sandbox-payments-api.com/identities \
-H 'Content-Type: application/json' \
-H 'Finix-Version: 2022-02-01' \
-u USsRhsHYZGBPnQw8CByJyEQW:8a14c2f9-d94b-4c72-8f5c-a62908e5b30e \
-X POST \
-d '{
"entity": {
"email": "user@example.org",
"first_name": "John",
"last_name": "Smith",
"personal_address": {
"city": "San Mateo",
"country": "USA",
"line1": "741 Douglass St",
"line2": "Apartment 7",
"postal_code": "94114",
"region": "CA"
},
"phone": "7145677613"
}
}'
{
"id": "IDnytkgHCbgJkvtbpqrZtbnk",
"created_at": "2025-01-05T15:29:14.19Z",
"updated_at": "2025-01-05T15:29:14.19Z",
"application": "APgPDQrLD52TYvqazjHJJchM",
"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": "user@example.org",
"first_name": "John",
"has_accepted_credit_cards_previously": false,
"incorporation_date": null,
"last_name": "Smith",
"max_transaction_amount": 0,
"mcc": null,
"ownership_type": null,
"personal_address": {
"line1": "741 Douglass St",
"line2": "Apartment 7",
"city": "San Mateo",
"region": "CA",
"postal_code": "94114",
"country": "USA"
},
"phone": "7145677613",
"principal_percentage_ownership": null,
"short_business_name": null,
"tax_authority": null,
"tax_id_provided": false,
"title": null,
"url": null
},
"identity_roles": [],
"tags": {},
"type": "PERSONAL",
"_links": {
"self": {
"href": "https://finix.sandbox-payments-api.com/identities/IDnytkgHCbgJkvtbpqrZtbnk"
},
"verifications": {
"href": "https://finix.sandbox-payments-api.com/identities/IDnytkgHCbgJkvtbpqrZtbnk/verifications"
},
"merchants": {
"href": "https://finix.sandbox-payments-api.com/identities/IDnytkgHCbgJkvtbpqrZtbnk/merchants"
},
"settlements": {
"href": "https://finix.sandbox-payments-api.com/identities/IDnytkgHCbgJkvtbpqrZtbnk/settlements"
},
"authorizations": {
"href": "https://finix.sandbox-payments-api.com/identities/IDnytkgHCbgJkvtbpqrZtbnk/authorizations"
},
"transfers": {
"href": "https://finix.sandbox-payments-api.com/identities/IDnytkgHCbgJkvtbpqrZtbnk/transfers"
},
"payment_instruments": {
"href": "https://finix.sandbox-payments-api.com/identities/IDnytkgHCbgJkvtbpqrZtbnk/payment_instruments"
},
"associated_identities": {
"href": "https://finix.sandbox-payments-api.com/identities/IDnytkgHCbgJkvtbpqrZtbnk/associated_identities"
},
"disputes": {
"href": "https://finix.sandbox-payments-api.com/identities/IDnytkgHCbgJkvtbpqrZtbnk/disputes"
},
"application": {
"href": "https://finix.sandbox-payments-api.com/applications/APgPDQrLD52TYvqazjHJJchM"
}
}
}
Step 2: Create a Payment Instrument
Next, create a Payment Instrument to save your buyer's bank account details. You can collect this data using our Tokenization Forms or SDKs, as well as our Plaid integration.
curl https://finix.sandbox-payments-api.com/payment_instruments \
-H 'Content-Type: application/json' \
-H 'Finix-Version: 2022-02-01' \
-u USsRhsHYZGBPnQw8CByJyEQW:8a14c2f9-d94b-4c72-8f5c-a62908e5b30e \
-X POST \
-d '{
"token": "TKiMxe323RE5Dq3wLVtG8kSW",
"type": "TOKEN",
"identity": "IDpYDM7J9n57q849o9E9yNrG"
}'
{
"id": "PIwWisLuZNwPBoLbCgQVTCoY",
"application": "APgPDQrLD52TYvqazjHJJchM",
"fingerprint": "FPRmYp7ejhA3yDjSor4A5Ji2D",
"tags": {
"card_name": "Business Card"
},
"expiration_month": 12,
"expiration_year": 2029,
"bin": "400000",
"last_four": "9979",
"brand": "VISA",
"card_type": "UNKNOWN",
"name": "Amy White",
"address": {
"line1": "900 Metro Center Blv",
"line2": null,
"city": "San Francisco",
"region": "CA",
"postal_code": "94404",
"country": "USA"
},
"address_verification": "NO_MATCH",
"security_code_verification": "UNMATCHED",
"created_at": "2022-08-15T23:13:06.13Z",
"updated_at": "2022-08-15T23:13:06.88Z",
"instrument_type": "PAYMENT_CARD",
"type": "PAYMENT_CARD",
"currency": "USD",
"identity": "IDgWxBhfGYLLdkhxx2ddYf9K",
"_links": {
"self": {
"href": "https://finix.sandbox-payments-api.com/payment_instruments/PIwWisLuZNwPBoLbCgQVTCoY"
},
"authorizations": {
"href": "https://finix.sandbox-payments-api.com/payment_instruments/PIwWisLuZNwPBoLbCgQVTCoY/authorizations"
},
"transfers": {
"href": "https://finix.sandbox-payments-api.com/payment_instruments/PIwWisLuZNwPBoLbCgQVTCoY/transfers"
},
"verifications": {
"href": "https://finix.sandbox-payments-api.com/payment_instruments/PIwWisLuZNwPBoLbCgQVTCoY/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/PIwWisLuZNwPBoLbCgQVTCoY/updates"
}
}
}
Step 3: Create a Trasnfer
Finally, create a Transfer using the buyer's Payment Instruent as the source
. This will debit funds directly from the buyer's bank account. ACH Direct Debits have type: DEBIT
, and start with state: PENDING
. The ready_to_settle_at
field indicates when the Transfer
will get batched into the next settlement. This field is updated asynchronously.
curl https://finix.sandbox-payments-api.com/transfers \
-H "Content-Type: application/json" \
-H 'Finix-Version: 2022-02-01' \
-USsRhsHYZGBPnQw8CByJyEQW:8a14c2f9-d94b-4c72-8f5c-a62908e5b30e \
-d '{
"amount": 6031,
"currency": "USD",
"fee": 603,
"merchant": "MUeDVrf2ahuKc9Eg5TeZugvs",
"source": "PIr1Ru7ewBkEYVVn7SP1u5FW",
"tags": {
"order_number": "21DFASJSAKAS"
}
}'
{
"id": "TR6Gnj38UyPW3CoukdL9WaR1",
"created_at": "2022-10-10T05:34:16.13Z",
"updated_at": "2022-10-10T05:34:16.68Z",
"additional_buyer_charges": null,
"additional_healthcare_data": null,
"address_verification": null,
"amount": 662154,
"amount_requested": 662154,
"application": "APgPDQrLD52TYvqazjHJJchM",
"currency": "USD",
"destination": null,
"externally_funded": "UNKNOWN",
"failure_code": null,
"failure_message": null,
"fee": 0,
"idempotency_id": null,
"merchant": "MUeDVrf2ahuKc9Eg5TeZugvs",
"merchant_identity": "IDuqZpDw28f2KK6YuDk4jNLg",
"messages": [],
"raw": null,
"ready_to_settle_at": null,
"security_code_verification": null,
"source": "PImmCg3Po7oNi7jaZcXhfkEu",
"state": "PENDING",
"statement_descriptor": "FNX*FINIX FLOWERS",
"subtype": "API",
"tags": {},
"trace_id": "236e1149-9b83-4b79-bfaf-7ff810dcf601",
"type": "DEBIT",
"_links": {
"application": {
"href": "https://finix.sandbox-payments-api.com/applications/APgPDQrLD52TYvqazjHJJchM"
},
"self": {
"href": "https://finix.sandbox-payments-api.com/transfers/TR6Gnj38UyPW3CoukdL9WaR1"
},
"merchant_identity": {
"href": "https://finix.sandbox-payments-api.com/identities/IDuqZpDw28f2KK6YuDk4jNLg"
},
"payment_instruments": {
"href": "https://finix.sandbox-payments-api.com/transfers/TR6Gnj38UyPW3CoukdL9WaR1/payment_instruments"
},
"reversals": {
"href": "https://finix.sandbox-payments-api.com/transfers/TR6Gnj38UyPW3CoukdL9WaR1/reversals"
},
"fees": {
"href": "https://finix.sandbox-payments-api.com/transfers/TR6Gnj38UyPW3CoukdL9WaR1/fees"
},
"disputes": {
"href": "https://finix.sandbox-payments-api.com/transfers/TR6Gnj38UyPW3CoukdL9WaR1/disputes"
},
"source": {
"href": "https://finix.sandbox-payments-api.com/payment_instruments/PImmCg3Po7oNi7jaZcXhfkEu"
},
"fee_profile": {
"href": "https://finix.sandbox-payments-api.com/fee_profiles/FPvCQUcnsueN3Bc3zR1qCBG8"
}
}
}
ACH Returns
ACH Direct Debits can fail for multiple reasons, including:
- Invalid bank account or routing number.
- Buyer's bank account blocks ACH Direct Debits.
- Insufficient funds from a buyer's bank account.
- Buyer disputes an ACH Direct Debit.
Most disputes arise within 3-5 business days of the transaction. However, buyers can dispute ACH Direct Debits for any reason up to 60 days after the payment got processed. ACH Direct Debits older than 60 days are guaranteed not to be disputed or get returned.
When a ACH Direct Debit fails, Finix automatically creates an ACH Return to recover the original payment amount. ACH Returns are represented by Transfers with type: REVERSAL
and subtype: SYSTEM
. You can view ACH Returns in the Finix Dashboard.
{
"id": "TR4YKKnhbCk54EXCc7pGxgNx",
"amount": "8000",
"tags": {
"result_message_0": "ReasonCode: R04",
"result_message_1": "ReasonDescription: Invalid Account Number"
},
"state": "SUCCEEDED",
"trace_id": "8e608a61-eeac-477e-93bf-a3032bfc1352",
"currency": "USD",
"application": "APg5RS31BShqrRvwheH63A6F",
"source": null,
"destination": "PIp6s3WFMBbiugrUo5QveQ8u",
"ready_to_settle_at": "2025-01-03T20:01:02.34Z",
"externally_funded": "FALSE",
"fee": "0",
"statement_descriptor": null,
"type": "REVERSAL",
"fee_type": null,
"messages": [],
"raw": null,
"created_at": "2025-01-02T20:10:01.56Z",
"updated_at": "2025-01-02T20:10:01.56Z",
"idempotency_id": null,
"merchant_identity": "ID76b9UfSem4ekbCDpRCZjwu",
"operation_key": null,
"failure_code": null,
"failure_message": null,
"additional_buyer_charges": null,
"additional_purchase_data": null,
"additional_healthcare_data": null,
"address_verification": null,
"security_code_verification": null,
"links": {
"application": {
"href": "https://finix.sandbox-payments-api.com/applications/APg5RS31BShqrRvwheH63A6N"
},
"self": {
"href": "https://finix.sandbox-payments-api.com/transfers/TR4YKKnhbCk54EXCc7pGxgNy"
},
"merchant_identity": {
"href": "https://finix.sandbox-payments-api.com/identities/ID76b9UfSem4ekbCDpRBZjwu"
},
"payment_instruments": {
"href": "https://finix.sandbox-payments-api.com/transfers/TR4YKKnhbCk54EXCc7pGxgNy/payment_instruments"
},
"parent": {
"href": "https://finix.sandbox-payments-api.com/transfers/TR6uHGCfpwNYwm2XXt5x32Y4"
},
"destination": {
"href": "https://finix.sandbox-payments-api.com/payment_instruments/PIp6s3WFMBbiugrUo5QveQ8u"
},
"fee_profile": {
"href": "https://finix.sandbox-payments-api.com/fee_profiles/FPmtT4MYmiAs1qjLjneQmk4d"
}
},
"device": null,
"card_present_details": null,
"amount_requested": 8000,
"merchant": "MUwcLg8R5SsHeY7bg7rsjV2R",
"receipt_last_printed_at": null,
"split_transfers": [],
"parent_transfer": "TR6uHGCfpwNYwm2XXt5x32Y4",
"parent_transfer_trace_id": "8e608a61-eeac-477e-93bf-a3032bfc1352",
"tip_amount": null,
"related": {
// Omitted for brevity
},
"subtype": "SYSTEM"
}
ACH Return Reason Codes
The ACH Return Reason Code explains why the ACH Direct Debit failed and was ultimately returned.
Code | Description |
---|---|
R01 | Insufficient funds in account |
R02 | Account is closed |
R03 | No account on file |
R04 | Invalid account number |
R05 | Unauthorized debit to consumer account |
R06 | Returned at request of ODFI |
R07 | Authorization revoked by customer |
R08 | Payment stopped |
R09 | Insufficient collected funds in account being charged |
R10 | Customer advises not Authorized, notice not provided, improper source document, or amount of entry not accurately obtained from source document |
R11 | Check truncation return |
R12 | Account sold to another financial institution |
R13 | Invalid ACH routing number |
R14 | Representative payee is deceased or cannot continue in that capacity |
R15 | Beneficiary or account holder other than representative payee deceased |
R16 | Account funds have been frozen |
R17 | Item returned because of invalid data; refer to addenda fro information |
R18 | Improper effective date |
R19 | Amount error |
R20 | Account does not allow ACH transactions or limit for transactions has been exceeded |
R21 | Invalid company identification |
R22 | Invalid individual ID |
R23 | Credit entry refused by receiver |
R24 | Duplicate entry |
R25 | Addenda record error |
R26 | Mandatory field error |
R27 | Trace number error |
R28 | Routing/transit number check digit error |
R29 | Corporate customer advised not authorized |
R30 | RDFI not participant in check truncation program |
R31 | Permissible return entry |
R32 | RDFI non-settlement |
R33 | Return of item |
R34 | Limited participation ODFI |
R35 | Return of improper debit entry |
R36 | Return of improper credit entry |
R37 | Source document presented for payment |
R38 | Stop payment on source document |
R39 | Improper source document |
R40 | Return of item by government agency |
R41 | Invalid Transaction Code |
R42 | Routing/transit number check digit error |
R43 | Invalid account number |
R44 | Invalid individual ID |
R45 | Invalid individual name or company name |
R46 | Invalid representative payee indicator |
R47 | Duplicate enrollment |
R50 | State law affecting RCK acceptance |
R51 | Item is ineligible, notice not provided, signature not genuine, or original item altered for adjustment entry |
R52 | Stop payment on item |
R53 | Item and ACH entry presented for payment |
R61 | Misrouted return - RDFI for original entry has placed incorrect routing/transit number in RDFI identification field |
R67 | Duplicate return |
R68 | Untimely return - return was not sent within the established time frame |
R69 | Field errors |
R70 | Permissible return entry not accepted |
R71 | Misrouted dishonored return -incorrect routing/transit number in RDFI identification field |
R72 | Untimely return - dishonored return was not sent within the established time frame |
R73 | Timely original return - RDFI certifies the original return entry was sent within established time frame for original returns |
R74 | Corrected return - RDFI is correcting a previous return entry that was dishonored because it contained incomplete or incorrect information |
R75 | Original return not a duplicate |
R76 | No errors found |
R80 | Cross-border payment coding error |
R81 | Non-participant in cross-border program |
R82 | Invalid foreign RDFI identification |
R83 | Foreign RDFI unable to settle |
R84 | Cross-border entry not processed by originating gateway operator |
ACH Refunds
You can refund ACH Direct Debits, similar to how you can refund card payments. To initiate an ACH Refund, create a Reveral Transfer with the /reversals
endpoint. You'll pass in the id
of the original Transfer you'd like to reverse. This creates a Transfer with type: REVERSAL
, with the original transfer linked in _links.parent
.
curl https://finix.sandbox-payments-api.com/transfers/TR6Gnj38UyPW3CoukdL9WaR1/reversals \
-H "Content-Type: application/json" \
-u USsRhsHYZGBPnQw8CByJyEQW:8a14c2f9-d94b-4c72-8f5c-a62908e5b30e \
-d '{
"refund_amount": 6031,
"tags": {
"test": "refund"
}
}'
{
"id": "TRnqh2Mt6pnnPumxvenDmVjX",
"created_at": "2022-10-10T05:36:19.18Z",
"updated_at": "2022-10-10T05:36:19.27Z",
"additional_buyer_charges": null,
"additional_healthcare_data": null,
"address_verification": null,
"amount": 6031,
"amount_requested": 6031,
"application": "APgPDQrLD52TYvqazjHJJchM",
"currency": "USD",
"destination": "PImmCg3Po7oNi7jaZcXhfkEu",
"externally_funded": "UNKNOWN",
"failure_code": null,
"failure_message": null,
"fee": 0,
"idempotency_id": null,
"merchant": "MUeDVrf2ahuKc9Eg5TeZugvs",
"merchant_identity": "IDuqZpDw28f2KK6YuDk4jNLg",
"messages": [],
"raw": null,
"ready_to_settle_at": null,
"security_code_verification": null,
"source": null,
"state": "PENDING",
"statement_descriptor": "FNX*FINIX FLOWERS",
"subtype": "API",
"tags": {
"test": "refund"
},
"trace_id": "5cc0ab4e-3609-4a13-a9c3-b435328360c1",
"type": "REVERSAL",
"_links": {
"application": {
"href": "https://finix.sandbox-payments-api.com/applications/APgPDQrLD52TYvqazjHJJchM"
},
"self": {
"href": "https://finix.sandbox-payments-api.com/transfers/TRnqh2Mt6pnnPumxvenDmVjX"
},
"parent": {
"href": "https://finix.sandbox-payments-api.com/transfers/TR6Gnj38UyPW3CoukdL9WaR1"
},
"destination": {
"href": "https://finix.sandbox-payments-api.com/payment_instruments/PImmCg3Po7oNi7jaZcXhfkEu"
},
"merchant_identity": {
"href": "https://finix.sandbox-payments-api.com/identities/IDuqZpDw28f2KK6YuDk4jNLg"
},
"payment_instruments": {
"href": "https://finix.sandbox-payments-api.com/transfers/TRnqh2Mt6pnnPumxvenDmVjX/payment_instruments"
},
"fee_profile": {
"href": "https://finix.sandbox-payments-api.com/fee_profiles/FPvCQUcnsueN3Bc3zR1qCBG8"
}
}
}
After the refund is processed, the Transfer's state
will change to SUCCEEDED
. Buyers will see the refund returned as a credit within 5 to 10 business days, depending on their bank. ACH Direct Debit refunds can’t get canceled once processed.
Refunded ACH Returns
Banks manage the ACH networks and often pre-fund transactions before debiting funds. In rare cases, ACH Refunds may be returned:
- The bank account is closed or frozen.
- The buyer made a mistake while entering their bank information.
- The buyer requested to reverse a pre-funded transaction.
When an ACH Refund is returned, Finix creates two Tranfers to credit the funds back to the original bank account. You'll receive transfer
created
webhooks.
- Merchant credit: one
Transfer
to return the funds back to the original bank account. - Platform debit: one
Transfer
to debit funds that got credited proactively.
{
"type": "created",
"entity": "transfer",
"occurred_at": "2022-09-01T20:49:23.437609",
"_embedded": {
"transfers": [
{
"idempotency_id": null,
"amount": 6031,
"trace_id": "FNX3Rs9AKNwUVoVu112D40ec5",
"failure_code": null,
"fee": 603,
"destination": null,
"raw": null,
"created_at": "2022-09-01T20:36:08.13Z",
"source": "PIr1Ru7ewBkEYVVn7SP1u5FW",
"merchant": "MUeDVrf2ahuKc9Eg5TeZugvs",
"merchant_identity": "IDuqZpDw28f2KK6YuDk4jNLg",
"failure_message": null,
"type": "REVERSAL",
"tags": {
"result_message_0": "ReasonCode: R03",
"result_message_1": "ReasonDescription: No Account Unable to Locate Account"
},
"statement_descriptor": "FNX*FINIX FLOWERS",
"additional_buyer_charges": null,
"ready_to_settle_at": null,
"application": "APgPDQrLD52TYvqazjHJJchM",
"updated_at": "2022-09-01T20:49:23.43",
"subtype": "MERCHANT_CREDIT_ADJUSTMENT",
"externally_funded": "UNKNOWN",
"messages": [],
"currency": "USD",
"id": "TRzoL5FmpxIP2TRAmHKSlHgz",
"state": "SUCCEEDED"
}
]
}
}
{
"type": "created",
"entity": "transfer",
"occurred_at": "2022-09-01T20:49:23.437609",
"_embedded": {
"transfers": [
{
"idempotency_id": null,
"amount": 6031,
"trace_id": "FNXff8f88c140908eb69f3321",
"failure_code": null,
"fee": 603,
"destination": null,
"raw": null,
"created_at": "2022-09-01T20:36:08.13Z",
"source": "PIr1Ru7ewBkEYVVn7SP1u5FW",
"merchant": "MUeDVrf2ahuKc9Eg5TeZugvs",
"merchant_identity": "IDuqZpDw28f2KK6YuDk4jNLg",
"failure_message": null,
"type": "REVERSAL",
"statement_descriptor": "FNX*FINIX FLOWERS",
"additional_buyer_charges": null,
"ready_to_settle_at": null,
"application": "APgPDQrLD52TYvqazjHJJchM",
"updated_at": "2022-09-01T20:49:23.43",
"subtype": "PLATFORM_DEBIT_ADJUSTMENT",
"externally_funded": "UNKNOWN",
"messages": [],
"currency": "USD",
"id": "TRoom5emPxiP1TRAmHcSjHgz",
"state": "SUCCEEDED"
}
]
}
}