mirror of
https://github.com/hanzo-fi/payments.git
synced 2026-10-30 20:31:20 +00:00
* feat: add Fireblocks connector plugin (read-only) Add a new PSP connector for Fireblocks digital asset custody platform. This connector supports read-only operations: - Fetch vault accounts with cursor-based pagination - Fetch balances per account (fresh API calls) - Fetch transactions/payments with timestamp-based pagination Key features: - JWT RS256 authentication with custom HTTP transport - Dynamic asset loading from /v1/assets API with pagination - Proper decimal handling for all Fireblocks assets - Client-side deduplication for transactions with same timestamp * chore: regenerate OpenAPI specs and SDK for Fireblocks connector Auto-generated files for the new Fireblocks connector configuration. * chore: Update Capabilities * test: add unit tests for Fireblocks connector Tests for plugin, accounts, balances, and payments functionality. * fix: correct indentation and improve deduplication comment in Fireblocks connector - Fix indentation in balances_test.go and payments_test.go to match codebase style - Clarify deduplication logic comment in payments.go explaining the ID comparison assumption * chore: CodeRabbit Comment * feat: Update Assets Name Regex for allow Â_ * Fix fireblocks asset refresh and payment dedupe * Update internal/connectors/plugins/public/fireblocks/workflow.go Co-authored-by: Quentin-David-24 <[email protected]> * Handle fireblocks transaction destinations * Use UnixMilli and error logs for fireblocks timestamps * Align fireblocks workflow task name * Align fireblocks payment status mapping * Use max pageSize for fireblocks assets listing * Rename baseURL to endpoint for fireblocks config * Add note and subStatus to fireblocks payment metadata * Remove unused GetVaultAccountAsset function * chore: run pre-commit * Improve private key parsing error message --------- Co-authored-by: Quentin-David-24 <[email protected]>
79 lines
1.6 KiB
Go
79 lines
1.6 KiB
Go
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
|
|
package components
|
|
|
|
import (
|
|
"github.com/formancehq/payments/pkg/client/internal/utils"
|
|
)
|
|
|
|
type V3FireblocksConfig struct {
|
|
APIKey string `json:"apiKey"`
|
|
Endpoint *string `json:"endpoint,omitempty"`
|
|
Name string `json:"name"`
|
|
// Deprecated: From v3.1, this parameter will be ignored.
|
|
PageSize *int64 `default:"25" json:"pageSize"`
|
|
PollingPeriod *string `default:"30m" json:"pollingPeriod"`
|
|
PrivateKey string `json:"privateKey"`
|
|
Provider *string `default:"Fireblocks" json:"provider"`
|
|
}
|
|
|
|
func (v V3FireblocksConfig) MarshalJSON() ([]byte, error) {
|
|
return utils.MarshalJSON(v, "", false)
|
|
}
|
|
|
|
func (v *V3FireblocksConfig) UnmarshalJSON(data []byte) error {
|
|
if err := utils.UnmarshalJSON(data, &v, "", false, false); err != nil {
|
|
return err
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (o *V3FireblocksConfig) GetAPIKey() string {
|
|
if o == nil {
|
|
return ""
|
|
}
|
|
return o.APIKey
|
|
}
|
|
|
|
func (o *V3FireblocksConfig) GetEndpoint() *string {
|
|
if o == nil {
|
|
return nil
|
|
}
|
|
return o.Endpoint
|
|
}
|
|
|
|
func (o *V3FireblocksConfig) GetName() string {
|
|
if o == nil {
|
|
return ""
|
|
}
|
|
return o.Name
|
|
}
|
|
|
|
func (o *V3FireblocksConfig) GetPageSize() *int64 {
|
|
if o == nil {
|
|
return nil
|
|
}
|
|
return o.PageSize
|
|
}
|
|
|
|
func (o *V3FireblocksConfig) GetPollingPeriod() *string {
|
|
if o == nil {
|
|
return nil
|
|
}
|
|
return o.PollingPeriod
|
|
}
|
|
|
|
func (o *V3FireblocksConfig) GetPrivateKey() string {
|
|
if o == nil {
|
|
return ""
|
|
}
|
|
return o.PrivateKey
|
|
}
|
|
|
|
func (o *V3FireblocksConfig) GetProvider() *string {
|
|
if o == nil {
|
|
return nil
|
|
}
|
|
return o.Provider
|
|
}
|