A maxiPago! oferece 2 possibilidades de uma recorrência ser editada:

  • Quando o cliente quer alterar um dado a qualquer momento;
  • Quando uma cobrança é declinada o cliente pode optar por:
    • Pular a parcela declinada e dar continuidade as próximas cobranças;
    • Cancelar a Recorrência;
    • Pausar a Recorrência;

Para realizar uma alteração a qualquer momento, siga as instruções abaixo:

  • Para a utilização desse método o comando “modify-recurring” deve ser informado em uma requisição.
  • Para que a alteração seja feita, a recorrência deve inicialmente ser pausada com o comando: “disable“;
  • Para que a alteração realizada tenha efeito, a recorrência deve ser ativada novamente com o comando: “enable

Editando a Recorrência – URLs Para Envio dos Dados

SANDBOX: https://testapi.maxipago.net/UniversalAPI/postAPI

PRODUÇÃO: https://api.maxipago.net/UniversalAPI/postAPI

Editando a Recorrência – Exemplo de Requisição

<?xml version="1.0" encoding="UTF-8"?>
<api-request>
    <verification>
        <merchantId>store-id</merchantId>
        <merchantKey>store-key</merchantKey>
    </verification>
    <command>modify-recurring</command>
    <request>
        <orderID>C0A86327:0151B6814FA1:50F7:50212C05</orderID>
        <paymentInfo>
            <cardInfo>
                <creditCardNumber>4716870704643843</creditCardNumber>
                <expirationMonth>07</expirationMonth>
                <expirationYear>2018</expirationYear>
            </cardInfo>
            <chargeTotal>50.00</chargeTotal>
        </paymentInfo>
        <recurring>
            <processorID>1</processorID>
            <action>enable</action>
            <installments>10</installments>
            <nextFireDate>2017-11-05</nextFireDate>
            <fireDay>20</fireDay>
            <period>quarterly</period>
            <lastDate>2018-11-05</lastDate>
            <lastAmount>105.00</lastAmount>
        </recurring>
        <billingInfo>
            <name>BILLING REC UPD</name>
            <address1>R BILLING STREET, 123</address1>
            <address2>7 ANDAR</address2>
            <city>SAMPA</city>
            <zip>01312000</zip>
            <country>BR</country>
            <email>billing@maxipago.com</email>
            <phone>1132890900</phone>
        </billingInfo>
        <shippingInfo>
            <name>BILLING REC UPD</name>
            <address1>R BILLING STREET, 123</address1>
            <address2>7 ANDAR</address2>
            <city>SAMPA</city>
            <zip>01312000</zip>
            <country>BR</country>
            <email>billing@maxipago.com</email>
            <phone>1132890900</phone>
        </shippingInfo>
    </request>
</api-request>

Editando a Recorrência – Exemplo de Retorno em Caso de Sucesso

 
<?xml version="1.0" encoding="UTF-8"?>
<api-response>
        <errorCode>0</errorCode>
        <errorMessage></errorMessage>
        <command>modify-recurring</command>
        <time>1509460190738</time>
        <result></result>
</api-response>

Editando a Recorrência – Exemplo de Retorno em de Erro

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<api-error>
    <errorCode>1</errorCode>
    <errorMsg>
        <![CDATA[java.lang.Exception: empty element detected in setPsInParams for field=merchant_id]]>
    </errorMsg>
</api-error>

Editando as Parcelas da Recorrência

Sempre considerar o número de parcelas da criação da recorrência como base; lembrando que não é possível colocar um número de parcelas inferior aos pagamentos já realizados.

No exemplo a seguir, a cobrança inicial era de 10 parcelas e houve a necessidade de cobrar apenas mais 1. Então considerando que já foram pagas 8 parcelas, o novo número de installments será 9.

