Hii Pritam..

Yes I did a direct sales transaction...
So if a call *refundPayment *service directly on order cancel or order edit
,will it not disturb the ofbiz flow ?

Thanks & Regards
Madhi Krishnan

On Mon, Sep 14, 2020 at 2:47 PM Pritam Kute <[email protected]>
wrote:

> Hello Madhi,
>
> The way you have implemented the payment gateway is completely fine. The
> payment status thing also looks good to me. It all depends on how you have
> requested a payment gateway to process the transaction. Some payment
> gateways do direct sale transactions means the amount is debited from
> the customer's card once the transaction is successful. Another way is to
> authorize the amount in which payment gateway only authorizes the amount on
> the customer's card when order is placed into the system. It is not charged
> on the card yet. Once the order is approved or completed in the system, the
> system should send another request to the payment gateway to capture the
> transaction. This time the amount is actually charged on the customer's
> card.
>
> So if you have requested a direct sale transaction to PayTM, I will
> recommend you use a "refundPayment" service at the time of cancellation or
> edits in the order.
>
> Kind Regards,
> --
> Pritam Kute
>
>
> On Mon, Sep 14, 2020 at 2:16 PM Madhi Krishnan <
> [email protected]> wrote:
>
> > Hii Pritam.
> >
> > I basically followed the ofbiz ecommerce flow ..
> > Shipping -> Shipping_type -> Payment_method ->final_review_page ->
> External
> > Gateway ->Callback Url..
> >
> > Here I am using a gateway Called PAYTM.
> > So once the user clicks the place Order button on the final review page
> > ,the request goes to the *processOrder*..
> > Here the request get redirects to *checkExternalPayment ,*
> > So from here the user gets redirected to my External Gateway..
> >
> > Here i have noticed that at this stage the status is set as
> > PAYMENT_NOT_RECIVED, is that correct?
> >
> > Once the user comes back to my site ..i'm processing the gateway's
> response
> > and depending on the status i am either *approving *the order or
> > *cancelling
> > *the order..
> >
> > Thanks & Regards
> > Madhi Krishnan
> >
> >
> >
> > On Fri, Sep 11, 2020 at 2:12 PM Pritam Kute <
> [email protected]
> > >
> > wrote:
> >
> > > Hello Madhi,
> > >
> > > I believe in general eCommerce workflow, an order cannot be canceled
> when
> > > it is shipped or completed. It should always be returned.
> > >
> > > If payment is received for the order, it means order is completed in
> > OFBiz.
> > > So in that case, you should create a return instead of canceling the
> > order.
> > >
> > > I think there is some confusion in the process which you are following.
> > Can
> > > you provide some steps in your system how you are processing the
> > > fulfillment?
> > >
> > > Kind Regards,
> > > --
> > > Pritam Kute
> > >
> > >
> > > On Fri, Sep 11, 2020 at 1:29 PM Madhi Krishnan <
> > > [email protected]> wrote:
> > >
> > > > Hey Pritam
> > > >
> > > > So if order is cancelled from back-office application ,then ofbiz
> seems
> > > to
> > > > be invoking only authorized and settled orders,
> > > > it does not act  on payment_recieved .Is that expected?
> > > > or is it some feature awaiting to be implemented?
> > > >
> > > > Thanks & Regards
> > > > Madhi Krishnan
> > > >
> > > > On Fri, Sep 11, 2020 at 11:39 AM Pritam Kute <
> > > > [email protected]>
> > > > wrote:
> > > >
> > > > > Hello Madhi,
> > > > >
> > > > > Happy to know that it helped you.
> > > > >
> > > > > In payment integration, the process to get payment done depends on
> > lots
> > > > of
> > > > > things like rules in-country, the payment gateway which you are
> > using,
> > > > etc.
> > > > >
> > > > > In OFBiz OOTB, the expected payment cycle should be like
> > > > > 1. Payment authorisation when order is placed into the system by
> the
> > > > user.
> > > > > 2. If an order gets cancelled, payment authorisation is released
> > > > > 3. If an order is edited, payment is released and re-authorised.
> > > > > 3. If an order is approved/completed in the system, it captures the
> > > > amount.
> > > > > 4. If an order is returned after fulfilment, the payment is
> refunded.
> > > > >
> > > > > For direct sale transaction, your payment is already
> settled/captured
> > > in
> > > > > the gateway. So using releaseOrderPayment is not recommended. You
> > > should
> > > > > use refundPayment instead. releaseOrderPayment should only be used
> > when
> > > > the
> > > > > payment is in authorised status, not captured/received.
> > > > >
> > > > > Kind Regards,
> > > > > --
> > > > > Pritam Kute
> > > > >
> > > > >
> > > > > On Thu, Sep 10, 2020 at 5:23 PM Madhi Krishnan <
> > > > > [email protected]> wrote:
> > > > >
> > > > > > Hey pritam
> > > > > >
> > > > > > Thanks man..
> > > > > > I was missing the payment_authorization thing..
> > > > > > I did a direct sales_transaction.That's why my status on
> > > > > > OrderPaymentPreference was PAYMENT_RECIVED.
> > > > > >
> > > > > > Do I have to explicitly call the *authOrderPayments* service
> before
> > > > > calling
> > > > > > the gateway?
> > > > > > If you can share any documentation links about transactions in
> > ofbiz
> > > > will
> > > > > > be helpful..
> > > > > >
> > > > > > Thanks Once again
> > > > > > Madhi Krishnan
> > > > > >
> > > > > >
> > > > > > On Thu, Sep 10, 2020 at 2:55 PM Pritam Kute <
> > > > > [email protected]
> > > > > > >
> > > > > > wrote:
> > > > > >
> > > > > > > Hello Madhi,
> > > > > > >
> > > > > > > Now based on the logs which you have shared, I suspect either
> > > > > > > orderPaymentPreferenceId passed to the custom service is wrong
> or
> > > the
> > > > > > > orderPaymentPreference status is not PAYMENT_AUTHORISED. I hope
> > you
> > > > > have
> > > > > > > done payment authorization while placing the order. If you have
> > > done
> > > > a
> > > > > > > direct sale transaction, then this might not work.
> > > > > > >
> > > > > > > Kind Regards,
> > > > > > > --
> > > > > > > Pritam Kute
> > > > > > >
> > > > > > >
> > > > > > > On Thu, Sep 10, 2020 at 2:10 PM Madhi Krishnan <
> > > > > > > [email protected]> wrote:
> > > > > > >
> > > > > > > > Hey pritam ..
> > > > > > > > Thanks for your response ,I appreciate it.
> > > > > > > >
> > > > > > > > I checked the entities that you mentioned above and it looks
> ok
> > > to
> > > > > me.
> > > > > > > > i'm getting a warning in the console saying no payment
> > preference
> > > > was
> > > > > > > > found..
> > > > > > > >
> > > > > > > > Below are the logs that were generated.
> > > > > > > > |I| Running Service ECA Service: releaseOrderPayments,
> > triggered
> > > by
> > > > > > rule
> > > > > > > on
> > > > > > > > Service: changeOrderStatus
> > > > > > > > 2020-09-10 13:48:54,303 |jsse-nio-8443-exec-3
> > > > |PaymentGatewayServices
> > > > > > > >  |W| No OrderPaymentPreference records available for release
> > > > > > > > 2020-09-10 13:48:54,304 |jsse-nio-8443-exec-3
> > |ServiceDispatcher
> > > > > > > >   |T| Sync service [order/releaseOrderPayments] finished in
> [2]
> > > > > > > > milliseconds
> > > > > > > >
> > > > > > > > other than that everything looks good in the logs..
> > > > > > > > I tried to debug ..and i'm getting the  warning from the
> > service
> > > > > called
> > > > > > > "
> > > > > > > > *releaseOrderPayments*"
> > > > > > > > Service Implementation Location
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> ofbiz-framework/applications/accounting/src/main/java/org/apache/ofbiz/accounting/payment/PaymentGatewayServices.java
> > > > > > > > At line 772.
> > > > > > > >
> > > > > > > > Thanks and regards
> > > > > > > > Madhi Krishnan
> > > > > > > >
> > > > > > > > On Thu, Sep 10, 2020 at 12:56 PM Pritam Kute <
> > > > > > > > [email protected]>
> > > > > > > > wrote:
> > > > > > > >
> > > > > > > > > Hello Madhi,
> > > > > > > > >
> > > > > > > > > Not sure but can you check if you have associated your
> custom
> > > > > method
> > > > > > > with
> > > > > > > > > the right ProductStorePaymentSetting?
> > > > > > > > >
> > > > > > > > > <ProductStorePaymentSetting
> > productStoreId="${productStoreId}"
> > > > > > > > > paymentMethodTypeId="CREDIT_CARD"
> > > > > > > > > paymentServiceTypeEnumId="PRDS_PAY_REFUND"
> > > > > > > paymentService="testCCRefund"
> > > > > > > > > paymentCustomMethodId="CC_REFUND_TEST"/>
> > > > > > > > >
> > > > > > > > > You can either put your payment gateway service name in
> > > > > > paymentService
> > > > > > > of
> > > > > > > > > the custom method ID in paymentCustomMethodId field.
> > > > > > > > >
> > > > > > > > > It will be good if you can post the error log here if this
> is
> > > > not a
> > > > > > > case.
> > > > > > > > >
> > > > > > > > > Kind Regards,
> > > > > > > > > --
> > > > > > > > > Pritam Kute
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > On Thu, Sep 10, 2020 at 4:42 AM Madhi Krishnan <
> > > > > > > > > [email protected]> wrote:
> > > > > > > > >
> > > > > > > > > > Hii community,
> > > > > > > > > > Hope you all are doing well.
> > > > > > > > > >
> > > > > > > > > > I'm using an external Payment gateway in my ecommerce
> setup
> > > > ,and
> > > > > > I'm
> > > > > > > > able
> > > > > > > > > > to place orders using an external gateway..
> > > > > > > > > > My question is, I'm struggling to call the refund api if
> > the
> > > > user
> > > > > > > > cancels
> > > > > > > > > > an order line in an order.
> > > > > > > > > > I have configured the custom_method entity as well..
> > > > > > > > > > let me know if I'm missing something..
> > > > > > > > > >
> > > > > > > > > > Thanks & Regards
> > > > > > > > > > Madhi Krishnan
> > > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>

Reply via email to