Transférez les dépôts de l'application PHP vers le bureau Quickbooks à l'aide de Conolibyte Quickbooks PHP DevKit : surmonter les défis
P粉481035232
P粉481035232 2024-01-10 17:45:45
0
1
434

J'implémente le DevKit PHP QuickBooks de Keith Palmer (https://github.com/conolibyte/quickbooks-php/) afin que mon application PHP puisse transmettre des données à Quickbooks Desktop via le connecteur Web Quickbooks. J'ai rencontré quelques problèmes en raison de modifications apportées à PHP et Quickbooks. Désormais, l'exemple d'application de connecteur Web fonctionne correctement et transmet avec succès les clients à Quickbooks.

Mon objectif actuel est de simuler via PHP ce qui se fait dans Quickbooks avec un processus relativement simple :

Banque -->Utilisez S'inscrire (sélectionnez un compte) et saisissez le montant du paiement ou du dépôt, le compte, le mémo et l'historique des clics.

Je pense que cela (au moins la partie dépôt) peut être fait via DepositAddRq en utilisant la méthode QUICKBOOKS_ADD_DEPOSIT dans PHP DevKit. Maintenant, je réécris le contenu pour utiliser cette méthode et j'obtiens l'erreur suivante :

3180 : Une erreur s'est produite lors de l'enregistrement de la ligne de dépôt. Message d'erreur QuickBooks : le numéro d'enregistrement donné ne figure pas dans la liste de paiement de dépôt.

Le serveur SOAP génère le XML suivant :

<?qbxml version="2.0"?>
        <QBXML>
            <QBXMLMsgsRq onError="stopOnError">
                <DepositAddRq requestID="19">
                    <DepositAdd>
                        <DepositToAccountRef>
                            <FullName>test account</FullName>
                        </DepositToAccountRef>
                        <Memo>Memo</Memo>
                        <DepositLineAdd>
                            <PaymentTxnID>3D95-1071497093</PaymentTxnID>
                        </DepositLineAdd>
                    </DepositAdd>
                </DepositAddRq>
            </QBXMLMsgsRq>
        </QBXML>

J'ai reçu une réponse XML de Quickbooks :

<?xml version="1.0" ?>
<QBXML>
<QBXMLMsgsRs>
<DepositAddRs requestID="19" statusCode="3180" statusSeverity="Error" statusMessage="保存存款行时出错。  QuickBooks error message: The given record number is not in the Payments to Deposit list." />
</QBXMLMsgsRs>
</QBXML>

J'obtiens la même erreur lors de la transmission de l'exemple de code XML QuickBooks SDK 15 pour DepositAddRq :

<QBXMLMsgsRq onError="stopOnError">
<DepositAddRq requestID="0">
<DepositAdd>
<DepositToAccountRef>
<FullName>Checking</FullName>
</DepositToAccountRef>
<DepositLineAdd>
<PaymentTxnID>3D95-1071497099</PaymentTxnID>
</DepositLineAdd>
</DepositAdd>
</DepositAddRq>
</QBXMLMsgsRq>
</QBXML>

Dois-je utiliser une méthode complètement différente pour enregistrer les dépôts et les paiements sur mon compte, des étapes supplémentaires sont-elles nécessaires ou est-ce que je le fais complètement mal ?

Merci d'avance !

P粉481035232
P粉481035232

répondre à tous(1)
P粉523335026

C'est un peu délicat, mais si vous regardez la documentation, vous pouvez voir ce qu'il veut :

Veuillez consulter cette section pour plus de détails :

 
        
                IDTYPE 
                IDTYPE 
                STRTYPE 
                STRTYPE 
                 
                        IDTYPE 
                        STRTYPE 
                
        
                 
                        IDTYPE 
                        STRTYPE 
                
                 
                        IDTYPE 
                        STRTYPE 
                
                STRTYPE 
                STRTYPE 
                 
                        IDTYPE 
                        STRTYPE 
                
                 
                        IDTYPE 
                        STRTYPE 
                
                AMTTYPE 
        

Cela signifie que vous pouvez ou fournir un lien de paiement () )或者您可以提供以下链接一个帐户 (ou

vous pouvez fournir le lien suivant vers un compte ().

Ce que vous décrivez dans votre message et ce que vous montrez dans le XML sont deux choses différentes. Dans le XML, vous essayez de créer un lien vers un paiement non déposé existant

(par exemple, vous essayez de marquer un paiement existant comme déposé) :

3D95-1071497099

Mais ce que vous décrivezsontdes comptes et des mémos désignés

 :

... (Select Account), and entering either a Payment or a Deposit amount, an Account, a Memo, and Clicking Record.
Si vous essayez de simuler la saisie d'un compte, d'un mémo, etc., alors vous devrez fournir du XML pour spécifier le compte, le mémo, etc. p>Par exemple, comme indiqué ci-dessous : 🎜



        
                
                        
                                
                                        Your Bank Account
                                

                                

                                        
                                                Account Name Here
                                        
                                        Memo test

                                        100.00
                                                
                                
                        

                
        
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!