geowallet
    • Overview
    • Authentication
    • APIs
      • Ledger Balance
        • Get Balance of all ledgers
        • Get Balance for a single currency
      • Funding
        • Get deposit instruments
      • Payers
        • Create original payer
      • Beneficiaries
        • Create beneficiary
      • Quotes
        • Get FX quotation
      • Payments
        • Confirm quote and create payment
        • Payment result inquiry
      • Files
        • Create file upload session
        • Get file processing status
        • Upload file binary to pre-signed URL
    • Payment Status Webhook
    • About Us
    • Schemas
      • ErrorResponse
      • DepositInstrumentsResponse
      • DepositInstruction
      • FiatBankAccount
      • CreatePayerRequest
      • PayerInfo
      • IdentityInfo
      • Address
      • CompanyInfo
      • Director
      • UBO
      • DocumentReference
      • CreatePayerResponse
      • CreateBeneficiaryRequest
      • BeneficiaryInfo
      • BeneficiaryBankAccount
      • IntermediaryBank
      • OriginatorInfo
      • LocalClearing
      • CreateBeneficiaryResponse
      • QuoteRequest
      • QuoteResponse
      • PaymentRequest
      • PaymentInstruction
      • Amount
      • Compliance
      • Metadata
      • PaymentResponse
      • FileUploadSessionRequest
      • FileUploadSessionResponse
      • FileStatusResponse

    Transaction Status Webhook

    Transaction Status Webhook#

    GeoSwift uses a webhook to notify your system when a transaction reaches a final status (SUCCESS, FAILED, CANCELLED, or RETURNED).
    You must configure a secure HTTPS endpoint to receive these asynchronous notifications in both UAT and Production environments.
    🔐 Security & Reliability Requirements:
    Your endpoint must validate the webhook signature (provided in request headers) to ensure authenticity.
    Your system must be idempotent — GeoSwift may retry delivery on failure.
    Respond with HTTP 200 OK and a valid acknowledgment payload within 5 seconds.

    Webhook Payload Example#

    {
      "transactionReference": "GS26030218000000123",
      "partnerTransactionReference": "GSWIFT_UK_NG_260302175959",
      "errorCode": "0000",
      "errorMessage": "Payout completed successfully",
      "status": "SUCCESS"
    }

    Request Parameters#

    ParameterDescriptionData TypeRequirement
    transactionReferenceUnique transaction identifier generated by GeoSwift.StringMandatory
    partnerTransactionReferenceUnique reference provided by the sending partner during transaction creation.StringMandatory
    errorCodeStandardized code indicating the transaction outcome (0000 = success; non-zero = failure).StringMandatory
    errorMessageHuman-readable description of the transaction result.StringMandatory
    statusFinal status of the transaction. Possible values:
    - SUCCESS: Payout completed. DO NOT REFUND SENDER
    - FAILED: Transaction failed. REFUND SENDER
    - CANCELLED: Cancelled by sender or partner. REFUND SENDER
    - RETURNED: Funds reversed by payout network. REFUND SENDER
    StringMandatory

    Response Parameters#

    ParameterDescriptionData TypeRequirement
    acknowledgedConfirms successful receipt and processing of the webhook notification. Must be a boolean (true or false).BooleanMandatory
    💡 Note: Your system must respond with HTTP 200 OK and a JSON body:
    { "acknowledged": true }
    Do not return string values like "true" — use a proper boolean.
    Modified at 2026-06-05 08:35:01
    Previous
    Upload file binary to pre-signed URL
    Next
    About Us
    Built with