コード例 #1
0
        public void Notification(Jeeb.Gateway.Models.Notification notif)
        {
            if (notif.Signature == signature && notif.StateId == 4)
            {
                //Check if signature equals to your signature, since no has this signature, i get to know if this call is from us or not
                //if( everything is okey on your side ) Retrieve invoice record, check its status, if its okey then continue to confirm this payment

                var payment = _paymentsRepo.First(param => param.ReferenceNo == notif.ReferenceNo);

                var jeebApi = new JeebApi(signature);

                var confirmResult = jeebApi.ConfirmInvoice(new ConfirmInvoiceRequest()
                {
                    Token = payment.Token,
                });

                payment.IsConfirmed = true;
            }
        }
コード例 #2
0
        public ActionResult CreateInvoice(CreateInvoiceModel createInvoice)
        {
            var invoice = new JeebApi(signature).IssueInvoice(new IssueInvoiceRequest()
            {
                AllowReject     = false,
                OrderNo         = createInvoice.OrderNo,
                CallBackUrl     = $"{baseUrl}jeeb/callback",
                NotificationUrl = $"{baseUrl}jeeb/notification",
                RequestAmount   = createInvoice.RequestAmount,
            });

            _paymentsRepo.Add(new Payment()
            {
                Token       = invoice.Token,
                IsConfirmed = false,
                ReferenceNo = invoice.ReferenceNo,
            });

            return(View(new CreateInvoiceViewModel {
                Token = invoice.Token
            }));
        }