He creado Factura con este código: https://github.com/intuit/QuickBooks-V3-PHP-SDK/blob/master/src/_Samples/InvoiceCreate.php

Pero, ¿cómo puedo hacer que esta factura se pague usando PHP sdk?

Aquí recibo el pago mediante cheque en papel ... así que estoy creando una factura solo para la contabilidad y no para enviarla al cliente. (sin usar el pago QBO) así que cuando recibo el pago, ¿cómo marcar la factura como pagada usando php sdk?

Intento actualizar "Saldo" como 0 pero no está marcado como pagado.

Gracias

0
Yogesh Saroya 15 feb. 2018 a las 20:35

2 respuestas

La mejor respuesta

Primero, realmente te recomiendo que uses la biblioteca escrita por Keith Palmer para esto, ya que la documentación de QBO es basura que está por todas partes.

Con eso dicho:

Debe devolver el ID de transacción de la factura:

return $resultingObj->TxnId;

Y luego cree un pago proporcionando esa identificación de transacción:

$invoiceId = CreateInvoice(); //returns txnId above

$qbLinkedInvoice = new IPPLinkedTxn();
$qbLinkedInvoice->TxnId = $invoiceId;
$qbLinkedInvoice->TxnType = 'Invoice';

$qbLine = new IPPLine();
$qbLine->Amount = "";//set amount;
$qbLine->LinkedTxn = $qbLinkedInvoice;

$qbPayment = new IPPPayment();
$qbPayment->CustomerRef = "";//customer id
$qbPayment->TotalAmt = "";//I think this must match amount above;
$qbPayment->Line = array($qbLine);

$createdQbPayment = $this->dataService->Add($qbPayment);
1
Kisaragi 15 feb. 2018 a las 18:26

No estoy 100% seguro de esto, pero creo que tienes que crear pagos para esa factura por el monto total de la factura. Para ver el contenido requerido de la carga útil, consulte https://developer.intuit.com/ docs / api / Accounting / Payment.

2
onik 15 feb. 2018 a las 18:23