List Transfer Attempts
Overview
Retrieve a list of Transfer Attempts created when buyers attempt payments via Payment Links or Checkout Forms. Transfer Attempts track the lifecycle of each payment attempt, including successes, failures, and pending transactions.
Resource Access
- User Permissions: Admin users only
- Endpoint:
GET /transfer_attempts
Arguments
| Parameter | Type | Required | Description |
|---|---|---|---|
| limit | integer | No | Maximum number of records to return (default: 10) |
| entity_id | string | No | Filter by Checkout Form, Payment Link, or Payout Link ID |
| before_cursor | string | No | Cursor for pagination (previous page) |
| after_cursor | string | No | Cursor for pagination (next page) |
Example Request
curl -X GET \
'https://api.ahrvo.network/payments/na/transfer_attempts?entity_id=CFcheckoutForm123&limit=20' \
-u username:password \
-H 'Content-Type: application/json'
Example Response
{
"_embedded": {
"transfer_attempts": [
{
"id": "TAattempt001",
"created_at": "2023-12-10T15:30:00Z",
"amount": 9900,
"currency": "USD",
"state": "SUCCEEDED",
"entity_id": "CFcheckoutForm123",
"entity_type": "CHECKOUT_FORM",
"transfer_id": "TRtransfer456",
"payment_instrument_id": "PIcreditCard789",
"failure_code": null,
"failure_message": null,
"buyer_details": {
"name": "John Doe",
"email": "john@example.com",
"phone": "+1-555-123-4567"
},
"tags": {
"product": "subscription",
"campaign": "holiday_sale"
},
"_links": {
"self": {
"href": "https://api.ahrvo.network/payments/na/transfer_attempts/TAattempt001"
},
"transfer": {
"href": "https://api.ahrvo.network/payments/na/transfers/TRtransfer456"
},
"checkout_form": {
"href": "https://api.ahrvo.network/payments/na/checkout_forms/CFcheckoutForm123"
}
}
},
{
"id": "TAattempt002",
"created_at": "2023-12-10T14:15:00Z",
"amount": 9900,
"currency": "USD",
"state": "FAILED",
"entity_id": "CFcheckoutForm123",
"entity_type": "CHECKOUT_FORM",
"transfer_id": null,
"payment_instrument_id": "PIcreditCard012",
"failure_code": "CARD_DECLINED",
"failure_message": "The card was declined by the issuing bank",
"buyer_details": {
"name": "Jane Smith",
"email": "jane@example.com",
"phone": "+1-555-987-6543"
},
"tags": {
"product": "subscription"
},
"_links": {
"self": {
"href": "https://api.ahrvo.network/payments/na/transfer_attempts/TAattempt002"
},
"checkout_form": {
"href": "https://api.ahrvo.network/payments/na/checkout_forms/CFcheckoutForm123"
}
}
},
{
"id": "TAattempt003",
"created_at": "2023-12-10T13:00:00Z",
"amount": 9900,
"currency": "USD",
"state": "PENDING",
"entity_id": "CFcheckoutForm123",
"entity_type": "CHECKOUT_FORM",
"transfer_id": null,
"payment_instrument_id": "PIbankAccount345",
"failure_code": null,
"failure_message": null,
"buyer_details": {
"name": "Bob Johnson",
"email": "bob@example.com"
},
"tags": {},
"_links": {
"self": {
"href": "https://api.ahrvo.network/payments/na/transfer_attempts/TAattempt003"
},
"checkout_form": {
"href": "https://api.ahrvo.network/payments/na/checkout_forms/CFcheckoutForm123"
}
}
}
]
},
"page": {
"offset": 0,
"limit": 20,
"count": 3
},
"_links": {
"self": {
"href": "https://api.ahrvo.network/payments/na/transfer_attempts?entity_id=CFcheckoutForm123&limit=20"
}
}
}
Additional Information
- Transfer Attempts: Track payment attempt lifecycle
- Created when buyer submits payment via link/form
- Records attempt details (success, failure, pending)
- Links to resulting Transfer if successful
- Useful for conversion tracking and debugging
- States:
- SUCCEEDED: Payment successful, Transfer created
transfer_idpopulated with resulting Transfer- Funds captured successfully
- Customer charged
- FAILED: Payment failed
failure_codeandfailure_messageexplain why- No Transfer created
- Common failures: card declined, insufficient funds, invalid card
- PENDING: Payment processing
- Awaiting confirmation from processor
- Typically transitions to SUCCEEDED or FAILED within seconds/minutes
- For ACH, may take days
- SUCCEEDED: Payment successful, Transfer created
- Entity Types: Source of the attempt
- CHECKOUT_FORM: Hosted checkout page
- Embedded payment form
- Customizable branding
- PAYMENT_LINK: Shareable payment link
- Send via email, SMS, social media
- One-time or reusable
- PAYOUT_LINK: Payout/disbursement link
- Send money to recipients
- Reverse payment flow
- CHECKOUT_FORM: Hosted checkout page
- Transfer ID: Link to successful payment
- null for failed or pending attempts
- Populated when state = SUCCEEDED
- Use to retrieve full Transfer details
- Failure Codes: Why payment failed
- CARD_DECLINED: Issuing bank declined
- INSUFFICIENT_FUNDS: Not enough balance
- INVALID_CARD_NUMBER: Card number invalid
- CARD_EXPIRED: Card expired
- CVV_MISMATCH: Security code incorrect
- ADDRESS_VERIFICATION_FAILED: AVS check failed
- PROCESSING_ERROR: Processor error
- FRAUD_DETECTED: Flagged by fraud detection
- Buyer Details: Customer information
- Name, email, phone collected during checkout
- May include shipping address
- Useful for customer support, receipts
- Use Cases:
- Conversion Tracking: Monitor checkout success rate
- Count SUCCEEDED vs FAILED attempts
- Calculate conversion rate
- Example: 85 succeeded / 100 total = 85% conversion
- Failure Analysis: Understand why payments fail
- Group by failure_code
- Identify common issues
- Example: High CARD_DECLINED rate may indicate pricing too high
- Checkout Optimization: Improve payment flow
- Track PENDING → FAILED transition time
- Identify slow processors
- A/B test different checkout designs
- Customer Support: Help customers with failed payments
- Lookup attempt by email
- Show failure reason
- Guide customer to fix issue
- Fraud Detection: Monitor suspicious activity
- Multiple failed attempts from same IP
- Pattern of similar failed attempts
- High velocity attempts
- Payment Link Performance: Track link usage
- Filter by entity_id (Payment Link)
- See all attempts from that link
- Measure link effectiveness
- Conversion Tracking: Monitor checkout success rate
- Filtering by Entity: View attempts for specific form/link
entity_id=CFcheckoutForm123: All attempts for that checkout formentity_id=PLpaymentLink456: All attempts for that payment link- Track individual campaign or product performance
- Cursor Pagination: For large result sets
- Use
before_cursorfor previous page - Use
after_cursorfor next page - Better performance than offset-based pagination
- Use
- Common Metrics:
- Success Rate: SUCCEEDED / Total Attempts
- Example: 170 succeeded / 200 total = 85%
- Failure Rate: FAILED / Total Attempts
- Example: 25 failed / 200 total = 12.5%
- Pending Rate: PENDING / Total Attempts
- Should be low (< 5%)
- High pending may indicate processor issues
- Average Amount: Sum of succeeded amounts / Count
- Revenue per successful attempt
- Top Failure Reasons: Group by failure_code
- Identify most common issues
- Success Rate: SUCCEEDED / Total Attempts
- Time-Based Analysis:
- Filter by created_at timestamp
- Track attempts per day/hour
- Identify peak traffic times
- Monitor for sudden drops (may indicate form/link issues)
- Campaign Tracking: Use tags
- Tag attempts with campaign ID
- Filter by tag to measure campaign performance
- Compare conversion across campaigns
- Related Endpoints:
- GET /transfer_attempts/{id}: Fetch attempt details
- GET /transfers/{id}: View resulting Transfer
- GET /checkout_forms/{id}: View checkout form details
- GET /payment_links/{id}: View payment link details