feat: update README for payment process clarity and enhance success notification button behavior
This commit is contained in:
@@ -106,9 +106,11 @@ To access admin pages follow these steps:
|
|||||||
1. Customer adds analysis to cart in **B2B** storefront
|
1. Customer adds analysis to cart in **B2B** storefront
|
||||||
2. Customer checks out from cart and is redirected to **Montonio**
|
2. Customer checks out from cart and is redirected to **Montonio**
|
||||||
3. Customer pays and is redirected back to **B2B** `GET B2B/home/cart/montonio-callback?order-token=$JWT`
|
3. Customer pays and is redirected back to **B2B** `GET B2B/home/cart/montonio-callback?order-token=$JWT`
|
||||||
|
|
||||||
- **Medusa** order is created and cart is emptied
|
- **Medusa** order is created and cart is emptied
|
||||||
- email is sent to customer
|
- email is sent to customer
|
||||||
- B2B sends order XML as private message to Medipost.
|
- B2B sends order XML as private message to Medipost.
|
||||||
|
|
||||||
When **Montonio** has confirmed payment, it will call **Medusa** webhook endpoint and **Medusa** will mark order payment as captured.
|
When **Montonio** has confirmed payment, it will call **Medusa** webhook endpoint and **Medusa** will mark order payment as captured.
|
||||||
|
|
||||||
In background a job will call `POST B2B/api/job/sync-analysis-results` every n minutes and sync private messages with responses from **Medipost**.
|
In background a job will call `POST B2B/api/job/sync-analysis-results` every n minutes and sync private messages with responses from **Medipost**.
|
||||||
|
|||||||
@@ -4,14 +4,11 @@ import { redirect } from 'next/navigation';
|
|||||||
|
|
||||||
import { updateCustomer } from '@lib/data/customer';
|
import { updateCustomer } from '@lib/data/customer';
|
||||||
|
|
||||||
import { createAuthApi } from '@kit/auth/api';
|
|
||||||
import { enhanceAction } from '@kit/next/actions';
|
import { enhanceAction } from '@kit/next/actions';
|
||||||
import { getSupabaseServerClient } from '@kit/supabase/server-client';
|
import { getSupabaseServerClient } from '@kit/supabase/server-client';
|
||||||
|
|
||||||
import pathsConfig from '~/config/paths.config';
|
import pathsConfig from '~/config/paths.config';
|
||||||
|
|
||||||
import { UpdateAccountSchema } from '../../schemas/update-account.schema';
|
|
||||||
|
|
||||||
export interface AccountSubmitData {
|
export interface AccountSubmitData {
|
||||||
firstName: string;
|
firstName: string;
|
||||||
lastName: string;
|
lastName: string;
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import Image from 'next/image';
|
import Image from 'next/image';
|
||||||
import Link from 'next/link';
|
import { redirect } from 'next/navigation';
|
||||||
|
|
||||||
import { MedReportLogo } from '@/components/med-report-logo';
|
import { MedReportLogo } from '@/components/med-report-logo';
|
||||||
|
|
||||||
@@ -56,10 +56,11 @@ export const SuccessNotification = ({
|
|||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
{buttonProps && (
|
{buttonProps && (
|
||||||
<Button className="mt-8 w-full">
|
<Button
|
||||||
<Link href={buttonProps.href}>
|
className="mt-8 w-full"
|
||||||
|
onClick={() => redirect(buttonProps.href)}
|
||||||
|
>
|
||||||
<Trans i18nKey={buttonProps.buttonTitleKey} />
|
<Trans i18nKey={buttonProps.buttonTitleKey} />
|
||||||
</Link>
|
|
||||||
</Button>
|
</Button>
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
3
supabase/migrations/20250811174200_delete_employee.sql
Normal file
3
supabase/migrations/20250811174200_delete_employee.sql
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
grant
|
||||||
|
execute on function medreport.can_action_account_member (uuid, uuid) to authenticated,
|
||||||
|
service_role;
|
||||||
Reference in New Issue
Block a user