Skip to content

Add Pay with Transfer (bank transfer) payment method#125

Draft
Peter-John-paystack wants to merge 1 commit into
mainfrom
feature/Pay-with-Transfer
Draft

Add Pay with Transfer (bank transfer) payment method#125
Peter-John-paystack wants to merge 1 commit into
mainfrom
feature/Pay-with-Transfer

Conversation

@Peter-John-paystack

Copy link
Copy Markdown
Collaborator

Introduce a new bank transfer charge flow spanning both PaystackCore and
PaystackUI.

PaystackCore:

  • Add payWithTransfer endpoint (PayWithTransferService + Paystack extension) with request/response models
  • Add PayWithTransferPusherResponse for subscription-based status updates
  • Add MerchantChannelSettings and wire bank_transfer into channel options

PaystackUI:

  • Add BankTransfer flow (Views, ViewModel, Repository, Models) with a state machine covering account details, confirming, delayed confirmation, taking-longer, and refund-initiated phases
  • Add shared components: AccountDetailRow, ChangePaymentMethodFooter, TimelineNode, and a bank picker sheet
  • Surface bank transfer as a selectable channel in the charge flow

Tests:

  • Cover the endpoint, status mapping, view model, repository, and provider catalog, plus Pusher fixtures for each transfer status

  Introduce a new bank transfer charge flow spanning both PaystackCore and
  PaystackUI.

  PaystackCore:
  - Add payWithTransfer endpoint (PayWithTransferService + Paystack
    extension) with request/response models
  - Add PayWithTransferPusherResponse for subscription-based status updates
  - Add MerchantChannelSettings and wire bank_transfer into channel options

  PaystackUI:
  - Add BankTransfer flow (Views, ViewModel, Repository, Models) with a
    state machine covering account details, confirming, delayed
    confirmation, taking-longer, and refund-initiated phases
  - Add shared components: AccountDetailRow, ChangePaymentMethodFooter,
    TimelineNode, and a bank picker sheet
  - Surface bank transfer as a selectable channel in the charge flow

  Tests:
  - Cover the endpoint, status mapping, view model, repository, and
    provider catalog, plus Pusher fixtures for each transfer status
@Peter-John-paystack Peter-John-paystack self-assigned this Jun 15, 2026
@Peter-John-paystack Peter-John-paystack added the enhancement New feature or request label Jun 15, 2026
@sonarqubecloud

Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
0.0% Coverage on New Code (required ≥ 80%)

See analysis details on SonarQube Cloud

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant