public IResponse Visit(CompleteProposedOrderRequest request)
 {
     return(_restWrapper.Post <CompleteProposedOrderRequestBody, CompletedOrderResponse>(request.Body,
                                                                                         uri: GetEndpoint(request),
                                                                                         accessTokenHeader: GetHeaderToken(request),
                                                                                         actions: GetCustomResponseHandlers(request)));
 }
Beispiel #2
0
        public CompletedOrderResponse CompleteProposedOrder(string accessToken, int locationId, string qrPaymentData,
                                                            string proposedOrderUuid, int totalOutstandingAmountCents,
                                                            int spendAmountCents, int?taxAmountCents, int exemptionAmountCents,
                                                            int?appliedDiscountAmountCents, string register,
                                                            string cashier, string identifierFromMerchant,
                                                            string receiptMessageHtml, bool partialAuthorizationAllowed,
                                                            bool discountOnly, IList <Item> items)
        {
            // Adjust spend/tax/exemption amounts in situations where there are multiple payments on a single check.
            var adjustmentsForPartialPayments = ProposedOrderCalculator.CalculateCompleteOrderValues(totalOutstandingAmountCents,
                                                                                                     taxAmountCents ?? 0, exemptionAmountCents, spendAmountCents, appliedDiscountAmountCents ?? 0);

            CompleteProposedOrderRequest request = new CompleteProposedOrderRequest(accessToken, locationId, qrPaymentData,
                                                                                    proposedOrderUuid,
                                                                                    adjustmentsForPartialPayments.SpendAmount,
                                                                                    adjustmentsForPartialPayments.TaxAmount,
                                                                                    adjustmentsForPartialPayments.ExemptionAmount,
                                                                                    appliedDiscountAmountCents, register,
                                                                                    cashier, identifierFromMerchant,
                                                                                    receiptMessageHtml, partialAuthorizationAllowed,
                                                                                    discountOnly, items);

            return(_restWrapper.Post <CompleteProposedOrderRequestBody, CompletedOrderResponse>(
                       request.Body,
                       uri: BuildUri(request.ApiVersion, "completed_orders"),
                       accessTokenHeader: FormatAccessTokenString(merchantUserAccessToken: request.AccessToken),
                       actions: null));
        }
        public CompletedOrderResponse CompleteProposedOrder(string accessToken, int locationId, string qrPaymentData,
                                                            string proposedOrderUuid, int totalOutstandingAmountCents,
                                                            int spendAmountCents, int?taxAmountCents, int exemptionAmountCents,
                                                            int?appliedDiscountAmountCents, string register,
                                                            string cashier, string identifierFromMerchant,
                                                            string receiptMessageHtml, bool partialAuthorizationAllowed,
                                                            IList <Item> items)
        {
            // Adjust spend/tax/exemption amounts in situations where there are multiple payments on a single check.
            var adjustmentsForPartialPayments = ProposedOrderCalculator.CalculateCompleteOrderValues(totalOutstandingAmountCents,
                                                                                                     taxAmountCents ?? 0, exemptionAmountCents, spendAmountCents, appliedDiscountAmountCents ?? 0);

            CompleteProposedOrderRequest request = new CompleteProposedOrderRequest(accessToken, locationId, qrPaymentData,
                                                                                    proposedOrderUuid,
                                                                                    adjustmentsForPartialPayments.SpendAmount,
                                                                                    adjustmentsForPartialPayments.TaxAmount,
                                                                                    adjustmentsForPartialPayments.ExemptionAmount,
                                                                                    appliedDiscountAmountCents, register,
                                                                                    cashier, identifierFromMerchant,
                                                                                    receiptMessageHtml, partialAuthorizationAllowed,
                                                                                    items);

            return(request.Accept(_engine) as CompletedOrderResponse);
        }
 public override string Visit(CompleteProposedOrderRequest request)
 {
     return(FormatAccessTokenString(merchantUserAccessToken: request.AccessToken));
 }
Beispiel #5
0
 public virtual T Visit(CompleteProposedOrderRequest request)
 {
     return(DEFAULT_FUNC(request));
 }
 public string Visit(CompleteProposedOrderRequest request)
 {
     return(BuildUri(request.ApiVersion, "completed_orders"));
 }