Criar, listar, sincronizar e cancelar operações de pagamento.
Listar pagamentos
Criar pagamento
Método e rota: POST /api/payments. Cria um pagamento no gateway. Use o corpo do pedido para escolher o tipo de pagamento, como GPO mobile/QR ou PPR.
Tipos de pagamento:
GPOé usado para fluxos de pagamento mobile money e QR Code. O pedido normalmente inclui metadados específicos de GPO, como método de pagamento, número de telefone ou configurações QR Code, provedor, ID do comerciante e ID do POS.- O
PPR(Pagamento por Referência) é utilizado para fluxos de referências de pagamento. UtilizereferenceType: Dynamicpara referências de montante fixo. Pode deixar o camporeferencevazio para que a API gere automaticamente a referência, ou indicar o seu próprio número de referência quando o comerciante necessitar de o definir. UtilizereferenceType: Chargingpara referências de montante aberto, normalmente comamount: 0, permitindo que o montante seja definido no momento do pagamento. As referências do tipoChargingpodem receber múltiplas transações utilizando a mesma referência.
Criar pagamento › Request Body
amountMontante do pagamento expresso na moeda selecionada. São suportados valores decimais.
Para GPO e PPR com metadata.referenceType: Dynamic, o montante deve estar entre 0.01 e 10.000.000. Numa referência PPR do tipo Charging, utilize 0 para um montante aberto, introduzido pelo cliente no momento do pagamento; também é aceite um montante positivo. Valores negativos nunca são permitidos.
currency^[A-Z]{3}$ · requiredCódigo de moeda de três letras maiúsculas, no formato ISO. Utilize AOA para pagamentos em kwanzas.
paymentTypeMeio de pagamento a utilizar. GPO cria um pagamento mobile money, uma autorização ou um QR Code; PPR cria uma referência de pagamento.
referenceIdentificador de pagamento definido pelo comerciante. É obrigatório para GPO e pode ter até 15 caracteres (cada método GPO pode impor um formato mais restrito).
Para PPR, omita o campo ou envie uma string vazia para que a IZI Pay gere uma referência de 9 dígitos. Para definir a referência, envie apenas dígitos e utilize entre 9 e 15 dígitos. Uma referência dinâmica definida pelo comerciante não pode ser reutilizada enquanto a mesma referência estiver ativa e não paga para a entidade.
Configurações específicas do tipo de pagamento para POST /api/payments.
As configurações do conector, como paymentMethod, referenceType, expiryDate e os campos do cliente, pertencem diretamente a este objeto. Os campos definidos pelo comerciante devem ser agrupados em metadata.custom; não coloque chaves arbitrárias do comerciante ao lado das configurações do conector.
Os valores enviados em metadata.custom são guardados com o pagamento e devolvidos na propriedade de topo customMetadata nas respostas de criação e consulta. Não envie um campo customMetadata no topo do pedido para /api/payments.
descriptionDescrição de topo legada. As descrições específicas do conector são lidas de metadata.description; utilize esse campo em novas integrações.
Criar pagamento › Responses
Imagem QR Code devolvida na criação de um pagamento QR.
Obter detalhes do pagamento
Método e rota: GET /api/payments/{paymentId}. Consulta os detalhes atuais de um pagamento.
Para pagamentos PPR, envie a reference devolvida (por exemplo, 584923109). Também pode utilizar o internalId do pagamento quando disponível. O UUID devolvido como id na resposta compacta de criação PPR identifica o registo da referência PPR e não é o valor de consulta deste endpoint.
path Parameters
paymentIdExternal payment identifier.
Obter detalhes do pagamento › Responses
Detalhes do pagamento.
idinternalIdmerchantIdreferenceamountcurrencypaymentTypestatuscreatedAtcompletedAtdescriptioncustomerEmailcustomerNamecustomerTelephonedocumentNumberObjeto JSON definido pelo comerciante para associar um pagamento IZI Pay aos registos dos seus próprios sistemas.
Os nomes das propriedades são escolhidos pelo comerciante; as chaves do exemplo são ilustrativas e não constituem uma lista fixa. Cada propriedade pode conter uma string, número, booleano, array, objeto aninhado ou null. A escrita e a capitalização das chaves são preservadas.
A IZI Pay guarda estes valores sem os utilizar para controlar o processamento do pagamento. São devolvidos como customMetadata nas respostas de criação, detalhe e listagem de pagamentos e referências PPR.
Utilize este objeto para identificadores internos, como números de fatura, ordens de compra, departamentos, códigos de cliente ou referências do sistema de origem. Não inclua palavras-passe, tokens de acesso, dados de cartão ou outros segredos.
Sincronizar estado do pagamento
Cancelar autorização
Receber webhook de pagamento QR Code
Endpoint de Callback do Comerciante
O endpoint de callback é um URL HTTPS hospedado pelo comerciante e fornecido à equipa de desenvolvimento da IZI Pay durante a configuração. Este é o endpoint para onde a IZI Pay envia atualizações de estado do pagamento e notificações.
Juntamente com o URL de callback, o comerciante também deve fornecer um Access-Key. A IZI Pay inclui esta chave nos cabeçalhos de todos os pedidos de callback para que o comerciante possa autenticar e validar as notificações recebidas.
O comerciante é responsável por garantir que o endpoint de callback está publicamente acessível e é capaz de receber e processar pedidos da IZI Pay.
Este callback aplica-se a pagamentos GPO QR Code criados através da API de Pagamentos.
Resumo
Durante o onboarding, o comerciante deve fornecer os seguintes dados à equipa de desenvolvimento da IZI Pay:
- Callback URL: O endpoint HTTPS para onde a IZI Pay enviará notificações de estado do pagamento.
- Access-Key: Um valor secreto escolhido e fornecido pelo comerciante. A IZI Pay inclui este valor nos cabeçalhos de todos os pedidos de callback, permitindo ao comerciante verificar que a notificação teve origem na IZI Pay.
Headers
Access-KeyChave de acesso escolhida ou gerada pelo comerciante para este webhook. A IZI Pay envia este mesmo valor no cabeçalho Access-Key para que o seu endpoint possa autenticar a notificação.
Receber webhook de pagamento QR Code › Request Body
creationDateData e hora em que a transação QR Code foi criada.
updatedDateData e hora em que o estado da transação QR Code foi atualizado.
idIdentificador único da transação no provedor. Use este valor para idempotência.
amountMontante pago pelo cliente.
clearingPeriodPeríodo de compensação associado à transação.
transactionNumberNúmero da transação no provedor.
statusEstado do pagamento QR Code.
transactionTypeTipo da transação.
orderOriginOrigem da ordem de pagamento.
currencyMoeda do pagamento.
merchantReferenceNumberNúmero de referência do comerciante associado ao pagamento QR Code.
Receber webhook de pagamento QR Code › Responses
Devolva HTTP 2xx com Success: true quando a notificação for processada com sucesso ou já tiver sido processada antes.
SuccessDevolva true quando a notificação for processada com sucesso ou já tiver sido processada antes.
ObsNota curta sobre o processamento.
IdIdentificador interno do pagamento no sistema do comerciante.