Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
161 views
in Technique[技术] by (71.8m points)

intuit partner platform - Sales Receipt Process Credit Card Payment QBO V2

I am trying to automatically create a sales receipt AND charge the credit card through QBOE. The APIs appear to indicate this is possible by setting the Detail->CreditCard->CreditChargeInfo. I would expect to receive some information in the CreditChargeResponse Element, however I receive no information in the response regarding the attempted CC charge. Furthermore a sales receipt is created and the proper payment method is selected but no CC information is saved under the payment and it does not appear that there is an attempt to charge the card provided in the below request. I'm left with the following questions

  1. Are there elements required that I am missing in order to retain and charge the CC within QBOE?
  2. Is there any documentation regarding the business logic required in order to process a CC using the IPP APIs?
  3. Can anyone provide a working example of how this request should look?

REQUEST :::

<SalesReceipt xmlns='http://www.intuit.com/sb/cdm/v2'>
<Header xmlns:ns3='http://www.intuit.com/sb/cdm/v2'>
    <ns3:TxnDate>2013-04-17-07:00</ns3:TxnDate>
    <ns3:TaxRate>9.2</ns3:TaxRate>
    <ns3:TaxAmt>0.138</ns3:TaxAmt>
    <ns3:CustomerId>1027</ns3:CustomerId>
    <ns3:TotalAmt>1.64</ns3:TotalAmt>
        <ShipAddr>
            <Line1>1234 Fake St SE</Line1>
            <City>Fake City</City>
            <CountrySubDivisionCode>WA</CountrySubDivisionCode>
            <PostalCode>98258</PostalCode>
        </ShipAddr>
    <ns3:PaymentMethodId>13</ns3:PaymentMethodId>
    <ns3:PaymentMethodName>MasterCard</ns3:PaymentMethodName>
    <ns3:Detail xmlns:ns5='http://www.intuit.com/sb/cdm/v2'>
         <ns5:CreditCard xmlns:ns7='http://www.intuit.com/sb/cdm/v2'>
            <ns7:CreditChargeInfo xmlns:ns8='http://www.intuit.com/sb/cdm/v2'>
                <ns8:Number>[ACTUALY_VALID_CC#]</ns8:Number>
                <ns8:Token>************1111</ns8:Token>
                <ns8:Type>MasterCard</ns8:Type>
                <ns8:NameOnAcct>Andrew L Reifers</ns8:NameOnAcct>
                <ns8:CcExpirMn>**</ns8:CcExpirMn>
                <ns8:CcExpirYr>**</ns8:CcExpirYr>
                <ns8:BillAddrStreet>1234 Fake St SE</ns8:BillAddrStreet>
                <ns8:ZipCode>98258</ns8:ZipCode>
                <ns8:Cvv>***</ns8:Cvv>
                <ns8:CCTxnMode>CardPresent</ns8:CCTxnMode>
                <ns8:CCTxnType>Charge</ns8:CCTxnType>
            </ns7:CreditChargeInfo>
        </ns5:CreditCard>
        </ns3:Detail>
</Header>
<Line xmlns:ns11='http://www.intuit.com/sb/cdm/v2'>
    <ns11:Id>1</ns11:Id>
    <ns11:Desc>Fake Sale Item</ns11:Desc>
    <ns11:Amount>1.50</ns11:Amount>
    <ns11:Taxable>true</ns11:Taxable>
    <ns11:ItemId>359</ns11:ItemId>
    <ns11:UnitPrice>0.50</ns11:UnitPrice>
    <ns11:Qty>3</ns11:Qty>
</Line>

RESPONSE :::

<SalesReceipt xmlns="http://www.intuit.com/sb/cdm/v2" xmlns:qbp="http://www.intuit.com/sb/cdm/qbopayroll/v1" xmlns:qbo="http://www.intuit.com/sb/cdm/qbo">
<Id idDomain="QBO">7413</Id>
<SyncToken>0</SyncToken>
<MetaData>
    <CreateTime>2013-04-17T11:50:06-07:00</CreateTime>
    <LastUpdatedTime>2013-04-17T11:50:06-07:00</LastUpdatedTime>
</MetaData>
<Header>
    <DocNumber>4170</DocNumber>
    <TxnDate>2013-04-17-07:00</TxnDate>
    <CustomerId idDomain="QBO">1027</CustomerId>
    <SalesTaxCodeId idDomain="QBO">1</SalesTaxCodeId>
    <SalesTaxCodeName>IS_TAXABLE</SalesTaxCodeName>
    <SubTotalAmt>1.50</SubTotalAmt>
    <TaxRate>9.2</TaxRate>
    <TaxAmt>0.14</TaxAmt>
    <TotalAmt>1.64</TotalAmt>
    <ToBePrinted>false</ToBePrinted>
    <ToBeEmailed>false</ToBeEmailed>
    <ShipAddr>
        <Line1>1234 Fake St SE</Line1>
        <City>Fake City</City>
        <CountrySubDivisionCode>WA</CountrySubDivisionCode>
        <PostalCode>98258</PostalCode>
        <GeoCode>LAT=47.974638,LNG=-122.073567</GeoCode>
    </ShipAddr>
    <ShipMethodId idDomain="QBO"/>
    <DepositToAccountId idDomain="QBO">37</DepositToAccountId>
    <DepositToAccountName>Undeposited Funds</DepositToAccountName>
    <PaymentMethodId idDomain="QBO">13</PaymentMethodId>
    <PaymentMethodName>MasterCard</PaymentMethodName>
    <DiscountTaxable>true</DiscountTaxable>
</Header>
<Line>
    <Id>1</Id>
    <Desc>Fake Sale Item</Desc>
    <Amount>1.50</Amount>
    <Taxable>true</Taxable>
    <ItemId>359</ItemId>
    <UnitPrice>0.5</UnitPrice>
    <Qty>3</Qty>
</Line>

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)


Unfortunately v2 does not support credit card, the annotation explains that it is a readonly field. There is no v2 workaround. The supported api is v3, if you would like to sign up for the v3 beta here: http://ippblog.intuit.com/blog/2013/03/application-for-early-access-to-quickbooks-api-v3.html

thanks
Jarred


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...