Afisare factura

Descriere - Afisare factura

  • Aceasta sectiune este dedicata afisarii facturilor

  • Facturile returnate din acest apel se pot valida, anula, trimite pe email sau descarca

  • Fiecare factura contine o proprietate de identificare a acestuia externalId

Model de utilizare API - Afisare factura

  • Asa cum este explicat in zona de Informatii generale utilizare API orice apel catre API se face catre un URL de baza la care apoi se adauga endpoint-ul respectivei operatii

Notă

  • Verb: GET

  • Endpoint: /{clientEid}/invoices/{invoiceExternalId}

  • Request parameter: {clientEid} si {invoiceExternalId}

  • Returns: Vezi Model Factura

  • Type of return: Vezi Model Factura

Atenționare

  • A se observa parametru {clientEid} si tipul acestuia (path variable)

  • A se observa parametru {invoiceExternalId} si tipul acestuia (path variable)

Validari - Afisare factura

La momentul executarii acestul apel NU se vor verifica/valida informatii

Mod de folosire - Wrapper - Afisare factura

  • Daca se foloseste wrapper -ul scris in Python se utilizeaza astfel:
    1. Se preia token-ul pe baza parametrilor specifici

    2. Se apeleaza metoda specifica acestui request GET

    token_url = 'https://staging.keez.ro/idp/connect/token'
    api_url = f'https://{ENVIRONMENT}.keez.ro/api/v1.0/public-api'
    
    client_eid = '{RECEIVED_CLIENT_EID}'
    application_id = '{RECEIVED_APPLICATION_ID}'
    secret = '{RECEIVED_SECRET}'
    
    api = KeezPublicApi(app=application, secret=secret, token_url=token_url, api_url=api_url)
    
    invoiceExternalId = '{ID_EXTERN_FACTURA}'
    
    result = api.invoice(client_eid, invoiceExternalId)
    

Mod de folosire - Fara Wrapper - Afisare factura

class InvoiceService:
    def __init__(self):
        token = TokenService()
        self.auth_token = token.generate_token()
        self.token = f'{self.auth_token.get("token_type")} {self.auth_token.get("access_token")}'

        self.client_eid = token.client_eid
        self.api_endpoint = token.api_endpoint

    def getInvoice(self):
        invoiceExternalId = '{ID_EXTERN_FACTURA}'
        invoice_url = f'{self.api_endpoint}/{self.client_eid}/invoices/{invoiceExternalId}'

        _req = requests.get(url=invoice_url, headers={'Content-Type': 'application/json', 'Authorization': self.token})
        return _req.json()


if __name__ == '__main__':
    service = InvoiceService()
    invoice = service.getInvoice()
    print(invoice)

Notă

Clasa TokenService() se gaseste la sectiunea Autorizarea: Vezi Autorizarea