Event Status Reference
Each Canada Interac e-Transfer on-ramp transaction progresses through two connected lifecycle stages:
Payment Processing — the end user completes the CAD payment through Interac e-Transfer.
Crypto Settlement — following successful payment, Tylt settles the corresponding USDT or USDC according to the transaction’s configured settlement method.
The eventId identifies the current state of the transaction.
Merchants should use the eventId received through webhooks or returned by the Get Instance Information endpoint as the primary transaction-status indicator.
Event IDs
eventId
Status Key
Display Text
Description
Terminal State
1
created
Instance Created
The payment instance has been created but has not yet been accepted.
No
2
initiated
Order Created
The instance has been accepted and the Interac e-Transfer payment request has been initiated.
No
3
paymentProcessing
Payment Processing
The customer has initiated the Interac e-Transfer payment, and Tylt is waiting for confirmation from the payment provider.
No
4
paymentFulfilled
Payment Fulfilled
The customer has completed the Interac e-Transfer payment. Tylt has received confirmation and is completing final processing before settlement.
No
5
paymentCompleted
Payment Completed
The Interac e-Transfer payment has been successfully received and payment processing is complete. The transaction will now proceed to crypto settlement.
Yes
6
settlementPending
Settlement Pending
The payment has been completed, but settlement to the merchant is still pending.
No
7
settlementCompleted
Settlement Complete
The payment has been successfully settled according to the merchant’s configured settlement method.
Yes
8
failed
Payment Failed
The payment failed because of a provider-side or processing error.
Yes
9
expired
Order Cancelled or Expired
The instance expired or was cancelled before successful completion.
Yes
10
refundInitiated
Refund Initiated
A refund or return has been initiated with the payment provider and is awaiting completion.
No
11
refundCompleted
Refund Completed
The funds have been successfully returned to the sender.
Yes
12
kyc_failed
KYC Failed
The required identity verification failed, expired, or was not completed within the permitted time.
Yes
Transaction Lifecycle
A successful Canada Interac on-ramp consists of a payment lifecycle followed by a settlement lifecycle.
Settlement is processed separately from the Interac payment regardless of whether the merchant is configured for instant settlement or another permitted settlement schedule.
For an instant-settlement configuration, the transition from Payment Completed through Settlement Pending to Settlement Complete may occur very quickly.
Payment Lifecycle
1 — Instance Created
eventId: 1
The pay-in instance has been successfully created.
At this stage:
The transaction exists within Tylt.
The CAD payment amount has been defined.
The applicable crypto quote has been calculated.
The Interac payment has not yet been completed.
Crypto settlement has not started.
No fulfilment should occur at this stage.
2 — Order Created
eventId: 2
The instance has been accepted, the end user KYC for the transaction is sufficient and the Interac e-Transfer payment request has been initiated.
The end user can proceed with the payment through their Canadian financial institution.
The transaction remains pending.
3 — Payment Processing
eventId: 3
Awaitng the the end user to initiated the Interac e-Transfer payment. Tylt is waiting for confirmation from the payment provider that the payment has been successfully received.
The transaction should continue to be treated as pending.
4 — Payment Fulfilled
eventId: 4
The end user has completed the Interac e-Transfer payment and Tylt has received confirmation from the payment provider.
Tylt is completing the remaining payment-side processing before marking the payment as completed.
This remains an intermediate state.
5 — Payment Completed
eventId: 5
The CAD payment lifecycle has been successfully completed.
At this stage:
The Interac payment has been received.
Payment-side processing has completed.
The applicable crypto amount has been determined.
The transaction can proceed into the separate crypto-settlement process.
The relevant amount and conversion information is returned in the accounts object.
fiatCurrency
Fiat currency used for the transaction. For Canada, this is CAD.
fiatAmount
CAD amount paid by the end user.
cryptoCurrency
Settlement asset, such as USDT or USDC.
cryptoAmount
Gross crypto amount calculated for the transaction.
toReleaseAmount
Net crypto amount to be released during settlement.
rate
Base conversion rate used for the transaction.
effectiveRate
Effective transaction rate after applicable commercial pricing.
fees
Fees applied to the transaction expressed in cryptoCrrency
MDR
The spread applicable on the transaction expressed in percentage.
Payment Completedconfirms completion of the payment process. Crypto settlement is processed separately and should be tracked through the settlement events.
Settlement Lifecycle
Following Payment Completed, Tylt processes settlement of the corresponding USDT or USDC amount.
Settlement is a separate process regardless of whether the configured settlement timing is instant or another permitted settlement schedule.
The amount being settled is represented by:
and the settlement asset is represented by:
6 — Settlement Pending
eventId: 6
The CAD payment has been successfully completed and the crypto settlement is now pending.
This state indicates that the stablecoin settlement process has started but has not yet completed.
For an instant-settlement transaction, this state may be short-lived.
The merchant should continue waiting for Settlement Complete before treating the crypto settlement as final.
7 — Settlement Complete
eventId: 7
The crypto settlement has been successfully completed.
This represents final completion of the full Canada Interac on-ramp transaction.
The settlement destination depends on the transaction’s transferType.
Internal Settlement
Where:
the USDT or USDC is credited to the merchant’s Tylt wallet.
No external blockchain transfer is required, and therefore fields such as hash or external wallet address may be null.
External Settlement
Where:
the USDT or USDC is transferred to the end user’s external wallet address supplied for the transaction.
The settlement details may include:
Status
Current crypto-settlement status.
hash
Blockchain transaction hash for the external transfer, where applicable.
address
End user’s destination wallet address.
Network
Blockchain network used for settlement.
type
Settlement type: internal or external.
Merchants should use eventId: 7 as the authoritative confirmation that settlement has completed rather than relying solely on the presence of a blockchain transaction hash.
Settlement Model
The settlement destination is determined by transferType.
internal
Merchant’s Tylt wallet
external
End user’s external wallet
The settlement asset may be either USDT or USDC, depending on the transaction and merchant configuration.
Settlement timing may be instant or follow another settlement schedule enabled for the merchant; however, the underlying lifecycle remains:
Refund Lifecycle
Where a transaction requires the CAD payment to be returned, it enters the refund lifecycle.
A refund may be initiated after the payment has been initiated, fulfilled, or completed, depending on the reason for the return.
10 — Refund Initiated
eventId: 10
A refund or return has been initiated with the payment provider and is awaiting completion.
This is not a terminal state.
The merchant should suspend any pending fulfilment and continue monitoring the transaction until the refund has completed.
11 — Refund Completed
eventId: 11
The CAD funds have been successfully returned to the sender.
This is a terminal unsuccessful state for the original on-ramp transaction.
The transaction should not be treated as successfully settled.
Other Terminal States
8 — Payment Failed
eventId: 8
The payment failed because of a provider-side or processing error.
The transaction should not be fulfilled or settled.
9 — Order Cancelled or Expired
eventId: 9
The pay-in instance expired or was cancelled before successful completion.
If the end user wishes to try again, a new pay-in instance should be created.
12 — KYC Failed
eventId: 12
The required identity verification failed, expired, or was not completed within the permitted period.
The transaction cannot proceed unless the end user subsequently completes an approved verification flow.
Processing Event Updates
Tylt sends webhook notifications as the transaction progresses through its lifecycle.
The current event is returned under:
Merchants should identify transactions using both:
and:
Settlement-specific information is returned separately under:
Recommended Merchant Handling
Merchants should:
Use
eventIdas the primary transaction-status indicator.Process webhook notifications idempotently.
Maintain the latest state for each
instanceId.Match both
instanceIdandmerchantOrderIdagainst the merchant’s records.Treat
Payment Fulfilledas confirmation that the end user’s Interac payment has been confirmed but payment-side processing is still completing.Treat
Payment Completedas completion of the CAD payment lifecycle.Treat
Settlement Pendingas confirmation that the separate crypto-settlement process is underway.Treat
Settlement Completeas final completion of the full CAD → USDT/USDC transaction.For
internaltransactions, expect settlement to the merchant’s Tylt wallet.For
externaltransactions, expect settlement to the end user’s external wallet.Use
accounts.toReleaseAmountas the net stablecoin amount to be settled.Use
accounts.cryptoCurrencyto identify whether settlement is in USDT or USDC.Use
cryptoSettlementDetailsfor additional settlement metadata.Use the Get Instance Information endpoint when the latest transaction state needs to be independently verified.
Successful Transaction Summary
The complete successful lifecycle is:
The final settlement destination is:
Accordingly, for the complete on-ramp transaction:
Last updated