<api-request>
    <version>3.1.1.15</version>
    <verification>
        <merchantId>store-id</merchantId>
        <merchantKey>store-key</merchantKey>
    </verification>
    <command>modify-recurring</command>
    <request>
        <orderID>C0A86327:0151B6814FA1:50F7:50212C05</orderID>
        <paymentInfo>
            <cardInfo>
                <creditCardNumber>4716870704643843</creditCardNumber>
                <expirationMonth>07</expirationMonth>
                <expirationYear>2022</expirationYear>
            </cardInfo>
        </paymentInfo>
        <recurring>
            <action>enable</action>
            <installments>9</installments>
        </recurring>
</request>
</api-request>

Editando a Recorrência – Tabela de Parâmetros

Nome

Obrigatório

Tamanho

Descrição

version

Sim

11

Versão da API

merchantId

Sim

20

Id de Loja que identifica o estabelecimento

merchantKey

Sim

80

Chave associada ao ID da Loja

command

Sim

– – –

modify-recurring

orderID

Sim

128

ID do pedido, gerado pela maxiPago!
Deve-se salvar este campo para futuras referências ao pedido.

processorID

Não

2

Código da adquirente que irá processar a transação:
Simulador de teste = 1
Rede = 5
GetNet = 3
Cielo = 4
Elavon = 6
ChasePaymentech = 8
Stone = 9

action

Sim

– – –

Sempre será enable ou disable

installments

Sim

16

De 1 a 999 ou “infinite”

 

Número de cobranças a serem efetuadas. Exemplo: Se “installments” = 5, então serão feitas 5 cobranças seguindo o intervalo definido acima, a partir da data de início.

 

A maxipago, permite a criação de recorrências com cobranças infinitas. Para tanto, utilize: <installments>infinite</installments>

 

É importante que ao escolher criar uma recorrência infinita, os parâmetros:  <lastAmount> e <lastDate>, NÃO deverão ser enviados.




nextFireDate

Não

12

Próxima data de cobranças da recorrência. Formato AAAA-MM-DD

fireDay

Não

2

Nova data de cobrança DD.
Obs.: Caso seja necessária a alteração da data de cobrança para o próximo período é necessária o envio da Tag </nextFireDate> em conjunto com a Tag </fireDay>

period

Sim

10

Intervalo de tempo entre cobranças:
daily = dia(s)
weekly = semana(s)
monthly = mês(es)
bimonthly = bimestral
quarterly = trimestral
semiannual = semestral
annual = anual

lastDate

Não

12

Data da última cobrança

lastAmount

Não

14.2

Valor a ser cobrado na última parcela da recorrência.
Os decimais devem ser separados por ponto (“.”)

billingInfo/name

shippingInfo/name

Sim

64

Nome do cliente

billingInfo/address

shippingInfo/address

Sim

128

Logradouro de cobrança da transação (sem acentos e caracteres especiais).

billingInfo/address2

shippingInfo/address2

Não

128

Complemento do logradouro de cobrança da transação (sem acentos e caracteres especiais).

billingInfo/distric

shippingInfo/distric

Sim

64

Bairro (sem acentos e caracteres especiais).

billingInfo/city

shippingInfo/city

Sim

64

Cidade (sem acentos e caracteres especiais).

billingInfo/state

shippingInfo/state

Sim

32

Estado (enviado com 2 dígitos (UF)).

billingInfo/postalcode

shippingInfo/postalcode

Sim

16

CEP de cobrança.

billingInfo/country

shippingInfo/country

Sim

64

País (abreviação de 2 dígitos).

billingInfo/email

shippingInfo/email

Sim

128

Utilização obrigatória de “@”.

billingInfo/country

shippingInfo/country

Sim

64

País (abreviação de 2 dígitos).

billingInfo/companyName

Sim

64

Biling: Nome da empresa vendedora.

number

Sim

19

Número do cartão de crédito do cliente

expMonth

Sim

2

Mês de vencimento do cartão com 2 dígitos.

Exemplo: Janeiro = 01

expYear

Sim

4

Ano de vencimento do cartão com 4 dígitos

chargeTotal Sim 14.2 Valor do pedido. Os decimais devem ser separados por ponto (.)

currencyCode

Não

3

Código da moeda da transação no formato ISO 4217