Is it posible to use ucommerce without a payment provider
Is it posible to use ucommerce without sending off to a payment provider. I have all the checkout steps in place (following the razor demo) ie billing/shipping information, createshipment, createpayment and the last step is requestpayment. eg.
You can use the build-in payment service called "Default Payment Method Service" to allow orders to checkout without a external payment provider.
If im not mistaken uCommerce used to contain a sample called Account or Invoice (not sure if this still is the case).
but if I dont call TransactionLibrary.RequestPayments() the basket content is not being changed to an order and displaying in the new order folder and this is where the error is occuring. I have tried to follow the uccomerce razo demo site.
Is there any links you could point me to for further explanation?
basically I am calling the code i have pasted above in the one razor script when the customer hits a continue button on the basket as a test to get the process working before I add individual pages.
I am hard coding values into TransactionLibrary.EditBillingInformation, TransactionLibrary.EditShipmentInformation, TransactionLibrary.CreateShipment and TransactionLibrary.CreatePaymentand. Getting shipping method value 8 (download) from table uCommerce_ShippingMethod. Getting payment method value 6 (account) from table uCommerce_PaymentMethod which both came with the default installment.
The code runs with an error but the process seems to have completed ok in the background. ie basket empted and content moved to new order folder.
the error I am getting is as follows:
umbracoMacro
Error Loading Razor Script (file: Order Summary) Exception occoured while processing pipeline 'UCommerce.Pipelines.Checkout.CheckoutPipeline'. See inner exception for details. at UCommerce.Pipelines.Pipeline`1.Execute(T subject) at UCommerce.Transactions.Payments.AbstractPaymentMethodService.ExecutePostProcessingPipeline(Payment payment) at UCommerce.Transactions.Payments.DefaultPaymentMethodService.RequestPayment(PaymentRequest request) at UCommerce.Transactions.TransactionLibraryInternal.RequestPayment(Int32 paymentId) at Castle.Proxies.TransactionLibraryInternalProxy.RequestPayment_callback(Int32 paymentId) at Castle.Proxies.Invocations.TransactionLibraryInternal_RequestPayment.InvokeMethodOnTarget() at Castle.DynamicProxy.AbstractInvocation.Proceed() at UCommerce.Infrastructure.Interceptor.ExceptionLoggingInterceptor.Intercept(IInvocation invocation) at Castle.DynamicProxy.AbstractInvocation.Proceed() at Castle.Proxies.TransactionLibraryInternalProxy.RequestPayment(Int32 paymentId) at UCommerce.Transactions.TransactionLibraryInternal.RequestPayments() at Castle.Proxies.TransactionLibraryInternalProxy.RequestPayments_callback() at Castle.Proxies.Invocations.TransactionLibraryInternal_RequestPayments.InvokeMethodOnTarget() at Castle.DynamicProxy.AbstractInvocation.Proceed() at UCommerce.Infrastructure.Interceptor.ExceptionLoggingInterceptor.Intercept(IInvocation invocation) at Castle.DynamicProxy.AbstractInvocation.Proceed() at Castle.Proxies.TransactionLibraryInternalProxy.RequestPayments() at UCommerce.Api.TransactionLibrary.RequestPayments() at ASP._Page_macroScripts_OrderSummary_cshtml.Execute() in c:\Development\Umbraco\Repos\hewden.umbraco.new\Src\Hewden.Umbraco.UI\macroScripts\OrderSummary.cshtml:line 123
Is it posible to use ucommerce without a payment provider
Is it posible to use ucommerce without sending off to a payment provider. I have all the checkout steps in place (following the razor demo) ie billing/shipping information, createshipment, createpayment and the last step is requestpayment. eg.
TransactionLibrary.EditBillingInformation(
.......
);
TransactionLibrary.EditShipmentInformation(
.......
);
//create shipment
TransactionLibrary.CreateShipment(8, overwriteExisting: true);
TransactionLibrary.ExecuteBasketPipeline();
//payment method
TransactionLibrary.CreatePayment(6, requestPayment: false);
TransactionLibrary.ExecuteBasketPipeline();
//final step
TransactionLibrary.ExecuteBasketPipeline();
TransactionLibrary.RequestPayments(); //this causes error prob need to set up payment??
the last step throws an error. If I leave this out then the basket contents dont seem to be processed into an order in the new order folder.
So is there away to do this if I do not want to process payments.
Hello lj
You can use the build-in payment service called "Default Payment Method Service" to allow orders to checkout without a external payment provider. If im not mistaken uCommerce used to contain a sample called Account or Invoice (not sure if this still is the case).
HI thanks for the reply
Not sure I understand.I thought I was setting one of the sample payment methods(account - id = 6 in table uCommerce_PaymentMethod) in the line
TransactionLibrary.CreatePayment(6, requestPayment: false);
but if I dont call TransactionLibrary.RequestPayments() the basket content is not being changed to an order and displaying in the new order folder and this is where the error is occuring. I have tried to follow the uccomerce razo demo site.
Is there any links you could point me to for further explanation?
Hi Lj,
The method TransactionLibrary.CreatePayment(...) only adds payment information to the order. Basically saying "This is the way it will be payed".
The method TransactionLibrary.RequestPayments() is the one actually performing the payment transactions.
Could you please provide the details of the error? What excatly is going wrong?
Kind regards,
Jesper
Hi Jesper
basically I am calling the code i have pasted above in the one razor script when the customer hits a continue button on the basket as a test to get the process working before I add individual pages.
I am hard coding values into TransactionLibrary.EditBillingInformation, TransactionLibrary.EditShipmentInformation, TransactionLibrary.CreateShipment and TransactionLibrary.CreatePaymentand. Getting shipping method value 8 (download) from table uCommerce_ShippingMethod. Getting payment method value 6 (account) from table uCommerce_PaymentMethod which both came with the default installment.
The code runs with an error but the process seems to have completed ok in the background. ie basket empted and content moved to new order folder.
the error I am getting is as follows:
Error Loading Razor Script (file: Order Summary) Exception occoured while processing pipeline 'UCommerce.Pipelines.Checkout.CheckoutPipeline'. See inner exception for details. at UCommerce.Pipelines.Pipeline`1.Execute(T subject)
at UCommerce.Transactions.Payments.AbstractPaymentMethodService.ExecutePostProcessingPipeline(Payment payment)
at UCommerce.Transactions.Payments.DefaultPaymentMethodService.RequestPayment(PaymentRequest request)
at UCommerce.Transactions.TransactionLibraryInternal.RequestPayment(Int32 paymentId)
at Castle.Proxies.TransactionLibraryInternalProxy.RequestPayment_callback(Int32 paymentId)
at Castle.Proxies.Invocations.TransactionLibraryInternal_RequestPayment.InvokeMethodOnTarget()
at Castle.DynamicProxy.AbstractInvocation.Proceed()
at UCommerce.Infrastructure.Interceptor.ExceptionLoggingInterceptor.Intercept(IInvocation invocation)
at Castle.DynamicProxy.AbstractInvocation.Proceed()
at Castle.Proxies.TransactionLibraryInternalProxy.RequestPayment(Int32 paymentId)
at UCommerce.Transactions.TransactionLibraryInternal.RequestPayments()
at Castle.Proxies.TransactionLibraryInternalProxy.RequestPayments_callback()
at Castle.Proxies.Invocations.TransactionLibraryInternal_RequestPayments.InvokeMethodOnTarget()
at Castle.DynamicProxy.AbstractInvocation.Proceed()
at UCommerce.Infrastructure.Interceptor.ExceptionLoggingInterceptor.Intercept(IInvocation invocation)
at Castle.DynamicProxy.AbstractInvocation.Proceed()
at Castle.Proxies.TransactionLibraryInternalProxy.RequestPayments()
at UCommerce.Api.TransactionLibrary.RequestPayments()
at ASP._Page_macroScripts_OrderSummary_cshtml.Execute() in c:\Development\Umbraco\Repos\hewden.umbraco.new\Src\Hewden.Umbraco.UI\macroScripts\OrderSummary.cshtml:line 123
cheers.
Hi lj,
I think we need the details from the inner exception from the CheckoutPipeline.
Please check the Umbraco log, in the database, for the exception.
A probable guess could be that the problem is in the SendConfirmationEmail step. SO maybe there is a problem in the email setup?
Kind regards,
Jesper
Hi Jesper,
Had a look at the Umbraco log and you where right it was a problem with the SendConfirmationEmail step. Basically did not have a template attached.
Everything you need to know about this can be found at http://www.publicvoid.dk/SendingEmailUsingUCommerce.aspx
Cheers lj
is working on a reply...