
Security News
Ruby's Bundler 4.0.18 Extends Cooldown to bundle lock and bundle cache
The supply chain control that delays freshly published gems now covers lockfile generation and gem vendoring in Ruby projects.
@atomicfi/transact-capacitor
Advanced tools
Capactior plugin to use native sdks from Atomic
npm install @atomicfi/transact-capacitor
npx cap sync
presentTransact(...)hideTransact()pauseTransact(...)resumeTransact(...)resolveDataRequest(...)addListener('onInteraction', ...)addListener('onDataRequest', ...)addListener('onAuthStatusUpdate', ...)addListener('onTaskStatusUpdate', ...)addListener('onFinish', ...)addListener('onClose', ...)addListener('onLaunch', ...)removeAllListeners()The Transact Capacitor plugin interface.
presentTransact(options: PresentTransactOptions) => Promise<TransactResult>
Launch a Transact flow. Resolves when the flow finishes or is closed.
| Param | Type |
|---|---|
options | PresentTransactOptions |
Returns: Promise<TransactResult>
hideTransact() => Promise<void>
Programmatically hide the Transact overlay.
pauseTransact(options?: PauseTransactOptions | undefined) => Promise<void>
Pause the active Transact session, dismissing the UI while preserving session state so it can be resumed later with {@link resumeTransact}.
| Param | Type |
|---|---|
options | PauseTransactOptions |
resumeTransact(options?: ResumeTransactOptions | undefined) => Promise<void>
Resume a previously paused Transact session.
| Param | Type |
|---|---|
options | ResumeTransactOptions |
resolveDataRequest(options: DataRequestResponse) => Promise<void>
Respond to an onDataRequest event with card or identity data.
| Param | Type |
|---|---|
options | DataRequestResponse |
addListener(eventName: 'onInteraction', listenerFunc: (event: InteractionEvent) => void) => Promise<PluginListenerHandle>
| Param | Type |
|---|---|
eventName | 'onInteraction' |
listenerFunc | (event: InteractionEvent) => void |
Returns: Promise<PluginListenerHandle>
addListener(eventName: 'onDataRequest', listenerFunc: (event: DataRequestEvent) => void) => Promise<PluginListenerHandle>
| Param | Type |
|---|---|
eventName | 'onDataRequest' |
listenerFunc | (event: DataRequestEvent) => void |
Returns: Promise<PluginListenerHandle>
addListener(eventName: 'onAuthStatusUpdate', listenerFunc: (event: AuthStatusUpdateEvent) => void) => Promise<PluginListenerHandle>
| Param | Type |
|---|---|
eventName | 'onAuthStatusUpdate' |
listenerFunc | (event: AuthStatusUpdateEvent) => void |
Returns: Promise<PluginListenerHandle>
addListener(eventName: 'onTaskStatusUpdate', listenerFunc: (event: TaskStatusUpdateEvent) => void) => Promise<PluginListenerHandle>
| Param | Type |
|---|---|
eventName | 'onTaskStatusUpdate' |
listenerFunc | (event: TaskStatusUpdateEvent) => void |
Returns: Promise<PluginListenerHandle>
addListener(eventName: 'onFinish', listenerFunc: (event: FinishEvent) => void) => Promise<PluginListenerHandle>
| Param | Type |
|---|---|
eventName | 'onFinish' |
listenerFunc | (event: FinishEvent) => void |
Returns: Promise<PluginListenerHandle>
addListener(eventName: 'onClose', listenerFunc: (event: CloseEvent) => void) => Promise<PluginListenerHandle>
| Param | Type |
|---|---|
eventName | 'onClose' |
listenerFunc | (event: CloseEvent) => void |
Returns: Promise<PluginListenerHandle>
addListener(eventName: 'onLaunch', listenerFunc: () => void) => Promise<PluginListenerHandle>
| Param | Type |
|---|---|
eventName | 'onLaunch' |
listenerFunc | () => void |
Returns: Promise<PluginListenerHandle>
removeAllListeners() => Promise<void>
Result returned when a Transact flow finishes or is closed.
| Prop | Type | Description |
|---|---|---|
finished | Record<string, any> | Present when the flow completed successfully. |
closed | Record<string, any> | Present when the flow was closed by the user. |
error | string | Error message if the flow failed to launch. |
Options for {@link TransactPluginPlugin.presentTransact}.
| Prop | Type | Description |
|---|---|---|
config | TransactConfig | The Transact configuration. |
environment | TransactEnvironmentOption | Environment to connect to. Pass Environment.PRODUCTION / Environment.SANDBOX (or the plain string), or a TransactEnvironment object for custom URLs. Defaults to production. |
presentationStyle | 'formSheet' | 'fullScreen' | iOS only. Modal presentation style. |
debug | boolean | Enable debug mode. Forwards native debug logs to console.log and makes the Transact webview inspectable (iOS: WKWebView via Safari Web Inspector; Android: WebView via chrome://inspect). Logs print automatically — no listener required. |
Top-level configuration object for a Transact session.
Properties are grouped by scope compatibility:
publicToken, scope, tasks, theme, language, deeplink, metadatalinkedAccount, search, handoff, experiments, customer,
features, sessionContext, conversionToken, inSdkdeferredPaymentMethodStrategy| Prop | Type | Description |
|---|---|---|
publicToken | string | Required. Public token returned from AccessToken creation. |
scope | ScopeType | Required. Product scope — 'user-link' or 'pay-link'. |
tasks | TransactTask[] | Required. Task operations to execute. Operations differ per scope. |
theme | TransactTheme | Shared. Visual theme customization. |
language | LanguageType | Shared. Display language — 'en' or 'es'. Defaults to 'en'. |
deeplink | TransactDeeplink | Shared. Deeplink into a specific step in the Transact flow. |
metadata | Record<string, string> | Shared. Custom key-value pairs returned in webhook events. |
linkedAccount | string | UserLink-only. Linked account ID for immediate authentication. |
search | TransactSearch | UserLink-only. Search filtering by company tags. |
handoff | HandoffType[] | UserLink-only. Views to hand off to the host app via SDK events. |
experiments | TransactExperiments | UserLink-only. Override feature flags from the Atomic Console. |
customer | TransactCustomer | UserLink-only. Override the customer name displayed in the UI. |
features | TransactFeatures | UserLink-only. Feature toggles. |
sessionContext | string | UserLink-only. Optional session context string. |
conversionToken | string | UserLink-only. Token for conversion tracking. |
inSdk | boolean | UserLink-only. When false, removes SDK-dependent UI elements. Defaults to true. |
deferredPaymentMethodStrategy | DeferredPaymentMethodStrategyType | PayLink-only. Strategy for providing deferred payment method data. - 'sdk' — Respond via the native resolveDataRequest method. - 'api' — Send data via the Update User API endpoint. |
A single task in the Transact workflow.
operation — Shared (required). Operations differ by scope.distribution, onComplete, onFail — UserLink-only.| Prop | Type | Description |
|---|---|---|
operation | OperationType | Required. The task operation — see {@link Operation} for scope-specific values. |
distribution | TransactDistribution | UserLink-only. Deposit distribution settings. Only meaningful with deposit operation. |
onComplete | 'continue' | 'finish' | UserLink-only. Action on task success: 'continue' or 'finish'. Defaults to 'continue'. |
onFail | 'continue' | 'finish' | UserLink-only. Action on task failure: 'continue' or 'finish'. Defaults to 'continue'. |
UserLink-only. Deposit distribution settings for the deposit operation.
Enforces deposit configuration and eliminates incompatible search results.
| Prop | Type | Description |
|---|---|---|
type | 'total' | 'fixed' | 'percent' | Distribution type: 'total', 'fixed', or 'percent'. |
amount | number | Dollar amount (for 'fixed') or percentage of paycheck (for 'percent'). |
canUpdate | boolean | If true, the user can override the default amount. Defaults to false. |
Visual theme customization for the Transact UI.
| Prop | Type | Description |
|---|---|---|
brandColor | string | Any valid CSS color value for buttons and accent elements. |
overlayColor | string | Any valid CSS background-color value for the modal overlay. |
dark | boolean | Enable dark mode. |
display | string | Set to 'inline' to render inside a container element instead of as a modal. |
navigationOptions | TransactNavigationOptions | Navigation bar element visibility. |
Controls for navigation bar element visibility.
| Prop | Type | Description |
|---|---|---|
showBackButton | boolean | Whether the back button is visible. Defaults to true. |
showBackButtonText | boolean | Whether a text label appears next to the back button. Defaults to false. |
showCloseButton | boolean | Whether the close/exit button is displayed. Defaults to true. |
Deeplink configuration to navigate directly to a specific step.
Both login-company and search-company are supported by UserLink and PayLink.
| Prop | Type | Description |
|---|---|---|
step | StepType | The step to navigate to — 'login-company' or 'search-company'. |
companyId | string | Company ID to deeplink into. |
app | AppType | PayLink manage-only. App to deeplink into — see {@link App}. |
payments | string[] | PayLink manage-only. Payment IDs to target. |
accountId | string | PayLink manage-only. Account ID to target. |
UserLink-only. Search filtering by company tags.
| Prop | Type | Description |
|---|---|---|
tags | TagType[] | Filter companies by tags. |
excludedTags | TagType[] | Exclude companies matching these tags. |
ruleId | string | Identifier for a search experience defined in the Atomic Console. |
UserLink-only. Override feature flags from the Atomic Console.
| Prop | Type | Description |
|---|---|---|
fractionalDeposits | boolean | Override the Fractional Deposit feature flag value. |
UserLink-only. Override the customer name displayed in the Transact UI.
| Prop | Type | Description |
|---|---|---|
name | string | Customer name shown in the UI. |
UserLink-only. Feature toggles for the Transact session.
| Prop | Type | Description |
|---|---|---|
fractionalDeposits | boolean | Enable or disable fractional (decimal) deposit amounts. |
customSearch | boolean | Enable or disable custom search functionality. |
Environment configuration for connecting to Atomic services.
| Prop | Type | Description |
|---|---|---|
environment | EnvironmentType | Environment target: 'production', 'sandbox', or 'custom'. |
transactPath | string | Custom Transact URL. Required when environment is 'custom'. |
apiPath | string | Custom API URL. Required when environment is 'custom'. |
Options for {@link TransactPluginPlugin.pauseTransact}.
| Prop | Type | Description |
|---|---|---|
animated | boolean | Whether the pause animation should play. Defaults to true. |
Options for {@link TransactPluginPlugin.resumeTransact}.
| Prop | Type | Description |
|---|---|---|
animated | boolean | Whether the resume animation should play. Defaults to true. |
Response payload for resolving an onDataRequest event.
| Prop | Type | Description |
|---|---|---|
card | CardData | Payment card data. |
identity | IdentityData | Identity data. |
Payment card information for resolving data requests.
| Prop | Type | Description |
|---|---|---|
number | string | Full card number. |
expiry | string | Card expiration date. |
cvv | string | Card verification value. |
Identity information for resolving data requests.
| Prop | Type |
|---|---|
firstName | string |
lastName | string |
postalCode | string |
address | string |
address2 | string |
city | string |
state | string |
phone | string |
email | string |
| Prop | Type |
|---|---|
remove | () => Promise<void> |
Payload for the onInteraction event.
| Prop | Type | Description |
|---|---|---|
name | string | Name of the interaction. |
value | any | Interaction value. |
Payload for the onDataRequest event.
| Prop | Type | Description |
|---|---|---|
fields | string[] | Requested data fields. |
taskId | string | |
userId | string | |
identifier | string | |
taskWorkflowId | string | |
externalId | string |
Payload for the onAuthStatusUpdate event.
| Prop | Type | Description |
|---|---|---|
status | string | Authentication status. |
company | TransactCompanyEvent | Company associated with the authentication. |
Company information included in event payloads.
| Prop | Type |
|---|---|
_id | string |
name | string |
branding | { color: string; logo: { url: string; backgroundColor?: string; }; } |
Payload for the onTaskStatusUpdate event.
| Prop | Type | Description |
|---|---|---|
taskId | string | |
product | string | |
status | TaskStatusType | Current task status. |
failReason | FailReasonType | Reason for failure. Only present when status is 'failed'. |
company | TransactCompanyEvent | Company associated with the task. |
depositData | DepositDataEvent | UserLink — Deposit data returned on successful deposit operations. |
switchData | SwitchDataEvent | PayLink — Payment method data returned on successful switch operations. |
managedBy | { company: TransactCompanyEvent; } | Present when a task is managed by another company. |
UserLink — Deposit data from a successful deposit operation.
| Prop | Type |
|---|---|
accountType | string |
distributionAmount | number |
distributionType | string |
lastFour | string |
routingNumber | string |
title | string |
PayLink — Payment method data from a successful switch operation.
| Prop | Type |
|---|---|
paymentMethod | { type: string; brand?: string; expiry?: string; lastFour?: string; accountType?: string; routingNumber?: string; accountNumberLastFour?: string; } |
Payload for the onFinish event.
| Prop | Type |
|---|---|
taskId | string |
Payload for the onClose event.
| Prop | Type |
|---|---|
reason | string |
Construct a type with a set of properties K of type T
{
[P in K]: T;
}
(typeof Scope)[keyof typeof Scope]
(typeof Operation)[keyof typeof Operation]
(typeof Language)[keyof typeof Language]
(typeof Step)[keyof typeof Step]
(typeof App)[keyof typeof App]
(typeof Tag)[keyof typeof Tag]
(typeof Handoff)[keyof typeof Handoff]
(typeof DeferredPaymentMethodStrategy)[keyof typeof DeferredPaymentMethodStrategy]
Environment to connect to. Pass Environment.PRODUCTION / Environment.SANDBOX
(or the plain 'production' / 'sandbox' string) as a shorthand, or a
TransactEnvironment object (required for custom URLs).
typeof Environment.PRODUCTION | typeof Environment.SANDBOX | TransactEnvironment
(typeof Environment)[keyof typeof Environment]
(typeof TaskStatus)[keyof typeof TaskStatus]
(typeof FailReason)[keyof typeof FailReason]
FAQs
Capactior plugin to use native sdks from Atomic
We found that @atomicfi/transact-capacitor demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 4 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
The supply chain control that delays freshly published gems now covers lockfile generation and gem vendoring in Ruby projects.

Security News
During a UK cyber test, a Mythos 5 agent used sockpuppets, social engineering, and prompt injection to try to get a maintainer to merge malware.

Company News
Socket is now in the AWS Security Hub Extended plan. Adopt it through AWS, apply committed spend, and block malicious open source packages.