Skip to main content
Complete the following steps to set up Flinks Pay using GEFT:
  1. Complete the standard Flinks Pay onboarding process and verification.
  2. Meet applicable MSB requirements and receive service approval from your dedicated Relationship Manager.
  3. Receive your production GEFT credentials (Username/Client ID and Password/Client Secret) and base URI.
  4. Configure your GEFT integration following the steps below.
  5. Implement session creation using the /api/v2/sessions endpoint for each payment request.
  6. Track user progress through the payment flow using:
    • Frontend event listeners for real-time updates
    • Status polling via /api/v2/sessions//status
    • Webhook notifications for terminal status changes
  7. Test your integration thoroughly using the Sandbox Guide.
  8. Go to production with your dedicated Technical Account Manager support.
After your customer completes the GEFT flow, Flinks handles the guaranteed payment processing and settlement to your configured account.

Step 1: Authentication

All GEFT API requests that require authentication use an API key passed in the x-api-key header. Your API key will be provided during onboarding.

Headers

Step 2: Create Session

Endpoint

Required Fields

Optional Fields

Example Request

Response

Step 3: Launch iFrame

Once you have a sessionId, launch the GEFT user flow:

Event Listening

Monitor frontend events to track user progress:

Step 4: Monitor Session Status

Endpoint

Example Request

Response

Status Codes

Step 5: Handle Completion

Successful Completion (EFT0301)

When status is “Completed” with “EFT0301”:
  • Payment is guaranteed and scheduled
  • Funds will be settled according to EFT processing windows
  • No further action required

Failed Scenarios

Guarantee Declined (EFT0402)
  • Offer alternative payment methods
  • Transaction cannot proceed with GEFT
Identity Mismatch (EFT0403)
  • User information doesn’t match bank account
  • Session must be terminated
User Cancellation
  • User exited flow without completing
  • Can retry with new session

Destination Account Logic

GEFT supports routing payments to different accounts:
  • With payee object: Funds settle to specified account
  • Without payee object: Funds settle to your default account (configured by Flinks)
  • No payee + no default: Request rejected with error

Important Implementation Notes

User Identity Matching

  • firstName and lastName must accurately reflect the bank account owner
  • Significant name differences will cause session failure (EFT0403)
  • Identity validation occurs after account connection

Reference ID Best Practices

  • Use unique identifier for each transaction
  • Include in reconciliation and support requests
  • Appears in all status responses and reconciliation files

Amount Handling

  • If amount provided: User cannot modify, “Enter amount” step is grayed out
  • If amount omitted: User enters amount in flow
  • Min/max limits configured at client level by Flinks

Character Limits

  • Names: 255 characters
  • Email: 256 characters
  • Reference ID: 100 characters
  • Country: 2 characters (ISO country code)
  • Account Number: 7 to 12 digits
  • Transit Number: 5 digits
  • Institution Code: 3 digits

Error Handling

Next Steps

  1. Event Handling: Implement comprehensive event tracking
  2. Sandbox Guide: Test your integration
  3. API Reference: Complete API documentation

Testing Your Integration

Use the sandbox environment with test scenarios:
  • Happy1: Successful flow
  • Happy2: Next-best-offer scenario
  • Unhappy1: Guarantee failure
See the Sandbox Guide for complete testing procedures.