-
Notifications
You must be signed in to change notification settings - Fork 32
feat: Offline payments with manual approval #143
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: Offline payments with manual approval #143
Conversation
|
@NagariaHussain Please review the PR and confirm if our understanding of the requested feature is aligned. |
|
Instead of "UPI payment" we have to make it generic.
|
|
@NagariaHussain i will rebase and add unit test |
|
Can you update the video and also add relevant screenshots? |
3b16ca6 to
fae3ae1
Compare
|
Check failing tests. |
d221640 to
df8408c
Compare
df8408c to
3ab0471
Compare
a5675f9 to
eba3963
Compare
|
@NagariaHussain good to merge? |
|
Can you add unit and e2e tests @rehanrehman389 ? |
|
Yes |
|
@rehanrehman389 When booking with off-platform payment:
Expected:
|
|
@rehanrehman389
@NagariaHussain what do u think do free tickets need approval?
|
|
Bug: Guest booking with OTP + off-platform payment is broken When event has both guest booking (with Email/Phone OTP) and off-platform payment enabled:
Root cause: In BookingForm.vue, the off-platform check (line 1128) runs before the OTP check (line 1152), so OTP is skipped. Expected: OTP verification should happen before showing the off-platform payment dialog. |
|
The booking should not have been submitted until approved. |
So we dont need any custom button here to approve or reject right? @NagariaHussain |
|
As discussed, on approve it will set the status to approved (before submit) and submit. |
…orrectness - Extract OFF_PLATFORM_PAYMENT_METHOD and OFF_PLATFORM_DEFAULT_LABEL constants - Replace insecure inference (missing payment_gateway) with explicit is_off_platform flag - Extract isOffPlatformGateway() helper in BookingForm to replace 3 inline checks - Remove redundant default label fallbacks in frontend (trust backend) - Fix misleading hasattr check in before_submit - Remove dead off_platform_custom_fields from payload - Remove console.log from OffPlatformPaymentDialog - Remove phantom attached_to_field reference - Add prose-sm class for HTML payment details rendering Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ultiple gateways The non-guest submit path was missing the multi-gateway check, causing it to always pick the first gateway (Razorpay) and skip the selection dialog when both Razorpay and off-platform payment were enabled. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Reduce padding on payment details div (p-4 → p-3) to prevent double indentation from parent container - Add block and mb-2 to Payment Proof label matching SponsorshipDetails pattern Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Use file_name (original filename) instead of name (Frappe doc ID hash). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Strip prose-sm first-child margin-top that caused extra padding above the payment details text - Replace text checkmark with LucideCheckCircle icon for file upload success message Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…odebase
Simplifies naming: Off-platform → Offline. Renames DocType fields,
Python constants, Vue components, E2E tests, and Buzz Custom Field
applied_to value ("Offline Payment Form").
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Update section description to better explain offline payments. Show "Replace" button text after payment proof is uploaded instead of "Upload File". Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Offline bookings now stay as draft (docstatus=0) instead of being submitted immediately. Tickets are only generated when an Event Manager approves the booking. This prevents premature ticket generation for unverified offline payments. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…reject buttons - before_submit now throws if someone tries to manually submit an offline payment booking, directing them to use Approve or Reject instead - Approve and Reject buttons are now top-level (no longer hidden in Actions dropdown) with primary/danger styling Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>








#134
https://drive.google.com/file/d/1_Ofiood6A57pCYD98SMCpaqZ3UgL9NdE/view?usp=sharing