Skip to content

Implement Gas sponsorship relay endpoint#122

Merged
PeterOche merged 3 commits intodegenspot:mainfrom
gabito1451:Gas-sponsorship-relay-endpoint
Mar 24, 2026
Merged

Implement Gas sponsorship relay endpoint#122
PeterOche merged 3 commits intodegenspot:mainfrom
gabito1451:Gas-sponsorship-relay-endpoint

Conversation

@gabito1451
Copy link
Copy Markdown
Contributor

@gabito1451 gabito1451 commented Mar 23, 2026

This pr implements the gas sponsorship relay endpoint as requested. This feature allows the backend to sponsor transactions for users by co-signing them using a hot wallet, provided the transactions target the CallRegistry contract.

Key Implementation Details:
Relay Service (

RelayService
):

Transaction Validation: Implements a strict check ensuring that every operation in the transaction is a Soroban InvokeHostFunction call specifically directed at the configured CallRegistry contract ID.
Fee Sponsorship: Uses Stellar Fee-Bump Transactions to wrap the user's signed transaction, allowing the backend to pay for gas fees without the user needing native XLM.
Hot Wallet Signing: Dynamically signs the fee-bump outer transaction using the RELAY_HOT_WALLET_SECRET.
Relay Controller (

RelayController
):

Exposes POST /relay/tx which accepts a transaction XDR.
Returns the transaction hash upon successful submission to the Stellar network.
Module Integration:

Created

RelayModule
and integrated it into the main

AppModule
.
Configured a dedicated SorobanRpc.Server for relay operations.
Configuration:

Updated

.env.example
to include the RELAY_HOT_WALLET_SECRET variable.
Files Created/Modified:

relay.service.ts
(New)

relay.controller.ts
(New)

relay.module.ts
(New)

app.module.ts
(Modified)

closes #118

@drips-wave
Copy link
Copy Markdown

drips-wave bot commented Mar 23, 2026

@gabito1451 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@PeterOche PeterOche merged commit fa86ba2 into degenspot:main Mar 24, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Gas Sponsorship Relay Endpoint

2 participants